Skip to content

Add domain-specific vulnerability entries across 8 domains#422

Open
omarinuwa wants to merge 5 commits into
crytic:masterfrom
omarinuwa:add-evm-domain-vulnerabilities
Open

Add domain-specific vulnerability entries across 8 domains#422
omarinuwa wants to merge 5 commits into
crytic:masterfrom
omarinuwa:add-evm-domain-vulnerabilities

Conversation

@omarinuwa
Copy link
Copy Markdown
Contributor

@omarinuwa omarinuwa commented Feb 19, 2026

Summary

Add 62 not-so-smart-contract entries across 8 domains under a new domain-specific-vulnerabilities/ section, covering vulnerability patterns tied to specific smart contract application areas.

  • DeFi Bridge (8 entries): Cross-chain message authentication, arbitrary external calls, native token handling, ERC-777 reentrancy, unchecked return values, gas griefing, cross-chain address assumptions, and missing recovery mechanisms
  • Merkle Tree (8 entries): Leaf node collision, empty proof bypass, arbitrary proof length, inverted verification logic, missing claim replay protection, missing leaf context, missing root validation, and unauthorized root update
  • Tick Math (7 entries): Negative tick rounding, fee growth underflow, slot0 tick misalignment, tick boundary crossing, tick spacing validation, TWAP array inversion, and unsafe integer downcast
  • Voting Governance (8 entries): Flash loan voting, double voting, delegation power manipulation, snapshot timing manipulation, retroactive parameter changes, timelock bypass, execution without quorum, and vote after transfer
  • ERC-4337 (8 entries): EntryPoint hash omissions, cross-chain replay, paymaster deposit drain, bundler gas manipulation, unvalidated gas parameters, CREATE2 frontrunning, validation return value misinterpretation, and postOp revert exploitation
  • Slippage (8 entries): Missing slippage protection, on-chain slippage calculation, hardcoded values, deadline expiration, unapplied parameters, shared tolerances across operations, wrong-stage checks, and vault donation/inflation attacks
  • Precision Loss (7 entries): Division before multiplication, incorrect rounding direction, ratio truncation to zero, conflicting rounding requirements, rounding-induced DoS, decimal mismatches, and fee truncation bypass
  • Uniswap V4 Hooks (8 entries): Permission flag misconfiguration, PoolManager bypass, hook reentrancy, state overwriting, spot price manipulation, delta sign convention errors, JIT liquidity fee extraction, and dynamic fee misconfiguration

Also renames the section from evm-domains to domain-specific-vulnerabilities and updates SUMMARY.md, root README, and all navigation files.

Test plan

  • Verify all 62 entries follow the existing format (Description, Exploit Scenario, Example, Mitigations)
  • Confirm Solidity code examples demonstrate the vulnerable pattern
  • Check all internal links resolve correctly in SUMMARY.md and READMEs

🤖 Generated with Claude Code

Add 31 vulnerability entries across 4 EVM application domains:
- DeFi Bridge (8): arbitrary calls, message auth, native tokens, recovery, return values, ERC-777, address assumptions, gas griefing
- Merkle Tree (8): empty proof, leaf/node collision, replay, proof length, root validation, leaf context, inverted logic, root access control
- Tick Math (7): slot0 misalignment, negative rounding, fee underflow, downcast, spacing, boundary crossing, TWAP inversion
- Voting Governance (8): flash loans, double voting, quorum, timelock, snapshots, delegation, parameter changes, vote-after-transfer

Each entry follows the existing not-so-smart-contracts template with Description, Exploit Scenario, Example (Solidity), and Mitigations sections.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Feb 19, 2026

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 2 committers have signed the CLA.

✅ bsamuels453
❌ omarinuwa
You have signed the CLA already but the status is still pending? Let us recheck it.

Add 31 new not-so-smart-contract entries across 4 domains:
- ERC-4337 (account abstraction): 8 entries covering EntryPoint hash omissions, cross-chain replay, paymaster drain, bundler gas manipulation, gas parameter validation, CREATE2 frontrunning, validation return values, and postOp exploitation
- Slippage: 8 entries covering missing protection, on-chain calculation, hardcoded values, deadline expiration, unapplied parameters, shared tolerances, wrong-stage checks, and vault donation attacks
- Precision Loss: 7 entries covering division ordering, rounding direction, ratio truncation, conflicting rounding, rounding DoS, decimal mismatches, and fee truncation bypass
- Uniswap V4 Hooks: 8 entries covering permission flags, PoolManager bypass, reentrancy, state overwriting, spot price manipulation, delta sign conventions, JIT liquidity, and dynamic fee misconfiguration

Rename evm-domains -> domain-specific-vulnerabilities for clarity.
Update SUMMARY.md, root README, and section index.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@omarinuwa omarinuwa changed the title Add EVM domain-specific not-so-smart-contracts Add domain-specific vulnerability entries for ERC-4337, slippage, precision loss, and Uniswap V4 hooks Feb 20, 2026
@omarinuwa omarinuwa changed the title Add domain-specific vulnerability entries for ERC-4337, slippage, precision loss, and Uniswap V4 hooks Add domain-specific vulnerability entries across 8 domains Feb 20, 2026
omarinuwa and others added 3 commits February 20, 2026 19:59
…boilerplate

- Rename all kebab-case directories to snake_case per style guide
- Change ## Domains to ## Vulnerabilities in parent README
- Add consistent SPDX/pragma boilerplate to ERC-4337 and Uniswap V4 entries

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Change parent README table header from "Domain" to "Name"
- Add SPDX/pragma boilerplate to all 8 Merkle Tree code blocks

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…bles

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants