Collect CTFs related to evm, and provide solutions, using Foundry. 收集 EVM 类的 CTF 挑战,并提供解决方案。
Lead by flyq
安装 Rust
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
并根据提示继续操作。
安装 svm
svm-rs is Solidity Compiler Version Manager
$ cargo install svm-rs
设置 solc 版本
$ svm install 0.4.26
$ svm use 0.4.26
$ solc --version
安装 Foundry
根据 Foundry 官方文档配置好运行环境。
如果需要运行所有的测试:
$ git clone https://github.com/WTFAcademy/WTF-CTF.git
$ cd ./WTF-CTF
$ forge install openzeppelin-contracts-05=OpenZeppelin/openzeppelin-contracts@v2.5.0 openzeppelin-contracts-06=OpenZeppelin/openzeppelin-contracts@v3.4.0 openzeppelin-contracts-08=OpenZeppelin/openzeppelin-contracts@v4.8.3
$ forge install
$ forge test --ffi -vvv
如果只运行某一个挑战的测试(示例):
$ cd ./WTF-CTF
$ forge test -C ./src/Capture_the_Ether/Warmup/Deploy_a_contract -vvv
- Warmup
- Lotteries
- Math
- Accounts
- Miscellaneous
- Hello Ethernaut: 代码 | 文章
- Fallback: 代码 | 文章
- Coin Flip: 代码 | 文章
- Telephone: 代码 | 文章
- Token: 代码 | 文章
- Delegation: 代码 | 文章
- Force: 代码 | 文章
- Vault: 代码 | 文章
- King: 代码 | 文章
- Re-entrancy: 代码 | 文章
- Elevator: 代码 | 文章
- Privacy: 代码 | 文章
- Gatekeeper One: 代码 | 文章
- Gatekeeper Two: 代码 | 文章
- Naught Coin: 代码 | 文章
- Preservation: 代码 | 文章
- Recovery: 代码 | 文章
- MagicNumber: 代码 | 文章
- Alien Codex: 代码 | 文章
- Denial: 代码 | 文章
- Shop: 代码 | 文章
- Dex: 代码 | 文章
- Dex Two: 代码 | 文章
- Puzzle Wallet: 代码 | 文章
- Motorbike: 代码 | 文章
- DoubleEntryPoint: 代码 | 文章
- Good Samaritan: 代码 | 文章
- Gatekeeper Three: 代码 | 文章
- Switch: 代码 | 文章
- HigherOrder:代码 | 文章
- Stake: 代码 | 文章
MIT (c) 2023 WTF.Academy