你來找我茬,我來付你錢!世上竟有如此好事?
還真有。
近期,谷歌新推出了一項漏洞賞金計劃。該計劃全稱為Open Source Software Vulnerability Rewards Program(以下簡稱為OSS VRP),顧名思義,是一個針對開源軟件發(fā)起的漏洞獎勵項目。
作為公認(rèn)的開源貢獻大戶,谷歌是Bazel、Angular、Golang、Protocol buffers和Fuchsia等項目的主要維護者。這些項目應(yīng)用廣泛,像Go語言被大量用于云計算、微服務(wù)、高并發(fā)領(lǐng)域,而Fuchsia OS則為智能家居設(shè)備提供支持。因此,在這些項目中發(fā)現(xiàn)的“敏感”漏洞也最有可能獲得高額賞金。
除此之外,由谷歌管理并托管在GitHub等公共存儲庫上的其他項目,以及這些項目中包含的第三方依賴項也涵蓋在OSS VRP中。
針對那些在其開源軟件或軟件構(gòu)建模塊中發(fā)現(xiàn)安全漏洞的研究人員,谷歌愿意為其提供賞金。根據(jù)漏洞的嚴(yán)重程度以及漏洞所在的項目的重要性,賞金從100美元到31337美元(約21.8萬人民幣)不等。
那么,這類“漏洞賞金計劃”究竟是為何而設(shè)?這種“你找bug我付錢”的模式能起多大作用?成為一名漏洞獵手要考慮哪些因素?且看下文分解。
“漏洞賞金”背后是......
據(jù)悉,此次谷歌發(fā)布的漏洞賞金計劃,其實是為了應(yīng)對日益普遍的開源供應(yīng)鏈攻擊的現(xiàn)實。
谷歌員工Francis Perron和Krzysztof Kotowicz透露:“去年,針對開源供應(yīng)鏈的攻擊同比增長了650%,包括Codecov和Log4j漏洞等在內(nèi),這些事件顯示了單個開源漏洞的破壞性潛力?!?/p>
以Log4j Java日志庫中的Log4Shell漏洞為例,去年12月爆發(fā)后造成了相當(dāng)廣泛的破壞,到目前為止,雖然出現(xiàn)了很多防御方法,但這一漏洞的影響至今都在。由于對Log4Shell的利用基本集中在廣泛部署的應(yīng)用程序上,可能有大量Java應(yīng)用程序受到Log4Shell不同程度的影響。就軟件供應(yīng)鏈現(xiàn)狀來說,這一事件無異于一記警鐘。
為了加強軟件供應(yīng)鏈的安全性,谷歌在此次漏洞賞金計劃中希望白帽黑客們關(guān)注的是如下重點:
- 導(dǎo)致供應(yīng)鏈?zhǔn)軗p的安全漏洞;
- 導(dǎo)致產(chǎn)品漏洞的設(shè)計問題;
- 其他安全問題,例如泄露的憑據(jù)、弱密碼或不安全的安裝等。
值得關(guān)注的是,隨著針對Maven、NPM、PyPI和RubyGems的供應(yīng)鏈攻擊不斷升級,加強開源組件,尤其是作為許多軟件構(gòu)建塊的第三方庫的安全性建設(shè),已迫在眉睫。因此,第三方依賴項中的安全漏洞也在賞金計劃范圍內(nèi),不過相關(guān)獎勵也有前提——研究人員需將錯誤報告首先發(fā)送給第三方項目的真正負(fù)責(zé)人,查看問題是否能在上游得到解決,與此同時他們還需要證明該錯誤的確影響到了谷歌的項目。
當(dāng)然,考慮到有意愿參與到這一賞金計劃的研究人員可能動機不一,谷歌為那些對獎金不感興趣的人也準(zhǔn)備了另外的選項,即以其名義將獎金捐贈給慈善機構(gòu)。
愿意掏錢的不止是巨頭們
于谷歌而言,其開展“漏洞獎金計劃”的歷史由來已久。
近年來,OSS VRP是繼針對Linux內(nèi)核漏洞和Kubernetes逃逸漏洞獎勵計劃后制定的又一重要漏洞獎勵機制。此外,在獎勵計劃的多年擴展中,針對Chrome、Android和其他產(chǎn)品、項目的漏洞賞金也有其設(shè)置需求。據(jù)統(tǒng)計,僅就去年而言,谷歌為其各種獎勵計劃,面向近700百名研究人員支付了870萬美元。
而在2021-2022年度,微軟在漏洞賞金支付方面甚至超過了谷歌,達到了1370萬美元。
回顧歷史可以發(fā)現(xiàn),漏洞賞金計劃自2000年后開始真正在互聯(lián)網(wǎng)世界嶄露頭角。此后很長一段時間,主導(dǎo)這些計劃的都是互聯(lián)網(wǎng)巨頭和大型開發(fā)項目。
2013年,谷歌為Linux等開源操作系統(tǒng)軟件的安全改進提供了漏洞賞金;微軟和Facebook聯(lián)合發(fā)起了“互聯(lián)網(wǎng)漏洞賞金計劃”,向發(fā)現(xiàn)威脅整個互聯(lián)網(wǎng)穩(wěn)定性的安全漏洞的黑客支付巨額現(xiàn)金獎勵。此外,微軟、谷歌、Facebook等也相繼建立了全年開放的漏洞賞金機制。
隨著網(wǎng)絡(luò)安全形勢愈加嚴(yán)峻,威脅本身的復(fù)雜性漸次升級,諸如谷歌、微軟這樣的私人機構(gòu)愿意為此支付更高的漏洞賞金,同時,越來越多的公共機構(gòu)也開始關(guān)注到漏洞賞金機制對防范網(wǎng)絡(luò)安全風(fēng)險的正面意義。
2016年4月16日,美國國防部與漏洞賞金平臺HackerOne合作,啟動了美國政府的第一個漏洞賞金計劃“Hack the Pentagon”,用于報告面向公眾的系統(tǒng)和應(yīng)用程序中的漏洞。短短一個月間,美國國防部為138份漏洞報告支付了7萬多美金的賞金。這一舉動無疑為更多的行業(yè)企業(yè)考慮漏洞賞金計劃釋放出了積極的信號。
水漲船高的行情
設(shè)置漏洞賞金本來無可厚非。
我們?nèi)粘9ぷ髦惺褂煤徒佑|到的軟件和服務(wù)都是由人類編寫的,即使軟件本身沒有太大問題,但開發(fā)人員不可能預(yù)見到每一種可能性。在新的漏洞路徑被發(fā)現(xiàn)之前,我們能看到的都只是冰山一角。何況利益的誘惑永遠(yuǎn)是巨大的,不知名的“互聯(lián)網(wǎng)刺客”總在暗處窺視著每一個可能的漏洞,并為此不斷升級著威脅“武器”。
因此需要漏洞賞金計劃,聚眾之力來防患于未然。當(dāng)越來越多的企業(yè)和機構(gòu)愿意為高危漏洞設(shè)置賞金時,賞金的行情也一路水漲船高。漏洞賞金平臺HackerOne的數(shù)據(jù)顯示,一個嚴(yán)重漏洞的中位價值從2020年的2500美元上漲到了3000美元,而嚴(yán)重錯誤的平均賞金增加了13%,高嚴(yán)重錯誤的平均賞金增加了30%。
今年2月,白帽黑客Jay Freeman發(fā)現(xiàn)了Optimism上的一個編碼漏洞。這個漏洞如果被利用,攻擊者可以無限復(fù)制以太幣,進而造成無法估量的損失。幸而漏洞被Freeman及時發(fā)現(xiàn)并通知了以太坊,漏洞被修復(fù)之后,這位白帽黑客獲得了200萬美元的獎勵。
這一獎勵高嗎?高。值嗎?不僅值,而且遠(yuǎn)遠(yuǎn)的物超所值。
貌似共贏模式下的陰影
表面看來,漏洞賞金計劃是典型的雙贏模式,但實際上,圍繞漏洞賞金計劃的爭議并不少見。
主要矛盾之一在于賞金設(shè)置無標(biāo)準(zhǔn),浮動均由企業(yè)主導(dǎo),研究人員的權(quán)益得不到保障。自2020年開始,就有研究人員指出,微軟正在大幅削減漏洞賞金的金額,最多的甚至縮水了90%。2021年11月,一位安全研究員就因微軟克扣自己應(yīng)得的漏洞賞金,公開了一個影響廣泛的系統(tǒng)權(quán)限漏洞。
破解了WannaCry的傳奇黑客馬庫斯·哈欽斯曾公開表示對微軟漏洞賞金的不滿,并在其博文中提出了一個靈魂拷問:“你愿意以100萬美元的價格將你的漏洞賣給政府,還是以低于最低工資的價格將其交給微軟?”
這種“搖擺”的懸賞方式也導(dǎo)致在今年微軟提高對高影響漏洞的懸賞力度后,有用戶馬上質(zhì)疑是不是微軟現(xiàn)在面對高危漏洞已經(jīng)力不從心,才需要依靠用戶完成對Bug的檢查工作。由此看來,失衡的利益天平背后是合作雙方信任基石的岌岌可危。
另外一個容易引起擔(dān)憂的問題是監(jiān)守自盜。今年7月,外媒披露了一則消息,HackerOne的一名員工竊取了通過漏洞賞金平臺提交的漏洞報告,并將其泄露給受影響的客戶以牟取利益。
經(jīng)調(diào)查,該員工是為眾多客戶項目分類漏洞披露的工作人員之一,自4月4日至6月23日以來訪問了該平臺,并聯(lián)系到了7名受影響客戶,通過化名進行威脅和恐嚇,并成功收到了賞金。
雖然HackerOne很快解雇了這名員工,但這起事件也踩在了人們的隱憂上:如果你能掌握某個至關(guān)重要的bug,你更愿意提交bug修復(fù)漏洞來獲得公司“獎勵”呢,還是利用bug直接“通吃”?當(dāng)利益足夠大時,人性或許并不那么經(jīng)得起考驗。
你考慮成為漏洞獵手嗎
原則上,誰發(fā)現(xiàn)漏洞并不重要,重要的是公司掌握它并在問題爆發(fā)前解決問題。在實踐中,漏洞賞金通常由專業(yè)安全研究人員獲取。這些專家找出bug后,要么獲得報酬,要么為公司進行滲透測試。
而除了專業(yè)的安全研究人員之外,成為漏洞獵手的人通常各有各的專長,也各有各的動機。有人想多賺點錢,有人想建立名聲,還有些人或許只是興趣使然。如果你正在考慮或嘗試成為一名漏洞獵手,那么可以先了解以下幾點:
1、選擇靠譜的廠商或平臺。這是你一切的努力不打水漂的前提。
2、設(shè)定合適的目標(biāo)。打個比方,如果你以賺取賞金為目的,那么根據(jù)漏洞的嚴(yán)重程度以及其所在項目的影響力,不同漏洞的獎勵數(shù)額會有很大差異。另外,大公司往往在安全方面有更多預(yù)算,小型企業(yè)或初創(chuàng)公司的出手可能就沒有那么寬裕,事先了解這一點更有利于設(shè)置合理的預(yù)期。
3、讓你提交的漏洞更容易被認(rèn)同。仔細(xì)揣摩一下公司設(shè)置問題提交的模式和賞金支付的流程,通常來說,正確的、符合規(guī)則的格式更能讓你提交的漏洞報告清晰、明了、更易接受。
4、如果你是個新入門的玩家,那么不妨從免費項目開始鍛煉對于漏洞的“觸覺”,這會讓你更快摸索出經(jīng)驗和自己擅長的領(lǐng)域。
5、世界上不乏獲得巨額賞金的案例,但那往往是百萬分之一。如果你想以漏洞賞金謀生,那么你更有可能從通過滲透測試出現(xiàn)的常見小漏洞中獲得穩(wěn)定收入。
參考鏈接:
https://www.oschina.net/news/208582/googles-open-source-bug-bounty-program
https://www.theregister.com/2022/08/30/google_open_source_bug_bounty
https://www.theregister.com/2022/08/12/microsoft_bug_bounty
https://baijiahao.baidu.com/s?id=1732488474142803145
https://www.bleepingcomputer.com/news/security/rogue-hackerone-employee-steals-bug-reports-to-sell-on-the-side/
https://blog.csdn.net/weixin_26636643/article/details/108497096