糟糕!服務器被植入挖礦木馬,CPU飆升200%

此項目是我負責,線上服務器用的是某訊雲的,運行着 Tomcat,MySQL,MongoDB,ActiveMQ 等程序。

排查過程

 

我以 150+ 的手速立即打開了服務器,看到 Tomcat 掛了,然後順其自然的重啓,啓動過程中直接被 killed,再試試數據庫,同樣沒成功,多次嘗試甚至重啓機器無果。

 

機智的我打了個 Top,出現以下內容:

這是誰運行的程序?不管三七二十一先殺掉再說,因爲它就是 Tomcat 等程序啓動不了的元兇。

 

然而並沒有什麼卵用,過一會再看那個東西又跑出來佔 CPU。懷疑是個定時任務:

什麼鬼,是個圖片?立即訪問了一下:

好尷尬,但是心思細膩的我早知道沒這麼簡單,肯定只是僞裝,crul 過去是下面的腳本,過程就是在挖礦:

有興趣的同學想查看以上完整源代碼,命令行運行下面指令(不分操作系統,方便安全無污染):

既然知道它是個定時任務,那就先取消了它,並且看看它是誰在運行:

殺掉,找到存放目錄:

進入臨時目錄:

被我發現配置文件了,先來看看內容:

虎軀一震,發現了不少信息啊,User 是他的 Server 的登錄用戶,下面是密碼,只可惜加密過,應該找不到對方。

 

算了,大度的我先不和你計較。幹掉這兩個文件後再查看 Top:

解決辦法

 

找到寄生的目錄,一般都會在 tmp 裏,我這個是在 /var/tmp/。首先把 crontab 幹掉,殺掉進程,再刪除產生的文件。啓動 Tomcat 等程序,大功告成!

 

等等,這遠遠不夠,考慮到能被拿去挖礦的前提下你的服務器都已經被黑客入侵了,修復漏洞纔對,不然你殺掉進程刪掉文件後,黑客後門進來 history 一敲,都知道你做了啥修復手段。

 

所以上面辦法治標不治本,我後續做了以下工作:

  • 把所有軟件升級到新版本。

  • 修改所有軟件默認端口號。

  • 打開 ssh/authorized_keys,刪除不認識的密鑰。

  • 刪除用戶列表中陌生的帳號。

  • 封了他的 ip。

  • SSH 使用密鑰登錄並禁止口令登錄(這個一般是加運維一個人的祕鑰)。

 

對了,本次遭受攻擊是低版本 ActiveMQ 開放端口 61616 有漏洞,大家記得做優化。

 

遇到挖礦木馬最好的解決方式:將主機鏡像、找出病毒木馬、分析入侵原因、檢查業務程序、重裝系統、修復漏洞、再重新部署系統。

 

寫在最後

 

網友提供的一勞永逸終極解決辦法:把你自己的挖礦腳本掛上去運行,這樣別人就算掛腳本也跑不起來了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章