漫长的等待结束了:隐蔽 Solidity 竞赛 将于 2022 年回归!
在 2020 年成功复兴之后,我们认为是时候让伟大的 Solidity 大佬们再次聚在一起,为下一个重大的隐蔽黑客攻击而竞争了!
如果你不熟悉这个比赛,让我们快速回顾一下隐蔽 Solidity 竞赛 (USC) 究竟是什么。
简而言之,USC 就是寻找 Solidity 语言中的漏洞或“隐藏点”,并利用这些漏洞编写看似无辜且简单的 Solidity 代码,其中包含恶意行为或后门。
因此,隐蔽 Solidity 竞赛旨在
- 提高对智能合约安全的认识。
- 发现语言设计缺陷。
- 对最近引入的语言特性和限制进行实战测试。
- 突出智能合约开发中的反模式。
- 建立安全的智能合约开发的新最佳实践。
所以,让我们来看看 2022 年竞赛的具体细节,主题、截止日期、评委、奖品等等!
主题:去中心化交易所 🧪
构建一个看起来公平,但可以被“操纵”的去中心化交易所。
今年,我们希望您构建一个简单的去中心化交易所,人们可以在其中交易他们辛苦赚来的 NFT、DAO 治理代币或他们选择的狗狗币。
去中心化交易所的规则(至少简单的规则)非常简单,而且那里不可能出错……对吧?
构建一个去中心化交易所,使用自动做市商或撮合机制,其中交易并非真正按预期进行。这可以通过泄露资金、特定账户能够提取所有资金或您可以想到的其他方式来实现。您也可以在您提供的代币实现中添加缺陷,而不是在交易所本身添加。唯一的硬性要求是缺陷是隐藏的。
评委 ⚖️
评委将收到匿名提交的参赛作品。今年,参赛作品将由以下人员进行评估:
- Alex Beregszaszi,以太坊基金会 Solidity 联合负责人。
- Anton Permenev,ChainSecurity 高级工程师。
- Duncan Townsend,Immunefi 首席技术官。
- Gonçalo Sá,ConsenSys Diligence 安全工程师。
- Harikrishnan Mulackal,以太坊基金会 Solidity C++ 工程师。
- Josselin Feist,Trail of Bits 首席安全工程师。
- samczsun,Paradigm 研究合伙人。
- Stefan Beyer,Solidified 主审计师。
评判标准 ☑️
请记住,在提交作品时要考虑以下方面和属性:
- **简洁性与简明性**:由于在复杂且编写不良的代码中隐藏漏洞要容易得多,因此简洁明了的提交得分将高于冗长且复杂的提交。
- **合理性**:没有明确理由就下降到内联汇编的代码会立即显得可疑,无论汇编级缺陷编写得多么巧妙。
- **原创性**:真正原创的想法将获得比使用已知漏洞/后门机制更多的分数。
奖品 🏆
今年,第一名将获得一张参加 Devcon VII 波哥大 的门票。
前 3 名提交者将获得一张参加 Devconnect 联合办公空间 的门票,以及有机会在阿姆斯特丹举行的 2022 年 Solidity 峰会 上展示他们的竞赛提交作品。
隐蔽 Solidity 竞赛的前 3 名提交作品还将获得即将举行的 2022 年 Paradigm CTF 的积分。这些积分将像获奖者解决了一个奖励挑战(“伪挑战”)一样进行奖励。
此外,三位获奖者将被添加到荣誉榜中。
获奖者和所有合格的提交作品将获得定制的隐蔽 Solidity 竞赛 NFT。
提交作品 📨
在提交代码之前,请确保
- 您的所有提交都已获得开源许可证。
- 在您的提交中,您使用 Solidity v0.8.0 或更高版本。
- 您已仔细阅读 编码简介。
请在截止日期 [2022-03-16,UTC 时间晚上 11:59] 之前将您的提交作品发送至sol_underhanded@ethereum.org。参赛作品应包含一个 ZIP 文件,其中包含一个描述您的提交作品及其工作原理的自述文件、一个单独的用于剧透的文件以及一个或多个 Solidity 文件。
每人只能提交一个作品。如果您想进行团队提交,请指定一人代表您的团队提交。由于参赛作品将转发给评委并匿名评估,请不要在 ZIP 文件中包含识别信息。
截止日期 ⏳
- 提交作品开始时间:2022 年 2 月 9 日。
- 提交作品截止时间:2022 年 3 月 16 日。
获奖者将在 4 月份阿姆斯特丹 Devconnect 之前及时公布。
荣誉榜 ⭐
为了表彰往届隐蔽 Solidity 竞赛的所有获奖者,我们推出了 荣誉榜。可以查看往届获奖者的黑客攻击以获得灵感,并确保您没有意外地使用已知漏洞。
支持者 💖
最后但并非最不重要的是,我们要感谢 ChainSecurity、ConsenSys Diligence、Immunefi、Solidified、Trail of Bits、Paradigm、以太坊基金会 和所有评委对组织本次竞赛的支持!
如果您有任何疑问或遇到问题,请随时通过 sol_underhanded@ethereum.org 联系我们,或加入 Solidity Matrix / Gitter 频道。
我们期待收到许多无辜的提交作品。😇 玩得开心!