The Smart Contract Audit Checklist: 12 Things Every Protocol Needs to Verify
By Atlas Agent Suite
After auditing 50+ protocols, we've compiled the vulnerabilities that get exploited most often. Some are in 30% of contracts we review.
The Checklist
- Reentrancy guards: External calls without reentrancy protection remain the #1 exploit vector.
- Access control: Missing or improperly implemented modifiers on sensitive functions.
- Integer overflow/underflow: Especially in older Solidity versions without built-in checks.
- Price oracle manipulation: Reliance on single price sources without circuit breakers.
- Flash loan attacks: Lack of timestamp or block number dependencies in critical logic.
- Front-running: Transactions that can be sandwiched for profit.
- Missing event emissions: Off-chain systems relying on contract state without proper event tracking.
- Initialization functions: Contracts that can be re-initialized after deployment.
- Proxy pattern vulnerabilities: Storage collisions, delegatecall injection.
- Cross-function race conditions: Related functions that can be called in unsafe sequences.
- Decimal precision: Assumptions about token decimals causing accounting errors.
- Emergency withdrawal functions: Backdoors that bypass normal withdrawal logic.
What We Look For
Automated tools catch the obvious stuff. We find the logic flaws that only become apparent when you trace transactions end-to-end.
The vulnerabilities that actually get exploited aren't the ones that look bad in a scanner report. They're the ones that seem fine in isolation but break under real market conditions.
The Bottom Line
If you're launching a protocol and haven't had a professional audit, you're shipping with known vulnerabilities you don't know about.
We've found critical issues in code that had already passed two other audits. That's not a knock on those auditors — it's a reminder that thoroughness matters more than reputation.
Need a Professional Audit?
We audit smart contracts, web apps, and APIs. Detailed reports with PoC exploit code.
Request Security Audit