轉載地址:https://www.52pojie.cn/thread-864849-1-1.html?tdsourcetag=s_pctim_aiomsghtml
原由是同窗過年期間因阿里雲的服務器Redis弱口令(好像是沒設密碼)被提權植入了挖礦病毒,CPU長期佔用100%。登陸服務器後,首先使用Top命令,查看CPU佔用。
shell
發現CPU佔用率達到100%,但是卻沒有相關佔用高的進程。想用apt安裝一些軟件,來協助查毒,結果所有報錯,(後證實確實是病毒搞的鬼,清完畢後,apt就能正常使用了)
服務器
遂決定手動查毒試一試。進入bin目錄按照時間排序就發現了修改時間爲19年2月8日的khugrepaged。正好是CPU第一次100%那天,阿里雲發出警告的那天。
ssh
將他下載下來,經過VT查詢,發現有多家報毒CoinMiner。使用IDA或Strings者提取字符串,發現有UPX殼,在本機經過upx -d命令進行脫殼。脫殼後再次提取字符串。
ide
發現了大量相似XMR(門羅幣縮寫),礦池相關的字符串,無疑就是挖礦軟件了。可是刪除重啓後,仍是會被二次建立。
這時可使用相似
函數
find ./ -mtime +20 -a -mtime -50 -type f
這樣的命令,查看某個時間段內有哪些文件被修改過。(可是我這裏沒有用這種方式。)
其實,會被二次建立徹底是情理之中。由於通常挖礦軟件都是開源程序,病毒只是給與他特定的參數爲病毒做者挖礦。
這時我首先想到去查看有無定時任務,經過crontab -l查看全部的定時任務。
阿里雲
經過crontab -r刪除全部定時任務。將定時任務中出現的2.jpg下載下來,發現實際上是shell腳本。部份內容以下:url
該腳本的基本功能是關閉並刪除其餘的挖礦軟件和病毒(對的,這個病毒還幫你殺毒23333)而後經過 hxxp://166.78.155.151/164 下載挖礦軟件並運行。
而後喜聞樂見,刪除重啓後,仍是再次生成了。這時,我考慮先下手解決進程隱藏的問題。經過查閱一些資料。發現不少病毒會對 /etc/ld.so.preload 作手腳以達到提早運行的目的。
查看該文件。
spa
咱們嘗試刪除 ld.so.preload。提示權限不足。
orm
活學活用,在2.jpg的腳本用,看到了大量的chattr -i以及chattr +i的命令,嘗試使用 chattr -i ld.so.preload,再進行rm操做就能夠成功刪除了。同理其餘刪除不掉的病毒文件。
ld.so.preload文件指向了/usr/local/lib/libftp.so。將libftp.so 拷貝出來後刪除。
再嘗試運行top命令,發現已經能夠正常顯示了。能夠看到khugrepaged佔了98%的CPU。
將libftp.so上傳VT,報毒Processhider。很貼切的名字。對其進行簡單的逆向分析。發現其Hook了readdir函數。而且發現了三個好玩的字符串。
khugrepaged是咱們知道的挖礦程序,那麼剩下兩個呢。
經過 ps -aux| grep mdmisc 和 ps -aux| grep scsitgtd
看到了這兩個文件的所在位置。使用 ls -al 列出隱藏文件。將mdmisc拷貝後刪除。可是scsitgtd,bin目錄下並無找到。
咱們先對mdmisc進行簡單分析。字符串提取。
基本能夠肯定,khugrepaged就是他釋放出來的。而後還修改了DNS等等的操做。
其中的一串命令以下
chattr -i /etc/init.d/mdmisc;rm -f /etc/init.d/mdmisc /etc/rc2.d/S20mdmisc/etc/rc3.d/S20mdmisc /etc/rc4.d/S20mdmisc /etc/rc5.d/S20mdmisc;
查看其中的一個內容以下:
這個是用來啓動mdmisc的。把這裏相關的文件也進行刪除。
真正讓人值得注意的是
chmod +x /bin/scsitgtd; /bin/scsitgtd; rm -f /bin/scsitgtd;
這句話。修改成可執行,運行後刪除,這也就是爲何咱們能夠在進程中看到他,可是不能找到他的緣由了。
對這個字符串作交叉引用,看是從哪裏下載下來的。
能夠看到是經過yxarsh.shop/165下載的。
咱們請求一下,果真下載到了。upx脫殼後,IDA打開。
這是添加定時任務的代碼邏輯:
主要功能邏輯:
剩下的就是把相關操做逆操做回來就行了。其實把這幾個文件刪了以後也就沒什麼大問題了。