<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          我的云服務(wù)器被植入挖礦木馬,CPU飆升200%

          共 4673字,需瀏覽 10分鐘

           ·

          2021-10-30 15:13

          原文鏈接:https://bbs.pediy.com/thread-268197.htm


          本文為騰訊安全專家撰寫的《挖礦木馬自助清理手冊(cè)》,可以為政企客戶安全運(yùn)維人員自助排查清理挖礦木馬提供有益參考。


          一、什么是挖礦木馬


          挖礦木馬會(huì)占用CPU進(jìn)行超頻運(yùn)算,從而占用主機(jī)大量的CPU資源,嚴(yán)重影響服務(wù)器上的其他應(yīng)用的正常運(yùn)行。黑客為了得到更多的算力資源,一般都會(huì)對(duì)全網(wǎng)進(jìn)行無差別掃描,同時(shí)利用SSH爆破和漏洞利用等手段攻擊主機(jī)。


          部分挖礦木馬還具備蠕蟲化的特點(diǎn),在主機(jī)被成功入侵之后,挖礦木馬還會(huì)向內(nèi)網(wǎng)滲透,并在被入侵的服務(wù)器上持久化駐留以獲取最大收益。

          挖礦木馬的整體攻擊流程大致如下圖所示:




          二、挖礦木馬中招特征


          挖礦木馬會(huì)在用戶不知情的情況下利用主機(jī)的算力進(jìn)行挖礦,最明顯的特征就是主機(jī)的CPU被大量消耗,查看云主機(jī)CPU占用率的方法有兩種:


          1



          控制臺(tái)實(shí)例監(jiān)控


          2



          主機(jī)執(zhí)行TOP命令

          如下圖所示,通過執(zhí)行top命令,即可在返回結(jié)果中看到當(dāng)時(shí)系統(tǒng)的CPU占用率。

          top -c


          如果云主機(jī)CPU占用率居高不下,那么主機(jī)很有可能已經(jīng)被植入了挖礦木馬,會(huì)影響服務(wù)器上的其他應(yīng)用的正常運(yùn)行,需要立刻上機(jī)排查。

          記一次 Linux 被入侵,服務(wù)器變 “礦機(jī)”~


          三、清理挖礦木馬



          1



          及時(shí)隔離主機(jī)

          部分帶有蠕蟲功能的挖礦木馬在取得主機(jī)的控制權(quán)后,會(huì)繼續(xù)對(duì)公網(wǎng)的其他主機(jī),或者以當(dāng)前主機(jī)作為跳板機(jī)對(duì)同一局域網(wǎng)內(nèi)的其他主機(jī)進(jìn)行橫向滲透,所以在發(fā)現(xiàn)主機(jī)被植入挖礦木馬后,在不影響業(yè)務(wù)正常運(yùn)行的前提下,應(yīng)該及時(shí)隔離受感染的主機(jī),然后進(jìn)行下一步分析和清除工作。


          騰訊云主機(jī)可以通過設(shè)置安全組隔離主機(jī),具體參考如下鏈接:https://cloud.tencent.com/document/product/215/20089


          2




          阻斷異常網(wǎng)絡(luò)通信


          挖礦木馬不僅會(huì)連接礦池,還有可能會(huì)連接黑客的C2服務(wù)器,接收并執(zhí)行C2指令、投遞其他惡意木馬,所以需要及時(shí)進(jìn)行網(wǎng)絡(luò)阻斷。


          (1)檢查主機(jī)防火墻當(dāng)前生效的iptables規(guī)則中是否存在業(yè)務(wù)范圍之外的可疑地址和端口,它們可能是挖礦木馬的礦池或C2地址

          iptables -L -n


          (2)從iptables規(guī)則中清除可疑地址和端口

          vi /etc/sysconfig/iptables


          (3)阻斷挖礦木馬的網(wǎng)絡(luò)通信

          iptables -A INPUT -s 可疑地址 -j DROPiptables -A OUTPUT -d 可疑地址 -j DROP

          3




          清除計(jì)劃任務(wù)


          大部分挖礦木馬會(huì)通過在受感染主機(jī)中寫入計(jì)劃任務(wù)實(shí)現(xiàn)持久化,如果僅僅只是清除挖礦進(jìn)程,無法將其根除,到了預(yù)設(shè)的時(shí)間點(diǎn),系統(tǒng)會(huì)通過計(jì)劃任務(wù)從黑客的C2服務(wù)器重新下載并執(zhí)行挖礦木馬。


          挖礦木馬常見的計(jì)劃任務(wù)通常是下載并執(zhí)行sh腳本,如下圖所示:


          可以通過執(zhí)行如下命令查看是否存在可疑定時(shí)任務(wù),若有,則先保存相關(guān)記錄用于后續(xù)分析,再進(jìn)行刪除:

          查看系統(tǒng)當(dāng)前用戶的計(jì)劃任務(wù):

          crontab -l

          查看系統(tǒng)特定用戶的計(jì)劃任務(wù):

          crontab -u username -l

          查看其他計(jì)劃任務(wù)文件:

          cat /etc/crontabcat /var/spool/croncat /etc/anacrontabcat /etc/cron.d/cat /etc/cron.daily/cat /etc/cron.hourly/cat /etc/cron.weekly/cat /etc/cron.monthly/cat /var/spool/cron/



          4



          清除啟動(dòng)項(xiàng)

          除了計(jì)劃任務(wù),挖礦木馬通過添加啟動(dòng)項(xiàng)同樣能實(shí)現(xiàn)持久化??梢允褂萌缦旅畈榭撮_機(jī)啟動(dòng)項(xiàng)中是否有異常的啟動(dòng)服務(wù)。

          CentOS7以下版本:

          chkconfig –list

          CentOS7及以上版本:

          systemctl list-unit-files

          如果發(fā)現(xiàn)有惡意啟動(dòng)項(xiàng),可以通過如下命令進(jìn)行關(guān)閉:

          CentOS7以下版本:

          chkconfig 服務(wù)名 off

          CentOS7及以上版本:

          systemctl disable 服務(wù)名

          另外,還需要仔細(xì)排查以下目錄及文件,及時(shí)刪除可疑的啟動(dòng)項(xiàng):

          /usr/lib/systemd/system/usr/lib/systemd/system/multi-user.target.wants/etc/rc.local/etc/inittab/etc/rc0.d//etc/rc1.d//etc/rc2.d//etc/rc3.d//etc/rc4.d//etc/rc5.d//etc/rc6.d//etc/rc.d/

          排查的時(shí)候,可以按照文件修改時(shí)間來排序,重點(diǎn)排查近期被創(chuàng)建服務(wù)項(xiàng)。如下圖所示,系統(tǒng)近期被創(chuàng)建了一個(gè)名為bot.service的服務(wù),該服務(wù)在系統(tǒng)啟動(dòng)時(shí)會(huì)啟動(dòng)/etc/kinsing這個(gè)木馬文件,需要關(guān)閉bot服務(wù),并刪除/etc/kinsing文件。



          5




          清除預(yù)加載so


          過配置/etc/ld.so.preload,可以自定義程序運(yùn)行前優(yōu)先加載的動(dòng)態(tài)鏈接庫(kù),部分木馬通過修改該文件,添加惡意so文件,從而實(shí)現(xiàn)挖礦進(jìn)程的隱藏等惡意功能。
          檢查/etc/ld.so.preload(該文件默認(rèn)為空),清除異常的動(dòng)態(tài)鏈接庫(kù)??梢詧?zhí)行`> /etc/ld.so.preload`命令進(jìn)行清除。



          6




          清除SSH公鑰


          挖礦木馬通常還會(huì)在~/.ssh/authoruzed_keys文件中寫入黑客的SSH公鑰,這樣子就算用戶將挖礦木馬清除得一干二凈,黑客還是可以免密登陸該主機(jī),這也是常見的保持服務(wù)器控制權(quán)的手段。

          排查~/.ssh/authorized_keys文件,如果發(fā)現(xiàn)可疑的SSH公鑰,直接刪除。


          7



          清除挖礦木馬

          (1)清除挖礦進(jìn)程

          挖礦木馬最大的特點(diǎn)就是會(huì)在用戶不知情的情況下,利用主機(jī)的算力進(jìn)行挖礦,從而消耗主機(jī)大量的CPU資源,所以,通過執(zhí)行如下命令排查系統(tǒng)中占用大量CPU資源的進(jìn)程。

          top -cps -ef


          確認(rèn)相關(guān)進(jìn)程為挖礦進(jìn)程后,按照如下步驟將其清除:
          獲取并記錄挖礦進(jìn)程的文件路徑:

          ls -l /proc/$PID/exe


          殺死挖礦進(jìn)程:

          kill -9 $PID


          刪除挖礦進(jìn)程對(duì)應(yīng)的文件


          (2)清除其它相關(guān)惡意進(jìn)程

          惡意進(jìn)程與外部的C2服務(wù)器進(jìn)行通信時(shí),往往會(huì)開啟端口進(jìn)行監(jiān)聽。執(zhí)行如下命令,查看服務(wù)器是否有未被授權(quán)的端口被監(jiān)聽。

          netstat -antp


          若有未授權(quán)進(jìn)程,按照如下步驟將其清除:
          獲取并記錄未授權(quán)進(jìn)程的文件路徑:

          ls -l /proc/$PID/exe


          殺死未授權(quán)進(jìn)程:

          kill -9 $PID


          刪除未授權(quán)進(jìn)程對(duì)應(yīng)的文件


          還可以通過如下命令排查近期新增的文件,清除相關(guān)木馬

           find /etc -ctime -2 (這里指定目錄為/etc,獲取近2天內(nèi)的新增文件) lsof -c kinsing (這里要查看文件名為kinsing的相關(guān)進(jìn)程信息)



          8



          風(fēng)險(xiǎn)排查、安全加固

          對(duì)系統(tǒng)進(jìn)行風(fēng)險(xiǎn)排查和安全加固,避免挖礦木馬卷土重來,詳情可參考如下鏈接:https://cloud.tencent.com/document/product/296/9604


          四. 常見問題


          1



          明明剛剛清理了挖礦木馬,沒過多久就又卷土重來?

          很多用戶會(huì)反饋挖礦木馬老是清理不干凈,明明已經(jīng)Kill了進(jìn)程,刪除了木馬文件,沒過多久,CPU占用率又上來了。究其根本,還是因?yàn)榍宄貌粔驈氐?。大部分用戶都只是Kill掉挖礦進(jìn)程和對(duì)應(yīng)文件,卻沒有清理計(jì)劃任務(wù)和守護(hù)進(jìn)程。


          一般建議先清除計(jì)劃任務(wù)、啟動(dòng)項(xiàng)、守護(hù)進(jìn)程,再清除挖礦進(jìn)程和其他惡意進(jìn)程。



          2



          如何判定可疑進(jìn)程是否為惡意進(jìn)程?

          如下圖所示,未知進(jìn)程kinsing監(jiān)聽本地31458端口,非??梢?,可通過如下方法判定:
          (1)執(zhí)行`ls -al /proc/$PID/exe`確認(rèn)可疑進(jìn)程對(duì)應(yīng)的文件;
          (2)若文件未被刪除,則直接上傳文件到Virustotal進(jìn)行檢測(cè),或者計(jì)算出文件對(duì)應(yīng)的md5,使用md5去Virustotal進(jìn)行查詢;若文件已被刪除,可執(zhí)行`cat /proc/$PID/exe > /tmp/t.bin`將進(jìn)程dump到特定目錄,再上傳文件到Virustotal或者計(jì)算dump文件對(duì)應(yīng)的md5到Virustotal進(jìn)行查詢。如果有多款殺毒引擎同時(shí)檢出,那基本可以判定該進(jìn)程為惡意進(jìn)程。


          Virustotal地址:https://www.virustotal.com/gui/s



          3



          為什么系統(tǒng)CPU占用率接近100%,卻看不到是哪個(gè)進(jìn)程導(dǎo)致的?

          如下圖所示,系統(tǒng)CPU占用率接近100%,卻看不到是哪個(gè)進(jìn)程導(dǎo)致的,這種情況一般是因?yàn)橄到y(tǒng)命令被木馬篡改了,從而隱藏了木馬進(jìn)程的蹤跡,讓用戶無法進(jìn)行溯源分析。


          命令篡改有多種方式,分別如下:
          (1)top源文件被篡改,惡意進(jìn)程信息被過濾后返回


          通過執(zhí)行如下命令即可復(fù)原:

          rm -rf /usr/bin/top && mv /usr/bin/top.original /usr/bin/top


          【相關(guān)文章】

          https://blog.csdn.net/chenmozhe22/article/details/112578057


          (2)篡改預(yù)加載so文件,ls、top、ps等命令已經(jīng)被木馬的動(dòng)態(tài)鏈接庫(kù)劫持,無法獲得木馬進(jìn)程相關(guān)的信息


          通過執(zhí)行如下命令即可復(fù)原:

          > /etc/ld.so.preload && rm -rf 惡意so文件路徑


          (3)通過其他未知手段篡改系統(tǒng)命令


          可分別嘗試如下兩種方案解決:
          i.從其他相同版本系統(tǒng)中拷貝命令源文件到當(dāng)前系統(tǒng)中進(jìn)行覆蓋;可使用uname -a命令查看當(dāng)前系統(tǒng)版本;


          ii.或者安裝busybox來對(duì)系統(tǒng)進(jìn)行排查。

          busybox是一個(gè)集成了300多個(gè)最常用Linux命令和工具的軟件,可以使用busybox替代系統(tǒng)命令對(duì)系統(tǒng)進(jìn)行排查;

          yum -y install wget make gcc perl glibc-static ncurses-devel libgcrypt-develwget http://busybox.net/downloads/busybox-1.33.0.tar.bz2tar -jxvf busybox-1.33.0.tar.bz2cd busybox-1.33.0 && make && make install

          【相關(guān)文章】

          https://www.cnblogs.com/angryprogrammer/p/13456681.html

          - END -

          ?推薦閱讀?

          31天拿下 K8s 含金量最高的CKA+CKS證書!?
          Kubernetes與分布式系統(tǒng),容器化背后的故事
          一名運(yùn)維小哥對(duì)運(yùn)維規(guī)則的10個(gè)總結(jié),收藏起來
          運(yùn)維工程師不得不看的經(jīng)驗(yàn)教訓(xùn)和注意事項(xiàng)
          Kubernetes上生產(chǎn)環(huán)境后,99%都會(huì)遇到這2個(gè)故障
          如何用 Kubernetes 實(shí)現(xiàn) CI/CD 發(fā)布流程?| 漫畫
          K8s kubectl 常用命令總結(jié)(建議收藏)
          Kubernetes 的這些核心資源原理,你一定要了解
          終于明白了 DevOps 與 SRE 的區(qū)別!
          我在創(chuàng)業(yè)公司的 “云原生” 之旅
          基于Nginx實(shí)現(xiàn)灰度發(fā)布與AB測(cè)試
          編寫 Dockerfile 最佳實(shí)踐
          搭建一套完整的企業(yè)級(jí)高可用 K8s 集群(二進(jìn)制方式)



          點(diǎn)亮,服務(wù)器三年不宕機(jī)

          瀏覽 61
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  在线免费看毛片 | 黄色ww| 人妻互换一二三区免费 | 五月天婷婷色综合 | 黑人操逼片 |