📘 智能合约安全审计实战指南

30章 · 从入门到审计
01 智能合约安全概述
Web3安全现状 常见攻击类型 审计流程与标准
02 Solidity基础回顾
数据类型 函数修饰符 事件与继承 ABI编码
03 重入攻击原理与实战
单函数重入 跨函数重入 重入锁 检查-效果模式
04 访问控制漏洞
Ownable模式缺陷 tx.origin vs msg.sender 角色权限管理
05 整数溢出与下溢
SafeMath库 Solidity 0.8+内置检查 实战案例分析
06 前端操纵与闪电贷攻击
价格预言机操纵 闪电贷攻击流程 TWAP & Chainlink防御
07 未检查的外部调用
call/delegatecall/staticcall 返回值处理 重入与代理陷阱
08 拒绝服务攻击
Gas耗尽 自毁函数 循环依赖 不可终止合约
09 时间戳依赖与随机数漏洞
block.timestamp操纵 链上随机数缺陷 VRF & Commit-Reveal
10 代理合约与逻辑升级漏洞
透明代理 UUPS模式 存储冲突/函数选择器冲突
11 自毁函数与合约自杀
selfdestruct风险 强制发送ETH 合约不可逆操作
12 未初始化存储指针
结构体指针 映射指针 存储布局错误
13 短地址攻击与ABI编码漏洞
参数填充 编码差异 前端验证
14 签名重放攻击
EIP-712 nonce机制 签名有效期/链ID绑定
15 前端运行与MEV攻击
交易排序 三明治攻击 Flashbots & 隐私交易
16 Gas优化与漏洞
Gas消耗估算 循环优化 存储与内存选择
17 事件日志伪造
事件索引 emit滥用 日志验证
18 权限提升与后门
构造函数改名 初始化函数未锁定 管理员后门
19 跨链桥安全
跨链消息验证 中继器信任 轻客户端验证
20 DeFi协议安全
借贷协议 AMM池 质押与奖励分配漏洞
21 NFT合约安全
ERC-721/1155实现缺陷 元数据冻结 白名单漏洞
22 治理合约安全
投票权重计算 提案执行延迟 治理攻击
23 静态分析工具
Slither Mythril Securify使用与报告
24 动态分析工具
Foundry测试 Hardhat调试 Echidna模糊测试
25 形式化验证入门
SMT求解器 Certora Prover 不变式检查
26 审计报告撰写
漏洞分类 严重等级 修复建议/PoC编写
27 实战案例一:DAO攻击复盘
The DAO事件 重入攻击经典 分叉与教训
28 实战案例二:Parity多签钱包漏洞
钱包逻辑缺陷 意外自毁 资产冻结
29 实战案例三:BNB跨链桥攻击
跨链消息伪造 验证绕过 资产盗取
30 审计职业发展
审计师技能树 认证路径 社区资源与持续学习