1 首先是發現異常的連線,這個IP不是我們自己的
2 找到對應的程式
發現經常竟然是ps命令,就該判斷ps是不是被人改了
轉載請在文章開頭附上原文連結地址:https://www.cnblogs.com/Sunzz/p/11936309.html
3 判斷ps 命令是否被改過
經過檢視,發現並沒有被人改過,這下就奇怪了,為什麼會有這個程式呢,而且還一直存在程式中?
4 再看看其他機器
不看不知道,一看嚇一跳,有一個shell 反彈,
再看見/bin/ps,發現還是沒有改到的跡象
再看看其他有外網IP的電腦,依然是用/bin/ps 命令建立的連線
我就奇怪了,怎麼用/bin/ps 還能建立連線呢
5 檢視/proc/ 下相關程式資訊
突然想到了去/proc/ 看下程式的相關資訊,就看到了如下所示的內容,發現這個程式實際上就是執行/tmp/server 檔案,但是檔案已經被刪除,但是記憶體中卻留下來,以便黑客繼續控制機器
幹掉相關程式,發現它還會自己啟動,看了一下定時任務,黑客竟然加了一個定時任務來,太猖狂了
轉載請在文章開頭附上原文連結地址:https://www.cnblogs.com/Sunzz/p/11936309.html
經過分析,現在基本可以確定黑客的攻擊流程
(1)找到web漏洞
(2)獲取執行該程式使用者的許可權
(3)破解root密碼 --> 至此拿下機器。
(4)新建/tmp/server(攻擊檔案)
(5)把/bin/ps 移除
(6) 新建/bin/ps 軟連線 指向 /tmp/server ,建立shell 反彈成功了,
(7) 刪除軟連線,並恢復原有/bin/ps,至此黑客的程式已經存在與記憶體中了。
經過以上步驟就可以完全拿下機器,我能看到的資訊也就是有一個異常的socket連線和一個一直在執行的/bin/ps 程式,而且他這個/bin/ps 程式的PID還會變。說明黑客的程式一直是在記憶體中的。
解決方法:
(1)重新安裝作業系統
(2)禁用密碼登入
(3)設定防火牆
啟示:
(1) 不必要的許可權千萬不要給
(2)不要使用弱密碼,最好用金鑰登入
(3)不要相信開發人員,寫了漏洞可能自己都不知道
(4)防火牆必不可少,不要以為用了阿里的安全組就可以萬事大吉了
(5)能不訪問外網的伺服器,就不要給開放外網許可權
(6)一定要訪問外網的伺服器,自建代理,讓走代理訪問,並在代理伺服器設定白名單