1. 程式人生 > >【應急響應】linux應急響應

【應急響應】linux應急響應

背景

一哥們反應自己的測試機器總是關機,聯絡雲主機客服得知伺服器總是大量發包,導致技術關停該機器。

排查過程

Last檢視登入記錄

查詢到一個可疑IP

[[email protected] dpkgd]# grep "1.180.212.21" /var/log/secure*
/var/log/secure-20170409:Apr  4 22:20:43 i-9kp9tipm sshd[25921]: Accepted password for root from 1.180.212.21 port 5777 ssh2
/var/log/secure-20170409:Apr  4 23:21:16 i-9kp9tipm sshd[29214]: Accepted password for root from 1.180.212.21 port 50625 ssh2
/var/log/secure-20170409:Apr  5 00:13:12 i-9kp9tipm sshd[31509]: Accepted password for root from 1.180.212.21 port 12305 ssh2
/var/log/secure-20170409:Apr  5 00:24:56 i-9kp9tipm sshd[32029]: Accepted password for root from 1.180.212.21 port 12334 ssh2

檢視所有登入成功的記錄

確認後得知119.254.100.106和124.207.112.10為正常IP,但是這哥們的Root密碼也算是複雜。 既然Root被拿了,那麼看一下常用命令呢

發現ps和netstat被替換

發現ss被替換

發現2進製程序pythno和.sshd,並且在bsd-port下也有兩個可執行程式 在dpkgd目錄下發現替換之前的命令

看一下.sshd檔案的時間點。

用Strings檢視一下

發現裡面有很多IP地址。

檢視下當前的連線:

發現了3個可以程序1742、1677、1683 看一下這些可執行程式在什麼地方

發現這個ps看不到1742,然後我從自己主機上拷貝了一個ps過來,再執行下

這三個2進製程序

然後哥們反饋的是開機就會大量發包,來看下crontab,沒有異常。檢視rc.local沒有異常。檢視/etc/cron*沒有異常。檢查/etc/init.d的時候發現

/tmp下發現DDOS客戶端檔案

檢查history沒有發現操作記錄。 檢查mysql,發現密碼簡單123456,啟動許可權為mysql,plugin目錄沒有寫入許可權。 history中看到哥們之前有安裝redis,且redis.conf中沒有配置pass,檢查/root/.ssh下沒有發現異常,檢視redis鍵未發現異常。 中介軟體是tomcat,發現/manager/html,沒有賬戶。 專案為java專案,用到了struts2,檢查struts2的版本

檢視access log

沒有發現異常

處理方式

1)加強SSH和Mysql密碼,SSH限制IP訪問,redis後期如果使用需配置認證。如無需對外提供服務,僅監聽本地。 2)升級struts2到2.3.32版本 3)殺死程序

4)刪除木馬檔案,拷貝正常命令

5)刪除開機啟動項

6)重啟