30

互联网漏洞赏金“骗局”曝光,这点钱还不如打德扑

 5 years ago
source link: http://www.lieyunwang.com/archives/451073?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

【猎云网(微信号:)】1月19日报道 (编译:一晌贪欢)

程序员要是通过“漏洞赏金计划”(网络公司给予报告其安全漏洞的程序员以现金奖励)来谋生,就好比普通人把玩德州扑克当生活来源,这难度可不低。麻省理工出版的《网络安全新解决方案》,其中一个章节《修复漏洞:漏洞的劳动力市场》摆出数据说明,通过“漏洞赏金计划”赚钱很难。赏金计划和财富分配以及其它社会学现象一样,都遵循帕累托分布(指极少的人口拥有大部分财产)的规则。数量最多、质量最高的安全漏洞报告来自于很少一部分程序员,当然赏金计划的绝大部分奖金也由他们获得。而剩下的大部分参与者只能瓜分很少比例的奖金。

《修复漏洞》并没有鼓励软件公司通过赏金计划来改进它们的安全系统。HackerOne是一个进行该计划的公司,它宣称已经有超过30万人签署了帮助其提高安全性的协议。有30万双眼睛仔细查看你的代码,这听起来是不错,可是这个数字也包括僵尸帐户和那些从来没有发现过漏洞的人。实际上,只有少数顶级程序员才能发现漏洞并因此获得现金回报。

对此,有外媒表示,对于公司来说,不会把自己的网络安全只寄希望于一个高效的程序员,而且还不知道他是否能有足够的业余时间为公司工作。

那为什么不干脆聘请这些网络安全高手来公司做安全顾问呢?《修复漏洞》的作者认为,应该用赏金计划来激励程序员中的精英。如果该计划只针对受邀程序员,对于管理琐碎的、不重要的、重复的漏洞,可以降低其运营成本。(只有4-5%来自谷歌、Facebook和GitHub对公的赏金计划才有奖金。)据作者说,为数不多的优秀漏洞猎人是不可或缺的人才,也是他们才有能力推动赏金计划这个市场的发展。基于此,在可控制的条款和条件下雇用他们来做安全顾问似乎更实际。

数据正在动摇漏洞赏金计划

在书中,Facebook资助的独立研究人员仔细研究了以下两个漏洞赏金计划的数据:1)61个HackerOne项目,覆盖周期超过23个月;2)Facebook项目逾45个月的数据。 HackerOne数据组包括来自Twitter、Square、Slack、Coinbase、Flash等的奖励程序。HackerOne数据组的能够跨项目跟踪用户名,但Facebook数据组不能。

ZFVVzmZ.jpg!web

上表:参与者、出售额、Facebook(45个月)/ HackerOne(23个月)奖金

下表:平均出售额及相应人员数量

寻找漏洞的高手不仅仅只参与一个赏金计划。这批顶级选手横扫多个项目,通过不同的技术售卖他们发现的漏洞。此外,价值最高的关键性漏洞也是由这批程序员发现报告的。平均而言,1%的顶级程序员向约5个不同的赏金计划报告漏洞。

书中涵盖了一些平均数值:程序员的平均出售额、平均收入、平均交易额。在分析赏金分布的过程中,这些平均值不可取。例如:如果一组有90个人时薪10美元,另一组有10个人时薪1000美元,平均值就是时薪109美元,但这样的平均值不能反映出两组的差异化收入水平。

令人惊讶的是,书中竟没有体现这种差异。作者发现,当人群分层时,不同群体的差异很说明问题。而对于表现最好的那5%的程序员,他们的许多信息却被省略了。

我们试图重组图表以说明问题:在赏金计划中有一小群多产的参与者。数据集越大,这种趋势越明显。在HackerOne和Facebook的全部数据集中,报告10个以上漏洞的人占7%,共计报1622个漏洞,而其余93%的人一共报告了2523个漏洞。

