preeeetham/solana_ctf

GitHub: preeeetham/solana_ctf

一套基于 Solana Devnet 的 CTF 安全挑战集合,涵盖密码学、DeFi 和区块链安全三大类别共 30 个实战题目,帮助开发者系统学习智能合约漏洞利用与防御技术。

Stars: 0 | Forks: 0

# Solana CTF 比赛准备 本仓库包含 30 个高级 Solana 安全挑战,旨在帮助您为 Capture The Flag 比赛做准备。这些挑战基于 Solana 协议中发现的现实世界漏洞和攻击模式。 ## 🎯 挑战类别 ### 1. 密码学谜题(10 个挑战) 专注于破解密码学实现、寻找数学漏洞并利用弱随机性。 ### 2. DApp 漏洞利用(10 个挑战) 针对去中心化应用程序中的漏洞,包括 DEX、借贷协议和治理系统。 ### 3. 区块链安全场景(10 个挑战) 利用特定于区块链的漏洞,如整数溢出、重入和权限提升。 ## 🚀 快速开始 ### 前置条件 - Rust 1.75+ 及 Solana 工具链 - Node.js 18+ 及 TypeScript - Anchor Framework 0.29+ - Solana CLI 工具 ### 安装 ``` # 安装 Solana 工具 sh -c "$(curl -sSfL https://release.solana.com/stable/install)" # 安装 Anchor npm install -g @coral-xyz/anchor-cli # 安装依赖 npm install # 构建所有 Rust programs for dir in rust/*/; do cd "$dir" && anchor build && cd ../.. done ``` ## 📋 完整挑战列表 ### TypeScript 挑战 #### 密码学谜题 1. **Weak Randomness Oracle** - 利用抽奖中可预测的链上随机性 2. **Ed25519 Signature Malleability** - 利用签名可延展性进行双花攻击 3. **PDA Seed Collision** - 寻找 Program Derived Address 的冲突 seed 4. **Merkle Proof Forgery** - 利用脆弱的 Merkle 树实现 5. **BLS Signature Aggregation Attack** - 破坏门限签名方案 #### DApp 漏洞利用 11. **Flash Loan Attack** - 使用闪电贷和预言机操纵抽干流动性池 12. **AMM Price Manipulation** - 利用恒定乘积公式弱点 13. **Governance Takeover** - 通过操纵投票获取 DAO 治理的控制权 14. **NFT Metadata Injection** - 向 NFT 元数据中注入恶意数据 15. **Cross-Program Invocation Exploit** - 串联 CPI 进行未授权访问 #### 区块链安全 21. **Account Substitution Attack** - 在交易中替换恶意账户 22. **Sysvar Spoofing** - 伪造系统变量以进行利用 23. **Rent Exemption Bypass** - 通过账户操纵逃避租金支付 24. **Transaction Reordering** - 利用交易排序获取利润 25. **State Corruption** - 破坏程序状态以进行未授权访问 ### Rust 挑战 #### 密码学谜题 6. **Elliptic Curve Backdoor** - 在自定义曲线实现中寻找隐藏的后门 7. **Zero-Knowledge Proof Bypass** - 破坏 ZK-SNARK 验证器 8. **Hash Collision Mining** - 在弱哈希函数中寻找实际碰撞 9. **Commitment Scheme Break** - 将承诺打开为不同的值 10. **Ring Signature Deanonymization** - 追踪匿名交易 #### DApp 漏洞利用 16. **Oracle Manipulation** - 操纵价格喂口获取利润 17. **Staking Reward Calculation Bug** - 领取过量的质押奖励 18. **Token Mint Authority Hijack** - 夺取 token mint 的控制权 19. **Escrow Double Claim** - 从托管中重复领取资金 20. **DEX Sandwich Attack** - 对 DEX 交易进行抢跑和尾跑 #### 区块链安全 26. **Integer Overflow Treasury Drain** - 利用算术漏洞抽干资金库 27. **Reentrancy in Token Program** - 经典的重入攻击 28. **Authority Escalation** - 在多签中提升权限 29. **Seed Canonicalization Bug** - 利用 PDA 生成缺陷 30. **Cross-Chain Bridge Exploit** - 攻击跨链桥协议 ## 🏃 运行挑战 ### TypeScript 挑战 ``` cd typescript// npm install npm test # Run tests npm run exploit # Run exploit ``` ### Rust 挑战 ``` cd rust// anchor build anchor test ``` ## 📚 学习资源 每个挑战包含: - **README.md** - 挑战描述和目标 - **漏洞代码** - 目标合约/程序 - **漏洞利用模板** - 解决方案的起始代码 - **题解** - 完整可用的漏洞利用代码(请在尝试后再查看!) ## 🛡️ 安全最佳实践 这些挑战将教您识别和利用: - 算术上溢/下溢 - 重入漏洞 - 访问控制缺陷 - 预言机操纵 - 闪电贷攻击 - 签名可延展性 - 以及更多... ## ⚠️ 免责声明 这些挑战仅供教育目的。切勿在未经明确许可的情况下,在主网尝试这些漏洞利用。在发现真实漏洞时,请始终践行负责任的披露。 ## 📄 许可证 MIT 许可证 - 详情请参阅 LICENSE 文件 祝您在 CTF 比赛中玩得开心并取得好成绩!🚀
标签:Anchor框架, MITM代理, Solana, Web3安全, 区块链安全, 可视化界面, 智能合约审计, 自动化攻击