1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
//! AST-based vulnerability detectors for EVM smart contracts.
//!
//! Each detector implements analysis for a specific vulnerability pattern.
//!
//! Phase A (Critical): 5 high-impact invariants
//! - evm_missing_post_state_health_check (H19 Euler - $197M)
//! - evm_merkle_root_zero_default (H16 Nomad - $190M)
//! - evm_dvn_single_point_failure (H47 KelpDAO - $292M)
//! - evm_unbacked_synthetic_mint (H56 Echo - $73M)
//! - evm_lst_depeg_collateral_risk (H47 KelpDAO - $292M)
//!
//! Phase B (High-Priority): 8 additional invariants
//! - evm_oracle_self_trade (H17 Mango - $117M)
//! - evm_synthetic_collateral_oracle (H45 Rhea, H40 Makina)
//! - evm_erc4626_inflation_protection (Theoretical)
//! - evm_arbitrary_call_msg_value (H26 Unizen - $2.1M)
//! - evm_reentrancy_via_whitelisted (H29 Penpie - $27M)
//! - evm_proxy_storage_collision (H28 Pike - $1.68M)
//! - evm_bridge_address_cryptographic_verify (H49 Purrlend)
//! - More...
// DEPRECATED: Old detector using legacy Violation struct, disabled for v0.3.0
// pub mod access_control;
// DEPRECATED: Old detector using legacy Violation struct, disabled for v0.3.0
// pub mod flash_loan;
// DEPRECATED: Old detector using legacy Violation struct, disabled for v0.3.0
// pub mod overflow;
// DEPRECATED: Old detector using legacy Violation struct, disabled for v0.3.0
// pub mod reentrancy;
pub use detect_aa_entropy_weakness;
// pub use access_control::AccessControlDetector;
pub use detect_arbitrary_call_msg_value;
pub use detect_arithmetic_rounding;
pub use detect_bridge_address_cryptographic_verify;
pub use detect_constructor_race_condition;
pub use detect_dvn_single_point_failure;
pub use detect_erc4626_inflation_protection;
// pub use flash_loan::FlashLoanDetector;
pub use detect_missing_health_check;
pub use *;
pub use detect_lst_depeg_collateral_risk;
pub use detect_merkle_root_zero_default;
pub use detect_oracle_self_trade;
// pub use overflow::OverflowDetector;
pub use detect_proxy_storage_collision;
// pub use reentrancy::ReentrancyDetector;
pub use detect_reentrancy_via_whitelisted;
pub use detect_router_slippage_validation;
pub use detect_signature_replay_protection;
pub use detect_state_mutation_ordering;
pub use detect_synthetic_collateral_oracle;
pub use detect_unbacked_synthetic_mint;
pub use detect_token_balance_manipulation;
pub use detect_upgrade_path_verification;