JFrog和Docker在近期發(fā)現(xiàn)Docker Hub存儲(chǔ)庫(kù)被用于傳播惡意軟件和網(wǎng)絡(luò)釣魚(yú)詐騙后,聯(lián)手采取緩解和清理措施。
作者:安全研究員AndreyPolkovnichenko|惡意軟件研究團(tuán)隊(duì)負(fù)責(zé)人BrianMoussalli|安全研究高級(jí)總監(jiān)ShacharMenashe
作為軟件生態(tài)系統(tǒng)的重要組成部分兼合作伙伴,JFrog與Docker正在攜手優(yōu)化軟件生態(tài)系統(tǒng)。JFrog安全研究團(tuán)隊(duì)的工作包括通過(guò)持續(xù)監(jiān)控開(kāi)源軟件注冊(cè)表,主動(dòng)識(shí)別和解決潛在的惡意軟件與漏洞威脅。
通過(guò)持續(xù)掃描所有主要公共存儲(chǔ)庫(kù),JFrog在NPM、PyPI和NuGet注冊(cè)表中發(fā)現(xiàn)數(shù)個(gè)惡意軟件包。在本文中,我們將介紹最近發(fā)現(xiàn)的針對(duì)Docker Hub的三個(gè)大規(guī)模惡意軟件攻擊活動(dòng),這些活動(dòng)將數(shù)百萬(wàn)個(gè)“無(wú)鏡像”存儲(chǔ)庫(kù)植入到惡意元數(shù)據(jù)。研究發(fā)現(xiàn),這些存儲(chǔ)庫(kù)包含的并非容器鏡像(因此無(wú)法在Docker引擎或Kubernetes集群中運(yùn)行),而是惡意元數(shù)據(jù)。
DockerHub是一個(gè)為開(kāi)發(fā)者提供多樣化功能的平臺(tái),它為Docker鏡像的開(kāi)發(fā)、協(xié)作和分發(fā)開(kāi)辟了許多可能性。目前,它是全球開(kāi)發(fā)者首選的頭號(hào)容器平臺(tái),托管著超過(guò)1500萬(wàn)個(gè)存儲(chǔ)庫(kù)。
然而,這些公共存儲(chǔ)庫(kù)的內(nèi)容卻出現(xiàn)了一個(gè)重大問(wèn)題。JFrog研究顯示,這些公共存儲(chǔ)庫(kù)中有近20%(近300萬(wàn)個(gè)存儲(chǔ)庫(kù)!)托管過(guò)惡意內(nèi)容,包括通過(guò)自動(dòng)生成的賬戶上傳的用于推廣盜版內(nèi)容的垃圾郵件,以及惡意軟件和釣魚(yú)網(wǎng)站等極度惡意的實(shí)體。
雖然Docker Hub維護(hù)者目前對(duì)許多上傳的存儲(chǔ)庫(kù)進(jìn)行了管理,并且在披露后已經(jīng)下架有隱患的存儲(chǔ)庫(kù),但這些攻擊表明,要想完全阻止惡意上傳的難度巨大。
是什么導(dǎo)致了這次攻擊?
Docker Hub是Docker用于托管和分發(fā)鏡像的云端注冊(cè)服務(wù)。其核心概念是一個(gè)存儲(chǔ)庫(kù),其中包含建立在容器數(shù)據(jù)基礎(chǔ)上的文本描述和元數(shù)據(jù)。
Docker Hub的存儲(chǔ)庫(kù)
雖然Docker存儲(chǔ)庫(kù)的核心功能是保存Docker鏡像的集合(一種可以通過(guò)固定名稱更新和訪問(wèn)的應(yīng)用程序),但Docker Hub引入了幾項(xiàng)關(guān)鍵的增強(qiáng)功能,其中最重要的是社區(qū)功能。
對(duì)于公共存儲(chǔ)庫(kù)來(lái)說(shuō),Docker Hub充當(dāng)著一個(gè)社區(qū)平臺(tái)的角色。用戶可以通過(guò)它搜索和發(fā)現(xiàn)可能對(duì)其項(xiàng)目有用的鏡像,可以對(duì)存儲(chǔ)庫(kù)進(jìn)行評(píng)分和評(píng)論,幫助他人衡量可用鏡像的可靠性和實(shí)用性。
為幫助用戶搜索和使用鏡像,Docker Hub允許存儲(chǔ)庫(kù)維護(hù)者添加HTML格式的簡(jiǎn)短描述和文檔,這些描述和文檔將顯示在庫(kù)的主頁(yè)上。庫(kù)文檔通常用于解釋鏡像的用途并提供使用指南。
合法存儲(chǔ)庫(kù)文檔示例
但如果以墨菲定律的角度來(lái)看,在網(wǎng)絡(luò)安全領(lǐng)域,如果惡意軟件開(kāi)發(fā)者可以利用某些漏洞,那么它將無(wú)法避免這一隱患。
JFrog的安全研究團(tuán)隊(duì)發(fā)現(xiàn),Docker Hub中約有460萬(wàn)個(gè)存儲(chǔ)庫(kù)是沒(méi)有鏡像的,除了存儲(chǔ)庫(kù)的文檔外沒(méi)有任何內(nèi)容。深入檢查后發(fā)現(xiàn),這些被上傳的無(wú)鏡像存儲(chǔ)庫(kù),絕大多數(shù)都是帶著惡意目的——它們的概述頁(yè)面試圖欺騙用戶訪問(wèn)釣魚(yú)網(wǎng)站或托管著危險(xiǎn)惡意軟件的網(wǎng)站。
在討論各種惡意載荷之前,我們將先一步說(shuō)明發(fā)現(xiàn)這些惡意存儲(chǔ)庫(kù)的方法。
識(shí)別惡意存儲(chǔ)庫(kù)
JFrog首先從Docker Hub存儲(chǔ)庫(kù)的發(fā)布模式中發(fā)現(xiàn)了異常。為此,我們調(diào)出了過(guò)去五年中發(fā)布的所有“無(wú)鏡像”Docker Hub存儲(chǔ)庫(kù),按創(chuàng)建日期進(jìn)行分組,并將其繪制成圖表:
每月存儲(chǔ)庫(kù)創(chuàng)建圖
正如所見(jiàn),Docker Hub上的活動(dòng)軌跡通常比較平穩(wěn),但2021年和2023年出現(xiàn)了幾個(gè)峰值。如果放大觀察,就會(huì)發(fā)現(xiàn)每天的活動(dòng)都很明確并且與常規(guī)工作日時(shí)間吻合。甚至在視覺(jué)上,就能注意到工作日創(chuàng)建的存儲(chǔ)庫(kù)較多,而周末創(chuàng)建的存儲(chǔ)庫(kù)較少。
放大觀察2023年的異常情況
從圖中可以看出,當(dāng)異常活動(dòng)開(kāi)始時(shí),每天創(chuàng)建的存儲(chǔ)庫(kù)數(shù)量會(huì)翻十倍
通過(guò)深入分析在異常日創(chuàng)建的存儲(chǔ)庫(kù),發(fā)現(xiàn)許多存儲(chǔ)庫(kù)偏離常規(guī)。主要的偏差在于它們不包含容器鏡像,只包含一個(gè)文檔頁(yè)面,這就導(dǎo)致該庫(kù)不能像正常的docker鏡像那樣被拉取和運(yùn)行,從而無(wú)法使用。
惡意存儲(chǔ)庫(kù)示例
例如,上述截圖中顯示的存儲(chǔ)庫(kù)在描述中包含了幾個(gè)鏈接,引導(dǎo)用戶訪問(wèn)一個(gè)釣魚(yú)網(wǎng)站。該網(wǎng)站欺騙毫無(wú)戒心的訪問(wèn)者,承諾為他們購(gòu)買(mǎi)處方藥,但隨后卻竊取他們的信用卡信息。
雖然所有異常存儲(chǔ)庫(kù)之間存在一定的差異,而且是由不同用戶發(fā)布,但大多數(shù)都遵循相同的模式。這使我們能夠創(chuàng)建一個(gè)簽名,并按系列(或活動(dòng))對(duì)其進(jìn)行分組。在對(duì)所有無(wú)鏡像存儲(chǔ)庫(kù)應(yīng)用這一簽名后,我們采集了發(fā)布這些存儲(chǔ)庫(kù)的中心用戶列表,將這些用戶發(fā)布的所有存儲(chǔ)庫(kù)也歸類為惡意軟件。
在將這些活動(dòng)繪制在時(shí)間軸上后,能夠清晰地了解規(guī)模最大的惡意軟件攻擊活動(dòng)的運(yùn)作時(shí)期。
其中兩個(gè)活動(dòng)在2021年上半年最為活躍,每天發(fā)布數(shù)千個(gè)存儲(chǔ)庫(kù)。下載器活動(dòng)在2023年8月又進(jìn)行了一次嘗試。網(wǎng)站SEO活動(dòng)的運(yùn)作方式與之不同,三年來(lái)始終堅(jiān)持每天推送少量存儲(chǔ)庫(kù)。
每天注冊(cè)的惡意存儲(chǔ)庫(kù)(按活動(dòng))
在DockerCon 2023召開(kāi)時(shí),Docker Hub已包含1500萬(wàn)個(gè)存儲(chǔ)庫(kù),因此我們將使用這個(gè)數(shù)字作為Docker Hub存儲(chǔ)庫(kù)的基準(zhǔn)總數(shù)。
發(fā)布到Docker Hub的無(wú)鏡像存儲(chǔ)庫(kù)總數(shù)為460萬(wàn),占所有公共存儲(chǔ)庫(kù)的30%。我們能夠?qū)⑵渲械?81萬(wàn)個(gè)(約占19%)存儲(chǔ)庫(kù)與這些大型惡意攻擊活動(dòng)聯(lián)系起來(lái)。
除了已發(fā)現(xiàn)的大型活動(dòng)外,在分析中還發(fā)現(xiàn)了一些較小的存儲(chǔ)庫(kù)。這些活動(dòng)似乎主要集中在垃圾郵件/搜索引擎優(yōu)化方面,暫時(shí)無(wú)法對(duì)這些活動(dòng)的所有變化形態(tài)進(jìn)行分類。這些較小的“活動(dòng)”每個(gè)包含不到1000個(gè)軟件包。在分類時(shí),我們將這些較小的數(shù)據(jù)集歸入了一個(gè)標(biāo)有“其他可疑”的組別。
DockerHub存儲(chǔ)庫(kù)分類
惡意存儲(chǔ)庫(kù)鏡像分布(按活動(dòng)):
由此可以總結(jié)出惡意存儲(chǔ)庫(kù)有不同的傳播方式。“下載器”和“電子書(shū)釣魚(yú)”活動(dòng)會(huì)在短時(shí)間內(nèi)分批創(chuàng)建虛假存儲(chǔ)庫(kù),而“網(wǎng)站SEO”活動(dòng)則會(huì)在整個(gè)時(shí)間段內(nèi)每天創(chuàng)建多個(gè)存儲(chǔ)庫(kù),并在每個(gè)存儲(chǔ)庫(kù)中使用單個(gè)用戶。
現(xiàn)在,通過(guò)了解在Docker Hub上運(yùn)行的主要惡意軟件活動(dòng),接下來(lái)將深入回顧一下它們的策略和手段。
1.“下載器”活動(dòng)
2.“電子書(shū)釣魚(yú)”活動(dòng)
3.“網(wǎng)站SEO”活動(dòng)
Docker Hub惡意軟件活動(dòng)分析
1.“下載器”活動(dòng)
下載器活動(dòng)存儲(chǔ)庫(kù)分布
屬于該活動(dòng)的存儲(chǔ)庫(kù)包含自動(dòng)生成的文本,這些文本含有搜索引擎優(yōu)化(SEO)文本,會(huì)建議下載盜版內(nèi)容或視頻游戲作弊器。此外,這些文本還包括所謂“廣告軟件”的鏈接。
該活動(dòng)分兩輪進(jìn)行(約2021年和2023年),兩輪都使用了完全相同的惡意載荷(見(jiàn)以下分析)。
帶有惡意軟件下載鏈接的惡意存儲(chǔ)庫(kù)示例
2021年活動(dòng)——偽裝成URL縮短器的惡意域
該活動(dòng)中使用的大多數(shù)URL都假裝使用已知的URL縮短器(例如tinyurl.com),這與2021年發(fā)現(xiàn)的谷歌廣告攻擊活動(dòng)類似。嘗試解析后發(fā)現(xiàn),不同于真正的縮短器,這些惡意縮短器實(shí)際上并不對(duì)URL進(jìn)行編碼。相反,它們會(huì)對(duì)文件名進(jìn)行編碼,并在每次關(guān)閉惡意資源時(shí)將鏈接解析到不同的域。
例如在我們調(diào)查期間,URL blltly[.]com/1w1w1被重定向到https[://]failhostingpolp[.]ru/9ebeb1ba574fb8e786200c62159e77d15UtXt7/x60VKb8hl1YelOv1c5X1c0BuVzmFZ8-teb-LRH8w。但該服務(wù)器每次收到后續(xù)請(qǐng)求,都會(huì)觸發(fā)生成一個(gè)新的URL路徑。
其唯一目的就是充當(dāng)惡意CDN的代理。
同一縮短鏈接每次收到后續(xù)請(qǐng)求都會(huì)帶來(lái)不同的URL,并且如果托管惡意文件的服務(wù)器被關(guān)閉,縮短器將返回一個(gè)指向新活動(dòng)服務(wù)器的鏈接。
我們收集了所有惡意域的列表,并編制了一個(gè)表格,顯示欺詐性縮短器與其真實(shí)可信版本之間的對(duì)應(yīng)關(guān)系。
惡意軟件活動(dòng)使用的偽造網(wǎng)址縮短器
該策略于2021年制定,在反病毒公司發(fā)現(xiàn)鏈接列表并將其添加到黑名單之前,它曾短暫的起過(guò)一段時(shí)間的作用。目前,當(dāng)有人試圖訪問(wèn)上表中的鏈接時(shí),瀏覽器和服務(wù)提供商會(huì)發(fā)出警報(bào)。
2023年活動(dòng)——加強(qiáng)型反檢測(cè)技術(shù)
第二輪活動(dòng)發(fā)生在2023年,主要側(cè)重于避免被檢測(cè)。惡意存儲(chǔ)庫(kù)不再直接鏈接到惡意資源,而是將合法資源重定向到惡意資源。
在這些資源中有一個(gè)托管在blogger.com上的頁(yè)面,其中包含的JavaScript代碼會(huì)在500毫秒后重定向到惡意載荷:
另一種方法是谷歌中一個(gè)著名的開(kāi)放式重定向漏洞,惡意行為者可以使用特定參數(shù)將用戶重定向到帶有合法Google鏈接的惡意網(wǎng)站。
通常情況下,Google鏈接https://www[.]google[.]com/url?q=https%3A%2F%2Fexample.us%2F不會(huì)將用戶重定向到目標(biāo)網(wǎng)站。相反,它會(huì)顯示一個(gè)警告,提示用戶正被重定向到另一個(gè)域。
重定向提示示例
不過(guò),可以通過(guò)添加非法參數(shù)usg來(lái)禁用此警告。該參數(shù)包含一個(gè)散列值或簽名,可使google.com自動(dòng)重定向到目標(biāo)網(wǎng)站。
該重定向指向目標(biāo)網(wǎng)站。在編撰本報(bào)告時(shí),目標(biāo)網(wǎng)站是gts794[.]com和failhostingpolp[.]ru。這些網(wǎng)站誘使受害者下載廣告軟件。但無(wú)論登陸頁(yè)面上的名稱如何,下載的文件始終是同一個(gè)帶有EXE安裝程序的壓縮包。正如我們?cè)贏nyRun分析中看到的,惡意軟件會(huì)將名為freehtmlvalidator.exe的二進(jìn)制文件安裝到“%LOCALAPPDATA%HTML Free Validator”目錄中。
下載器活動(dòng)中的惡意載荷
“下載器”活動(dòng)載荷分析
“下載器”活動(dòng)的載荷是一個(gè)惡意可執(zhí)行文件,大多數(shù)殺毒引擎將其檢測(cè)為普通木馬。
殺毒檢測(cè)服務(wù)載荷
該惡意軟件是用曾經(jīng)風(fēng)靡一時(shí)的Delphi環(huán)境的后繼版本Embarcadero RAD Studio 27.0編寫(xiě)的:
該惡意軟件使用HTTP POST請(qǐng)求與C2C服務(wù)器http://soneservice[.]shop/new/net_api通信。該請(qǐng)求是一條JSON消息,與三字節(jié)密鑰“787”XOR并用十六進(jìn)制編碼。
JSON字段的編碼方式相同,但使用了不同的密鑰:“*2k”。了解到這一點(diǎn)后,我們就可以對(duì)以下請(qǐng)求進(jìn)行解碼
惡意軟件向服務(wù)器發(fā)送的第一條命令是getinitializationdata。它包含兩個(gè)參數(shù):惡意軟件的唯一標(biāo)識(shí)符(“l(fā)id”)和系統(tǒng)語(yǔ)言標(biāo)識(shí)符。后者會(huì)告知服務(wù)器受感染系統(tǒng)的語(yǔ)言設(shè)置,從而實(shí)現(xiàn)定制響應(yīng)。惡意軟件會(huì)在所有后續(xù)服務(wù)器請(qǐng)求中使用這個(gè)唯一標(biāo)識(shí)符。
作為回應(yīng),服務(wù)器會(huì)提供特定于Delphi的布局和本地化細(xì)節(jié),這些細(xì)節(jié)會(huì)根據(jù)系統(tǒng)的語(yǔ)言設(shè)置進(jìn)行適配。
隨后惡意軟件發(fā)送初始化請(qǐng)求,傳遞有關(guān)受感染系統(tǒng)的信息。這些信息包括特定于操作系統(tǒng)的信息、硬件、安裝的瀏覽器、.NET框架版本、運(yùn)行進(jìn)程以及可用的網(wǎng)絡(luò)適配器。服務(wù)器會(huì)返回一個(gè)指向所謂承諾軟件的鏈接和一份offer列表。承諾的軟件部分由URL和文件名表示:
惡意軟件與C2服務(wù)器的通信
該回復(fù)中的“offers”部分也包含一份可執(zhí)行文件鏈接列表。此外,它還概述了下發(fā)可執(zhí)行文件必須滿足的各種條件。最重要的條件有:
lexcludeGeoTargeting包含不應(yīng)安裝惡意軟件的國(guó)家的代碼
lblackAvList包含殺毒應(yīng)用程序的列表,也可以防止惡意軟件被安裝
l進(jìn)程黑名單(樣本中未觀察到)
l目標(biāo)系統(tǒng)上必須存在Windows注冊(cè)表項(xiàng)列表(樣本中未觀察到)
考慮到惡意軟件已經(jīng)向服務(wù)器發(fā)送了系統(tǒng)信息,這些條件在客戶端上略顯多余。此外,響應(yīng)中還包含了二進(jìn)制惡意軟件中從未使用過(guò)的字段,但卻是廣告網(wǎng)絡(luò)的典型字段,如price、offer_id和advertiser_id。從這些字段中,我們可以推測(cè)該惡意軟件操作是更廣泛生態(tài)系統(tǒng)的一部分,可能涉及廣告軟件或變現(xiàn)方案,這些方案從第三方軟件的分發(fā)和安裝中獲益。基于這一認(rèn)識(shí),我們進(jìn)一步假設(shè)這些請(qǐng)求參數(shù)很可能是從可疑的廣告網(wǎng)絡(luò)API復(fù)制并嵌入到軟件中的,第三方可能會(huì)付費(fèi)分發(fā)其可執(zhí)行文件。
處理該響應(yīng)后,惡意軟件會(huì)顯示一個(gè)安裝對(duì)話框,建議用戶下載并安裝惡意Docker Hub存儲(chǔ)庫(kù)中承諾的軟件。
由惡意軟件顯示的安裝對(duì)話框
用戶接受后,除了安裝承諾的軟件外,惡意軟件還會(huì)下載所有惡意二進(jìn)制文件,并通過(guò)命令“SCHTASKS.exe /Create /TN /RL HIGHEST /SC DAILY”安排它們的持續(xù)執(zhí)行。
2.“電子書(shū)釣魚(yú)”活動(dòng)
電子書(shū)釣魚(yú)活動(dòng)每天注冊(cè)的惡意存儲(chǔ)庫(kù)
2021年中期創(chuàng)建的近百萬(wàn)個(gè)存儲(chǔ)庫(kù)將Docker Hub變成了一座“盜版電子書(shū)圖書(shū)館”。這些垃圾郵件存儲(chǔ)庫(kù)均提供免費(fèi)電子書(shū)下載,包含隨機(jī)生成的描述和下載URL。
電子書(shū)釣魚(yú)存儲(chǔ)庫(kù)示例
所有鏈接最終都會(huì)將用戶重定向到同一個(gè)頁(yè)面:http://rd[.]lesac[.]
電子書(shū)下載登陸頁(yè)面
在承諾免費(fèi)提供完整版電子書(shū)后,網(wǎng)站會(huì)從用戶IP可用的頁(yè)面集中隨機(jī)選擇一個(gè)頁(yè)面,并將用戶重定向到該頁(yè)面。接下來(lái)的步驟取決于用戶所在的國(guó)家,但通常會(huì)出現(xiàn)要求用戶輸入信用卡信息的表單。
毫無(wú)疑問(wèn),這一行為背后的唯一意圖就是網(wǎng)絡(luò)釣魚(yú),目的是竊取信用卡詳細(xì)信息,并在用戶不知情的情況下讓其加入訂閱服務(wù)。這些目標(biāo)網(wǎng)站的頁(yè)腳通常有幾乎無(wú)法閱讀的文字,表明訂閱費(fèi)用為每月40-60歐元。
活動(dòng)中的一些釣魚(yú)站點(diǎn)
3.“網(wǎng)站SEO”活動(dòng)
與前兩次公然惡意(網(wǎng)絡(luò)釣魚(yú)/惡意軟件下載)的活動(dòng)不同,這次活動(dòng)的目的并不那么明確。雖然存儲(chǔ)庫(kù)本身顯然不是出于善意上傳的,但其內(nèi)容大多無(wú)害——只是一個(gè)隨機(jī)描述字符串,其用戶名由“axaaaaaxxx”模式生成,其中a是字母,x是數(shù)字。這些用戶發(fā)布的所有存儲(chǔ)庫(kù)都有一個(gè)相同的名稱:網(wǎng)站。
該活動(dòng)可能是實(shí)施真正惡意活動(dòng)之前的某種壓力測(cè)試。
該活動(dòng)的注冊(cè)程序也與眾不同。從以下圖示中我們可以看到,活動(dòng)背后的惡意行為者在三年內(nèi)每天創(chuàng)建了上千個(gè)存儲(chǔ)庫(kù)!這與之前的活動(dòng)不同,之前的活動(dòng)主要是在更短的時(shí)間內(nèi)生成無(wú)鏡像存儲(chǔ)庫(kù)。在這次活動(dòng)中,攻擊者只通過(guò)每個(gè)創(chuàng)建的用戶發(fā)布一個(gè)存儲(chǔ)庫(kù);而在之前的活動(dòng)中,一個(gè)用戶被用于發(fā)布數(shù)千個(gè)存儲(chǔ)庫(kù)。
“網(wǎng)站SEO”活動(dòng)每天注冊(cè)的惡意存儲(chǔ)庫(kù)
在該活動(dòng)中,存儲(chǔ)庫(kù)描述通常包含一個(gè)簡(jiǎn)短、看似隨機(jī)且毫無(wú)意義的短語(yǔ),該短語(yǔ)不包含任何其他信息。
有些存儲(chǔ)庫(kù)包含社交網(wǎng)站鏈接,但這些鏈接似乎也大多包含垃圾信息,而不是惡意URL或文件。
以下是這次活動(dòng)中的一些用戶名,以及存儲(chǔ)庫(kù)文檔中的相關(guān)描述
網(wǎng)站SEO活動(dòng)存儲(chǔ)庫(kù)中的隨機(jī)段落
當(dāng)我們搜索這些用戶名時(shí),我們發(fā)現(xiàn)該活動(dòng)還以其他開(kāi)放貢獻(xiàn)政策的平臺(tái)為目標(biāo)。
在其他平臺(tái)使用的網(wǎng)站SEO活動(dòng)用戶名
向Docker公司披露
在本報(bào)告發(fā)布之前,JFrog研究團(tuán)隊(duì)向Docker安全團(tuán)隊(duì)披露了所有發(fā)現(xiàn),其中包括320萬(wàn)個(gè)疑似托管惡意或多余內(nèi)容的存儲(chǔ)庫(kù)。Docker安全團(tuán)隊(duì)迅速?gòu)腄ocker Hub中刪除了所有惡意和多余的存儲(chǔ)庫(kù)。我們誠(chéng)摯感謝Docker安全團(tuán)隊(duì)迅速而專業(yè)地處理了此次披露的事件,并很高興能為Docker生態(tài)系統(tǒng)的持續(xù)安全使用做出貢獻(xiàn)。
Docker Hub用戶如何避免類似攻擊?
用戶應(yīng)優(yōu)先使用在Docker Hub中標(biāo)記為 “可信內(nèi)容 ”的Docker鏡像。
Docker Hub為受信任的內(nèi)容設(shè)置了特定標(biāo)簽,用戶在瀏覽鏡像描述頁(yè)面時(shí)可以查找這些標(biāo)簽。第一個(gè)標(biāo)簽是官方Docker鏡像標(biāo)簽,也稱為Docker Hub庫(kù),這是一組經(jīng)過(guò)精心挑選的Docker存儲(chǔ)庫(kù)。該庫(kù)包含由受值得信賴的知名軟件開(kāi)發(fā)基金會(huì)、組織和公司維護(hù)的存儲(chǔ)庫(kù),例如Python、Ubuntu和Node。第二個(gè)標(biāo)簽“已驗(yàn)證發(fā)布者”(Verified Publisher)標(biāo)簽,該標(biāo)簽分配給Docker驗(yàn)證發(fā)布者計(jì)劃(Docker Verified Publisher Program)中的每個(gè)存儲(chǔ)庫(kù)。這一組包含來(lái)自商業(yè)發(fā)布者的存儲(chǔ)庫(kù),這些發(fā)布者已通過(guò)Docker Hub的驗(yàn)證。同時(shí),具有Sponsored OSS標(biāo)簽的內(nèi)容,則是由Docker Hub贊助的開(kāi)源項(xiàng)目存儲(chǔ)庫(kù)。
當(dāng)用戶瀏覽版本庫(kù)頁(yè)面時(shí),頁(yè)面頂部版本庫(kù)名稱旁邊會(huì)出現(xiàn)一個(gè)徽章,表明該版本庫(kù)屬于上述類型之一。
遵循這些準(zhǔn)則將降低從存儲(chǔ)庫(kù)描述頁(yè)面進(jìn)入Docker Hub外部惡意鏈接的風(fēng)險(xiǎn)。本文中提到的惡意存儲(chǔ)庫(kù)沒(méi)有一個(gè)被標(biāo)記為 “可信內(nèi)容”。
總結(jié)
與直接針對(duì)開(kāi)發(fā)者和組織的典型攻擊不同,本案例中的攻擊者試圖利用Docker Hub的平臺(tái)信譽(yù),這使得識(shí)別網(wǎng)絡(luò)釣魚(yú)和惡意軟件安裝意圖的過(guò)程變得更加困難。
近300萬(wàn)個(gè)惡意存儲(chǔ)庫(kù)(其中一些已活躍三年多)凸顯了攻擊者對(duì)Docker Hub平臺(tái)的持續(xù)濫用,以及對(duì)此類平臺(tái)進(jìn)行持續(xù)監(jiān)控的必要性。
審核編輯 黃宇
-
監(jiān)控
+關(guān)注
關(guān)注
6文章
2172瀏覽量
55094 -
URL
+關(guān)注
關(guān)注
0文章
139瀏覽量
15311 -
開(kāi)發(fā)者
+關(guān)注
關(guān)注
1文章
553瀏覽量
16989
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論