一次Linux伺服器被入侵和刪除木馬程式的經歷
阿新 • • 發佈:2022-05-19
一、背景
上午看到有臺伺服器流量跑的很高,明顯和平常不一樣,流量達到了500Mbps,第一感覺應該是中木馬了,被人當做肉雞了,在大量發包。
我們的伺服器為了最好效能,防火牆(iptables)什麼的都沒有開啟,但是伺服器前面有物理防火牆,而且機器都是做的埠對映,也不是常見的埠,按理來說應該是滿安全的,可能最近和***有緣吧,老是讓我遇到,也趁這次機會把發現過程記錄一下。
二、發現並追蹤處理
1、top動態檢視程序
2、ps命令檢視程序的路徑
# 通過PID號找到對應的程序名及所在目錄 ps -aux |grep -v grep|grep 23505 #或者使用以下命令 lsof-p 23505
進入 /root/.cfg目錄,檢視木馬檔案。dealer和rcu_tasked兩個檔案就是病毒檔案。
3、結束異常程序並繼續追蹤
# 通過PID殺死程序
kill -9 23585
殺死程序後,再執行top命令,發現病毒又自己重新啟動了。
4、檢視系統定時任務,判斷是否異常
crontab –e
定進任務有異常執行資訊,先註釋此條資訊。
5、檢視系統執行的服務,發現了異常
進入目錄:/lib/systemd/system
使用 ll 命令檢視最新服務檔案
# 有舊到新
ll -rt
最終發現了異常服務檔案 【myservice.service】,我們使用 vi命令打看一下內容
vi myserver.service
[Unit] Description=Example systemd service. [Service] Type=forking ExecStart=/usr/bin/player ExecStartPost=/bin/bash /usr/bin/pidsshd Restart=always RestartSec=2s SuccessExitStatus=SIGHUP TimeoutStartSec=6000 KillMode=control-group StandardOutput=null StandardError=null [Install] WantedBy=multi-user.target
病毒檔案位置:/usr/bin/player,因開啟是亂碼,所以就不看病毒檔案內空。
cd /usr/bin
ll -rt
病毒檔案位置:/usr/bin/pidsshd,用於提取 myservice.service服務的PID到 /usr/bin/port檔案中
6、再次檢視系統執行的服務與病毒的關係
命令:top,監視系統活動程序和系統的資源負載資訊
systemctl status myservice.service
程序PID是:2107,說明病毒程式對應上了。
三、木馬手動清除
1、停止服務、禁用開機啟動
# 停止服務
systemctl stop myservice.service
# 停止開機啟動
systemctl disable myservice.service
# 刪除服務檔案
rm –rf myservice.service
停止myservice服務後,確實 rcu_tasked程序已停止,cpu使用率也降下來了。
2、刪除以下3個檔案
rm -rf player
3、刪除系統定時任務異常
crontab –e
刪除以下記錄
4、刪除定時任務可執行檔案
5、重啟電腦,一切都正常了。
四、預防措施
因為現在的木馬程序保活機制做的很完善,你可能很難殺掉木馬程序,在使用各種方式去查殺木馬程序時,自己肯定是無比的後悔為什麼不把安全機制做完善一些。下面我記錄幾點基本的安全設定,以後看到其他資料會再來補充。
1、避免弱口令。弱口令是最容易中木馬的原因,別人一旦獲取到了你的伺服器口令,就相當於有了伺服器的控制權。
2、ssh埠不要使用預設的22埠。因為網路上有很多破解程式一直在掃描破解公網上的伺服器,通過修改ssh埠可以避免一定量的破解訪問。
3、禁止root的遠端登入。遠端登入時使用普通使用者,當需要用到root許可權時,再用sudo來提權。