🛡️ Ethernaut Foundry Solutions - 完整系列教程

Ethernaut 是由 OpenZeppelin 开发的 Web3/Solidity 智能合约安全 CTF(Capture The Flag)游戏,灵感来源于 overthewire.org。每个关卡都是一个智能合约,玩家需要找到漏洞并利用它们来完成挑战。

📚 系列介绍

本系列文章详细介绍如何使用 Foundry 框架来解决 Ethernaut 的各个挑战。Foundry 是一个现代化的以太坊开发工具套件,提供了强大的测试、部署和调试功能。

🎯 学习目标

通过本系列,你将学会:

  • Foundry 框架的使用:从安装到高级功能
  • 智能合约安全审计:识别常见漏洞模式
  • 攻击技术实现:重入攻击、整数溢出、权限提升等
  • 防御机制设计:如何编写更安全的智能合约
  • CTF 解题思路:系统化的安全分析方法

🏗️ 技术栈

  • Foundry: 以太坊开发框架
  • Solidity: 智能合约编程语言
  • OpenZeppelin: 安全合约库
  • EVM: 以太坊虚拟机

📖 完整关卡列表

基础攻击篇 (Level 1-10)

  1. Level 1: Fallback - 回退函数漏洞

    • Fallback 函数权限提升
    • 最基础的合约攻击
  2. Level 2: Fallout - 构造函数拼写错误

    • 构造函数命名漏洞
    • 代码审计重要性
  3. Level 3: Coin Flip - 伪随机数攻击

    • 区块链伪随机数漏洞
    • 可预测性攻击
  4. Level 4: Telephone - tx.origin vs msg.sender

    • 身份验证绕过
    • 中间合约攻击
  5. Level 5: Token - 整数下溢攻击

    • 算术溢出漏洞
    • SafeMath 的重要性
  6. Level 6: Delegation - delegatecall 攻击

    • delegatecall 存储槽攻击
    • 上下文切换漏洞
  7. Level 7: Force - 强制发送以太币

    • selfdestruct 强制转账
    • 合约余额操控
  8. Level 8: Vault - 私有变量读取

    • 区块链数据透明性
    • 存储槽分析
  9. Level 9: King - 拒绝服务攻击

    • DoS 攻击模式
    • 恶意合约阻断
  10. Level 10: Re-entrancy - 重入攻击

    • 经典重入攻击
    • 检查-效果-交互模式

进阶攻击篇 (Level 11-20)

  1. Level 11: Elevator - 接口实现攻击

    • 接口恶意实现
    • 状态变化利用
  2. Level 12: Privacy - 存储布局分析

    • 复杂存储布局
    • 私有数据提取
  3. Level 13: Gatekeeper One - 多重验证绕过

    • Gas 精确控制
    • 类型转换攻击
  4. Level 14: Gatekeeper Two - 高级验证绕过

    • 运行时创建合约
    • 位运算攻击
  5. Level 15: Naught Coin - ERC20 授权攻击

    • ERC20 transferFrom 绕过
    • 授权机制漏洞
  6. Level 16: Preservation - 存储槽劫持

    • 存储槽布局攻击
    • delegatecall 高级利用
  7. Level 17: Recovery - 合约地址计算

    • CREATE 地址预测
    • 丢失合约恢复
  8. Level 18: Magic Number - 字节码分析

    • 手写字节码
    • EVM 底层原理
  9. Level 19: Alien Codex - 数组边界攻击

    • 动态数组下溢
    • 存储槽任意写入
  10. Level 20: Denial - Gas 耗尽攻击

    • 分红合约攻击
    • Gas 消耗 DoS

高级攻击篇 (Level 21-25)

  1. Level 21: Shop - 视图函数攻击

    • view 函数状态利用
    • 价格操控攻击
  2. Level 22: Dex - DEX 价格操控

    • AMM 价格计算漏洞
    • 流动性攻击
  3. Level 23: Dex Two - 代币注入攻击

    • 恶意代币注入
    • DEX 安全进阶
  4. Level 24: Puzzle Wallet - 多重签名钱包攻击

    • 代理模式攻击
    • 复杂状态管理
  5. Level 25: Motorbike - UUPS 代理攻击

    • 升级模式漏洞
    • 实现合约攻击

🛠️ 快速开始

1
2
3
4
5
6
7
8
9
10
11
12
# 克隆项目
git clone https://github.com/XuHugo/Ethernaut-Foundry-Solutions.git
cd Ethernaut-Foundry-Solutions

# 安装依赖
forge install

# 运行所有测试
forge test

# 运行特定关卡测试
forge test --match-contract FallbackTest -vvv

🔗 相关资源

🚨 免责声明

本系列文章纯属教育目的,所有内容仅用于:

  • 学习智能合约安全知识
  • 理解常见漏洞模式
  • 提高代码审计能力

请勿将相关技术用于攻击真实的智能合约或进行任何非法活动。

🤝 贡献与反馈

如果你发现任何问题或有改进建议,欢迎:

  • 在 GitHub 提交 Issue
  • 发起 Pull Request
  • 在评论区讨论

让我们一起构建更安全的 Web3 世界! 🌟