新聞中心
01、概述
很多開源組件封裝成容器鏡像進(jìn)行容器化部署在提高應(yīng)用部署效率和管理便捷性的同時(shí),也帶來了一些安全挑戰(zhàn)。一旦開源系統(tǒng)出現(xiàn)安全漏洞,基于資產(chǎn)測繪就很容易關(guān)聯(lián)到開源組件,可能導(dǎo)致被批量利用。

從網(wǎng)站建設(shè)到定制行業(yè)解決方案,為提供成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設(shè)服務(wù)體系,各種行業(yè)企業(yè)客戶提供網(wǎng)站建設(shè)解決方案,助力業(yè)務(wù)快速發(fā)展。成都創(chuàng)新互聯(lián)將不斷加快創(chuàng)新步伐,提供優(yōu)質(zhì)的建站服務(wù)。
在本文中,我們將分享一個(gè)真實(shí)的Docker容器應(yīng)急實(shí)例,涉及到基于開源組件漏洞披露的前后時(shí)間段內(nèi),容器遭遇挖礦程序植入的情況。我們將深入分析排查過程,還原入侵的步驟和手段,幫助讀者了解應(yīng)對挖礦程序入侵的實(shí)際應(yīng)急操作。
02、分析排查
(1)使用top命令查看,發(fā)現(xiàn)kdevtmpfsi進(jìn)程異常,CPU占用率199%。
圖片
(2)通過進(jìn)程PID和USER查看進(jìn)程信息,通過進(jìn)程鏈定位到進(jìn)程所在容器的進(jìn)程PID。
圖片
(3)通過進(jìn)程PID查找對應(yīng)容器名稱,容器名:metabase。
(4)使用docker top 查看容器中的進(jìn)程信息,找到到容器內(nèi)異常進(jìn)程。如下圖:異常進(jìn)程kdevtmpfsi(PID:5613)對應(yīng)的父進(jìn)程為JAVA進(jìn)程(PID:2301)。據(jù)此,可初步判斷,java應(yīng)用被入侵,導(dǎo)致容器被植入挖礦木馬。
圖片
03、溯源分析
(1)使用docker logs查看容器日志,并通過異常信息定義到漏洞觸發(fā)的位置。如下圖:通過POST提交請求,使用wget和curl命令下載挖礦腳本并執(zhí)行。
docker logs metabase
(2)查看運(yùn)行的容器對應(yīng)的鏡像版本,對應(yīng)的鏡像為:metabase:v0.46.4
(3)通過日志信息和鏡像版本,可進(jìn)一步關(guān)聯(lián)近段時(shí)間的威脅情報(bào):開源BI分析工具 Metabase 中存在遠(yuǎn)程代碼執(zhí)行漏洞。
圖片
(4)漏洞復(fù)現(xiàn),通過exp成功執(zhí)行命令,確認(rèn)當(dāng)前使用鏡像存在遠(yuǎn)程命令執(zhí)行漏洞。
圖片
綜上,攻擊者通過利用metabase 遠(yuǎn)程命令執(zhí)行漏洞對暴露在外網(wǎng)上的服務(wù)進(jìn)行攻擊并下載并執(zhí)行挖礦程序。
04、解決問題
(1)保留入侵痕跡,使用docker commit保存為鏡像,可作為demo,用于檢測容器安全產(chǎn)品的能力或其他用途。
docker commit -m "CoinMiner" -a "bypass" b4536a12a341 bypass007/miner:1.0
(2)使用docker diff命令查看容器內(nèi)文件狀態(tài)變化,通過容器內(nèi)文件的變化,可以簡單地窺探攻擊者入侵容器的蛛絲馬跡,做了什么操作,改了哪些系統(tǒng)文件。
docker diff metabase
圖片
(3)通過對shell腳本文件和挖礦樣本進(jìn)行分析,可以了解到更詳細(xì)的行為。部分截圖如下:
圖片
(4)在容器環(huán)境里,容器被入侵的清理比較簡單,不用著急去清理容器內(nèi)的挖礦或是后門,直接刪除容器即可。比較重要的是,根據(jù)定位的漏洞問題進(jìn)行修復(fù),重構(gòu)容器鏡像。在這里,我們可以將metabase鏡像升級到官方提供的最新修復(fù)版本,就可以完成本次容器應(yīng)用漏洞應(yīng)急的處置。
文章題目:Docker容器挖礦應(yīng)急實(shí)例
新聞來源:http://www.dlmjj.cn/article/cceohhh.html


咨詢
建站咨詢
