影视聚合站 科技 文章内容

程序员挖“洞”致富:发现一个漏洞,获赏 1272 万元!

发布时间:2022-02-14 20:54:56来源:CSDN

整理|郑丽媛

出品|CSDN(ID:CSDNnews)

适合程序员的副业有什么?写文章、当技术辅导、开发小程序、接植发代言(bushi)…许多人通过这些副业,长年累月下来,逐渐实现了理想中的“经济自由”。

在这之中,还有一种非常受欢迎的业余赚钱方式:“专找别人茬,奖金自己挣”的漏洞赏金猎人。不论是国外巨头如苹果、微软、谷歌等,还是国内大厂如华为、阿里、腾讯等,均推出了各自的漏洞悬赏计划,即开发者搜寻软件中的漏洞并将之上报厂商,便可获得丰厚奖励。

而这个奖金有多丰厚呢?近来,iOS越狱软件Cydia之父JayFreeman发现一个以太坊关键漏洞,获得了200万美元(约人民币1272万元)的巨额奖金!

(注:JayFreeman,著名软件开发人员,被誉为iOS越狱之父,开发出了Cydia应用商店,可使拥有越狱iPhone的用户在iOS中下载未经授权的软件。)

以太坊Layer2解决方案Optimism能够大规模处理交易,同时还保有以太坊的安全性,原先仅适用于Uniswap和Synthetix等特定项目,后于去年年底宣布取消白名单机制:任何用户都可以在Optimism上自由部署合约、构建应用程序。但近日,JayFreeman发布博客称,他在Optimism的Geth分叉中发现了一个关键Bug:攻击者可借此非法创建无数ETH代币。

在这篇博文中,JayFreeman详细描述了发现该Bug的历程及Bug的利用方式:“这一Bug我愿称之为‘UnbridledOptimism’,它可能会被粗略认为是‘桥’远端的一个漏洞,但实际上这是在Optimism上执行智能合约的虚拟机中的一个错误。利用这一Bug,攻击者可以访问‘桥’远端有效且无限数量的tokens。”

JayFreeman明确指出,Bug出现在以太坊VM中的SELFDESTRUCT指令。该指令用于合约自行销毁,移除其账户对象,允许从区块链的活动集中快速清除潜在的大量“过时”状态。当合约进行到SELFDESTRUCT指令时,它会指定一个“受益人”来接收它当前拥有的资金。该操作码在go-ethereum的EVM中实现将余额添加给受益人,然后调用StateDB.Suicide将帐户余额清零。

但JayFreeman发现,这一步既不使用stateObject的setBalance设置器,也不使用共享的common.Big0常量,也就是说它除了将对象上的布尔值设置为true之外毫无作用,而这意味着“此时的合约仍然存在并继续拥有它之前拥有的代码!”

Optimism团队在之后的报告中也指出:“该漏洞使得可以通过在持有ETH余额的合约上,反复触发SELFDESTRUCT操作码以在Optimism上创建无数ETH代币。”

所幸,JayFreeman之后迅速于2月2日向Optimism团队报告该Bug,而Optimism团队通过对Optimism链历史的分析,发现除了最初由Etherscan员工的一次意外触发(那次没有生成可用的多余ETH),该漏洞至今还未被利用过。

对于此Bug的出现,Optimism团队解释道:“这个错误源于对go-ethereum代码库的修改(旨在保持与旧OVM1.0系统的向后兼容性)。”由于过去一年中Optimism用户增长了很多,相比早期发布过程只涉及少数关键基础设施提供商之间的协调,Optimism团队表示如今发布的复杂性在急剧增加:代码库的桥接器、更多提供商、多个主网分支之间均有涉及。甚至即便发现了Bug,Optimism团队也不能立即发布明显的补丁——他们不能冒着有人在升级之前对漏洞进行逆向工程的风险。

在收到漏洞报告并确认漏洞的几小时内,Optimism团队就对该Bug的修复进行了测试,并部署到了Optimism的Kovan和Mainnet网络(包括所有基础设施提供商)。

Optimism官方提醒,虽目前该Bug尚未被利用,但鉴于该Bug的重要性,许多易受攻击的Optimism分叉和桥接提供商需引起重视,确保尽快升级至0.5.11版本的l2geth。

从本次事件可以看出,漏洞赏金计划对于许多大型项目来说或许必不可少。正如Optimism,逐年增加的用户伴随着愈发复杂的技术,与此同时产生Bug的可能性也在日益提升,此时若仅凭数量有限的项目内部人员来搜寻Bug无疑十分艰难。

无私发现Bug的人固然有,但适当的赏金计划显然更能刺激许多开发者寻找Bug的热情与动力,这或许也就是众多大型科技企业或项目均发布了漏洞赏金计划的原因:就在JayFreeman公开本次漏洞的同一天,MakerDAO还推出有史以来最大的漏洞赏金,最高可奖励高达1000万美元。

不过不能否认的是,漏洞赏金计划也曾引发了一些争议:

去年9月,向苹果报告了4个零日漏洞的DenisTokarev表示,依照苹果安全赏金页面,他所报告的漏洞的价值为10万美元,但苹果拒绝支付。

无独有偶,开发者JoseRodriguez此前也曾发推谴责苹果:他所报告的漏洞估值超2.5万美元,最终却只被奖励了5000美元。

那么,你对漏洞赏金计划有何看法呢?

参考链接:

https://cointelegraph.com/news/makerdao-launches-biggest-ever-bug-bounty-with-10m-reward

https://www.saurik.com/optimism.html

https://optimismpbc.medium.com/disclosure-fixing-a-critical-bug-in-optimisms-geth-fork-a836ebdf7c94

《》正式上市,50余位技术专家共同创作,云原生和数字化的开发者们的一本技术精选图书。内容既有发展趋势及方法论结构,华为、阿里、字节跳动、网易、快手、微软、亚马逊、英特尔、西门子、施耐德等30多家知名公司云原生和数字化一手实战经验!

© 2016-2022 ysjhz.com Inc.

站点统计| 举报| Archiver| 手机版| 小黑屋| 影视聚合站 ( 皖ICP备16004362号-1 )