• Stars
    star
    100
  • Rank 330,143 (Top 7 %)
  • Language
  • Created 7 months ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Aggregated audit checklist

Solodit's Aggregated Smart Contract Audit Checklist

The checklist is hosted at Solodit

Introduction

In "The Checklist Manifesto. How to Get Things Right", Atul Gawande emphasizes the increasing prevalence of errors arising from oversight in complex tasks, advocating for the adoption of checklists as a solution, as demonstrated by their transformative impact on surgical outcomes.

In the ever-evolving landscape of blockchain and smart contract technologies, ensuring the security of deployed smart contracts has become paramount. In many instances, vulnerabilities are overlooked, not due to negligence, but due to the lack of a systematic approach in the review process.

Solodit aims to address this by introducing a comprehensive aggregation of various checklists used in smart contract audits. Derived from a myriad of sources and previously conducted audit reports, this checklist is intended to be a living document, constantly enriched and improved upon by the community.

Why Solodit's Checklist?

  1. Comprehensive Coverage: By aggregating checklists from numerous auditors and audit reports, Solodit ensures a holistic approach to smart contract auditing.
  2. Community-Driven: This checklist is open for the community to contribute and refine, ensuring that it is always up-to-date with the latest vulnerabilities and best practices.
  3. Building Automatic Analyzers: With a structured approach, this checklist can also pave the way for developing automatic analyzers in the future, elevating the audit process's efficiency and accuracy.

Goals

  • Standardize the Audit Process: By having a standard checklist, auditors can ensure they don't overlook any critical aspect of the smart contract.
  • Promote Collaboration: Encourage auditors, developers, and blockchain enthusiasts to contribute, ensuring a rich and comprehensive checklist.
  • Advance Security Maturity: As the blockchain ecosystem matures, it's paramount that the security protocols around it mature as well. This checklist is a step in that direction.

Usage

We show the checklist on Solodit's website in a user-friendly format and allow you to check off items as you go through the audit process.

However, you can also view the checklist in a raw JSON format here.

The checklist is divided into multiple categories, each containing a list of items to check for. Each item consists of an ID, an imperative statement, a question, a description, a remediation, and a list of references.

  • ID: A unique identifier for the check item.
  • Question: A question that can be used to help the auditor in the review process.
  • Description: A detailed description of the item.
  • Remediation: A list of steps to take to remediate the item.
  • References: A list of references to learn more about the item.

Contribution

We welcome contributions from the community. Issues and pull requests are encouraged. Contributions can be made from the Solodit website in a more user-friendly format as well. Please check out our contribution guidelines for more details.

Acknowledgements

The checklist is heavily inspired by the following resources:


Powered by Cyfrin - We value every effort to level up the Web3 security

More Repositories

1

foundry-full-course-f23

2,321
star
2

security-and-auditing-full-course-s23

The ultimate, most advanced, security, DeFi, assembly, web3 auditor course ever created.
Solidity
908
star
3

aderyn

Aderyn 🦜 Rust-based Solidity AST analyzer.
Rust
272
star
4

foundry-devops

Solidity
267
star
5

audit-report-templating

211
star
6

foundry-defi-stablecoin-f23

Solidity
186
star
7

sc-exploits-minimized

A repo to showcase web3 hacks
Solidity
177
star
8

cyfrin-audit-reports

A list of public audit reports conducted by the Cyfrin team
102
star
9

chainlink-lottery

A web3 implementation of a lottery using Chainlink VRF and Chainlink alarm clock to have a totally decentralized lottery
JavaScript
75
star
10

OpenPositions

44
star
11

foundry-fund-me-f23

Solidity
35
star
12

assembly-evm-opcodes-and-formal-verification-course

28
star
13

2023-07-foundry-defi-stablecoin

Solidity
27
star
14

foundry-simple-storage-f23

Solidity
25
star
15

4-puppy-raffle-audit

Solidity
25
star
16

Updraft

23
star
17

remix-simple-storage-f23

Solidity
22
star
18

ctf

A minimal repo to create EVM/solidity capture the flags
Solidity
21
star
19

foundry-smart-contract-lottery-f23

Solidity
21
star
20

alchemy_sdk_py

An SDK to use the Alchemy API
Python
19
star
21

2023-07-escrow

Solidity
17
star
22

remix-fund-me-f23

Solidity
17
star
23

trello_to_audit_report

Python
17
star
24

foundry-upgrades-f23

Solidity
16
star
25

1-horse-store-s23

C++
15
star
26

remix-storage-factory-f23

Solidity
13
star
27

2023-09-ditto

Solidity
13
star
28

codehawks-docs

πŸ¦… CodeHawks documentation
13
star
29

chainlink_feeds

This gets the data from the Chainlink Price feeds in an easy way. Can use either an RPC_URL or the Chainlink Subgraph.
Python
13
star
30

foundry-nft-f23

Solidity
11
star
31

audit-repo-cloner

A Python package to clone a repo and automatically prepare it for audit report generation
Python
11
star
32

foundry-erc20-f23

Solidity
10
star
33

2023-10-PasswordStore

Solidity
10
star
34

5-t-swap-audit

Solidity
10
star
35

2023-07-beedle

Solidity
9
star
36

brownie-stablecoin-v23

Python
9
star
37

2023-08-sparkn

Solidity
9
star
38

evm-wallet-and-post-deployment-course

9
star
39

2023-11-Thunder-Loan

Solidity
8
star
40

8-vault-guardians-audit

Solidity
8
star
41

6-thunder-loan-audit

Solidity
8
star
42

js-backend-engineer

7
star
43

html-fund-me-f23

JavaScript
7
star
44

2023-09-vyper-compiler

Vyper Compiler Audit competition
Python
7
star
45

3-passwordstore-audit

Makefile
7
star
46

diverge-converge-audit

TeX
7
star
47

2023-10-SteadeFi

Solidity
7
star
48

2023-10-Puppy-Raffle

Solidity
6
star
49

flux-link

View and withdraw your LINK in one command
Python
5
star
50

7-boss-bridge-audit

Solidity
5
star
51

demo_code

Python
4
star
52

foundry-dao-f23

Solidity
4
star
53

3-gas-bad-nft-marketplace-audit

Solidity
4
star
54

2023-12-stake-link

TypeScript
4
star
55

2024-01-Morpheus

TypeScript
4
star
56

2023-12-the-standard

JavaScript
3
star
57

2024-03-Moonwell

Solidity
3
star
58

2024-02-one-shot

Solidity
3
star
59

2023-12-Voting-Booth

Solidity
3
star
60

2024-02-Beanstalk-1

TypeScript
3
star
61

chainlink-gmx-automation

High Frequency Price Automation for GMX, Using Chainlink Keeper Data Streams
Solidity
2
star
62

gas-optimization-tips

Contracts and Test for Gas optimization Article
Solidity
2
star
63

dup-hawk

AI Triage Bot - Groups and labels issues submitted to a CodeHawks audits
Python
2
star
64

2024-02-soulmate

Solidity
2
star
65

2023-11-Santas-List

Solidity
2
star
66

2024-01-horse-store

Solidity
2
star
67

2024-01-math-master

Solidity
2
star
68

zksync-contracts

Solidity
2
star
69

.github

1
star
70

alphachain-cl-ea

JavaScript
1
star
71

nyth-by-example

An Example Nyth repo
Rust
1
star
72

2023-11-Boss-Bridge

Solidity
1
star
73

2-math-master-audit

Solidity
1
star
74

aderyn-vscode

TypeScript
1
star
75

2024-03-snek-raffle

Python
1
star