NRB3Yfb.jpg!web

最出色的程序员被混为一谈,一起归入“发现10个以上漏洞”的组别。其实这个群体还应该继续细分。HackerOne数据中,排名前1%的人(6名参与者)报告161个漏洞,Facebook数据中排名前1%的人(7名参与者)报告274个漏洞,这1%的程序员平均每人报告27个和39个漏洞!即使在收入最高的顶级程序员中也可能存在分层现象,但目前没有更详细的数据,所以高手群体如何分层还是个谜。

前1%的人虽多产,但总体收入并不高。Facebook数据中排名前七的参与者平均每月报告0.87个错误,平均年薪为34255美元,比密西西比害虫防治工人赚的还要少一点。

Qj6VfeF.jpg!web

对于HackerOne数据组中排名前六的人来说,情况更糟。平均每月报告1.17个漏洞,而平均年收入只有16544美元。可是,《修复漏洞》的注释部分出现了两个异常数据,一个提到谷歌的赏金计划(Chromium Rewards Program)为单次漏洞报告竟然支付了6万美元,另一个是Facebook项目的一名参与者在21个月内挣了183000美元,即平均年收入104000美元。

看到这里心都凉了吧,即便已经算是1%的高手,赏金计划的收入也实在不可观,不过很有可能参与赏金计划只是这些程序员的副业而已。程序员如果很擅长找到一些关键漏洞,然后设置扫描程序和警报,静待相关的赏金计划上线,这也是不错的买卖。找漏洞,提交证据,然后赚钱,再找下一个漏洞。

赏金计划外是否有更优选择?

谁是最优秀的漏洞赏金猎人,他们的背景是什么?他们因何脱颖而出?数据没法给出这些问题答案,但作者提出了三种可能性:不断提高的职业技能、天赋、专业人士和业余爱好者的差异。(一些表现最好的猎人可能来自于同一个账户下的团队协作,也可能是擅长几种关键漏洞类型的个人,在新项目启动时,他们会密切关注较容易的目标。)无论他们是谁,这些都是不可或缺的人才,应当鼓励他们加入漏洞赏金计划。为此,作者提出了三个方案:

1. 通过不向公众开放的仅限邀请的项目,保持人才池的排他性。这确保了最有才干的程序员不必与其他相对较弱的选手竞争,可以独揽奖金。

2. 漏洞报告若连续有效,则应该提高赏金价格,以防止程序员转向其它项目。

3. 向有才华的研究人员提供资助,即使没有发现漏洞也要支付酬劳。

这些建议和请咨询公司进行代码审计没有太大区别。此外,对参与者而言,一个仅限邀请的赏金计划项目面临着“先有鸡还是先有蛋“的悖论:当程序员还没有机会建立专业声誉时,如何得到网络公司的邀请?而且,人们没有意识到,进行赏金计划其实风险不小,不可控因素也不少。

鉴于目前市场竞争激烈,赏金计划的经济情况一片混乱。可利用的零日漏洞(指被发现后可以立即被恶意利用的安全漏洞)可以从合适的买家那里获得高达数百万美元的收益。任何人发现一个关键漏洞,他都可以选择不报给供应商,而是尝试以更高的价格出售给其他人。书中建议,重点应该放在如何激励黑客把漏洞直接报给供应商,但到底该如何实施书中没有提到。目前没有证据表明,漏洞攻防双方谁出价更高,程序员就把发现的漏洞信息卖给谁。我们认为,是否把漏洞报给供应商更多的是一个道德问题。

那么,现在谁会被激励去参与赏金计划呢?有两个群体:一个是经济上相对弱势的国家的国民,他们可以利用美元汇率牟利;另一个是学生群体,可以借此提升网络安全技能和学习行业工具。读了《修复漏洞》之后,我不认为行业精英有足够的动力参加漏洞赏金计划。或许这些人应该运用自己的力量向市场提出更多的要求。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK