微軟、華為海思、高通等 50 家公司原始碼被泄露

csdn 發佈 2020-07-30T14:07:24+00:00

而追根溯源,這或許今年 5 月份任天堂遭到史上最大規模的黑客攻擊有關,本次泄露的原始碼包含了 Super NES、Game Boy 和 N64 平台的 Mario、Mario Kart、Zelda、F-Zero 等遊戲的可編譯代碼和素材。

一個木桶的盛水量,是由最短的那塊板決定的。在安全領域,什麼才是那條短板?亦或是人,亦或是工具。

整理 | 屠敏

出品 | CSDN(ID:CSDNnews)

一場場代碼泄露事件的發生將安全問題再次推進大眾視野中,而安全向來無小事。

近日,知名遊戲廠商任天堂被爆大批遊戲的原始碼遭到泄露,對此,業界甚至以「Gigaleak」一詞形容其泄露的代碼量之大。而追根溯源,這或許今年 5 月份任天堂遭到史上最大規模的黑客攻擊有關,本次泄露的原始碼包含了 Super NES、Game Boy 和 N64 平台的 Mario、Mario Kart、Zelda、F-Zero 等遊戲的可編譯代碼和素材。這些代碼中還隱藏著許多從未發布過的預發行遊戲藝術和聲音文件,以及一些遊戲的完全可玩的原型版本。對此,任天堂拒絕置評,不過,泄露的巨大規模及代碼的複雜性暗示了該事件的真實性。

然而,一波未平一波又起,在安全領域,繼任天堂之後,據外媒報導,全球有超過 50 家企業的原始碼遭到泄露,其中覆蓋科技、金融、零售、食品、電子商務、製造業等領域,涉及微軟、Adobe、聯想、AMD、Qualcomm、摩托羅拉、華為海思、聯發科技、GE等諸多知名公司。值得注意的是,與任天堂遭到黑客攻擊的泄露方式有所不同,這些企業的原始碼泄露部分原因或源於技術設施配置操作不正確引起。

大批原始碼被公開在 GitLab 上

據外媒 Bleeping Computer 報導,相關的漏洞是由一位名為 Tillie Kottmann 的瑞士軟體開發者兼逆向工程師收集完成的,他通過各種現有的第三方來源以及從配置錯誤的 DevOps 應用程式中積累了大量的原始碼,並將這些漏洞以「機密」和「機密/專有」的名稱發布在任何人都可以訪問的 GitLab 存儲庫中。

目前從 Kottmann 的伺服器中可以看到,部分代碼來自金融科技公司(Fiserv、Buczy Payments、Mercury 貿易融資解決方案)、銀行(Banca Nazionale del Lavoro)、身份和訪問管理開發人員(Pirean Access:One)和遊戲。

對此,Kottmann 表示,他們在易於訪問的代碼存儲庫中找到了硬編碼的憑證,同時,在發布原始碼之前,他們試圖儘可能地刪除這些憑據,以防止對相關的企業帶來直接傷害,避免造成任何更大的安全漏洞及攻擊。

硬編碼憑證是創建後門的一種流行方式。硬編碼憑證通常在配置文件和帳戶枚舉命令輸出中不可見,並且無法輕鬆更改(無需從源重建,如果源可用或逆向工程,二進位修改和完整性檢查(數字簽名,防篡改)和反作弊)旁路(可以通過EULA禁止)。

不過,Kottmann 也承認,在發布原始碼之前,他並不是和所有受影響的公司都有聯繫,同時其也努力將發布所產生的負面影響降至最低。至於是否有其他人參與這個項目,他們也不清楚。

截止目前,Tillie Kottmann 在接受外媒採訪時表示,因為不安全的 DevOps 應用程式導致公司專有信息暴露,他已經撤回原始碼。

而一位專注於銀行威脅和欺詐的匿名安全研究人員 @Bank_Security 透露,「來自 50 多家公司相關的原始碼已泄露並發布在公共存儲庫中。在某些情況下,存在硬編碼的憑據。」

與此同時,他們在 Pastebin(https://pastebin.com/aAnaLgS8)上發布了受影響公司的列表:

安全問題仍然存在

在安全層面,Tillie Kottmann 表示,他們願意遵守撤銷原始碼上線的請求,也樂意提供信息,用以加強相關公司基礎設施的安全性。

不過,從收到的 DMCA 通知數量(估計最多 7 份)和來自法律或其他企業代表的直接聯繫來看,許多公司可能不知道該泄漏的存在。

同時也有一些原始碼被公開的企業懶得去刪除或修復。據外媒報導,在一個實例中,有一家公司的幾位開發者只想知道 Kottmann 是如何得到代碼的,而並沒有要求將原始碼下線。

原始碼泄露的背後

從 Kottmann 在 GitLab 伺服器上公布的部分代碼顯示,我們發現一些項目是由其原始開發者公開的,亦或是上一次該項目的更新早已是很久以前的事情。

不過,Kottmann 表示,仍有不少公司使用錯誤配置的 Devops 工具公開原始碼。此外,他們也正仍在研究及探索運行著 SonarQube 的伺服器,SonarQube 是一個用於自動代碼審核和靜態分析的開源平台,以發現 Bug 和安全漏洞。Kottmann 認為,目前有成千上萬的公司由於未能正確使用及防護 SonarQube 而導致自己的私有代碼泄露。

除此之外,在深入研究原始碼泄露事件時,Synopsys 網絡安全研究中心首席安全策略師 Tim Mackey 表示:「 DevOps、DevSecOps 和 Configuration as Code,僅舉幾個較為流行的術語,它們都有一個共同特點,即這些工具都將源和潛在的配置信息存儲在代碼存儲庫中。許多存儲庫中使用的基礎技術旨在促進分布式團隊之間的協作,這些在開源社區中很常見。」

對此,Tim Mackey 進一步解釋道,為了避免泄露關鍵信息,開發者需要對代碼存儲庫的使用進行適當地管理。他表示,:「例如,開發一套 QA 測試工具,相關的開發者可能會將他們的代碼放在存儲庫中。如果該代碼作為原型,那麼他們在正確管理密碼或訪問令牌之類的機密信息時,可能不會採取預防措施。如果員工在發布其原型代碼時採取捷徑,而相關員工和公司老闆的身份是已知的(例如通過LinkedIn),並且可以映射到一個存儲庫(例如 GitHub),那麼黑客就可以發起有針對性的攻擊以尋找錯誤的判斷。」

基於以上,也有不少網友擔心泄露的代碼會被用於不正規的用途,而其會帶來的後果也正如安全專家對《Tom's Guide》所述,「失去對網際網路原始碼的控制就像是將銀行的藍圖交給搶劫犯一樣。」

針對這一觀點,眾人看法不一。網絡安全公司 ImmuniWeb 的創始人兼執行長 Ilia Kolochenko 表示:「從技術角度來看,這些泄漏並不是那麼嚴重。除非你擁有其他技術,而且具備複雜系統正常運行的人員的權限,否則大多數原始碼都是毫無價值。而且,原始碼如果沒有每天的支持與疊代會迅速失效。因此,不道德的競爭者不太可能從中獲得很大的價值,除非他們正在尋找非常特定的軟體。」

對此,你怎麼看?

參考:https://www.bleepingcomputer.com/news/security/source-code-from-dozens-of-companies-leaked-online/

https://siliconangle.com/2020/07/27/source-code-dozens-companies-including-nintendo-microsoft-adobe-published-online/

關鍵字: