服務器安全排查
點擊次數:0 發布時間:2019/1/29
當我們遇到服務器被黑的情況應該怎么辦呢?別著急,小編為大家詳細解答。
1、了解服務器異常情況。
常見異常情況:異常的流量、異常tcp鏈接(來源端口,往外發的端口)、異常的訪問日志(大量的ip頻繁的訪問個別文件)。
如果部署了監控系統的話(強烈建議部署zabbix,并增加對系統添加專門安全items),可以方便通過zabbix監控圖和趨勢對比了解這些信息:
比如系統被黑或者中木馬的話,zabbix上表現常見為:
1)系統負載不正常增加(14天,按天對比,事故當天安時對比),主要是因為會有系統操作,起一些惡意進程會占用CPU,占用IO:比如起進程挖礦,會大量占用CPU;如果中勒索木馬的話,會對系統文件加密,會大量占用占用CPU,占用IO。
2) 系統鏈接數不正常,對外流量不尋常的增加:木馬利用當前服務器對外發包,進行二次掃描或者Ddos攻擊。
異常上行流量監控表現
3) 服務器文件變化,文件被篡改:主要涉及目錄有/tmp,/root/.ssh,/boot/,/bin,/sbin,/etc,/etc/crontab,/etc/init.d/ 等等。
關于服務器安全監控的有關內容,此處不在在贅述,后續筆者會推出專門文章予以闡述,敬請期待。
2、根據服務器情況判斷
利用last,lastb發現異常的用戶登錄情況,ip來源。利用lastlog,/var/log/message,/var/log/secure,日志等,是否權限已經被攻陷。用history 發現shell執行情況信息,用top,ps,pstree等發現異常進程和服務器負載等情況,用netstat -natlp發現異常進程情況。用w命令發現當前系統登錄用戶的情況。
3、中標服務器處理:
如果發現異常用戶,立即修改用戶密碼,pkill -kill -t tty 剔除異常用戶。然后進行進一步處理。
1)發現異常進程,立即禁止,凍結禁止。
如果禁止后會自動重啟,則需要判斷crontab等來找到進程重啟的原因,如果有cron項目惡意重啟進程,先要對cron進行清理。如果,是進程有自啟動機制保護進程被殺后重啟的話,此時可暫時凍結異常進程(注意不是停止)
發現一個惡意進程后通過 ls –al /proc/Pid (Pid為具體的進程號),發現進程的啟動路徑,啟動的文件所在目錄等信息。
kill -STOP Pid 可以暫時凍結pid的進程,這時此進程將不能正常工作,不能占用系統資源,不往外發包。,被凍結的進程可以通過ps aux|grep –T來查到,此后如果需要可通過 skill -CONT Pid恢復進程。
2)如果發現異常連接數,通過iptables封禁相關端口或者ip
3) 查看網站訪問日志,分析異常訪問,對異常訪問ip進行處理,對異常訪問的文件進行處理
4)對清理移動木馬,殺掉進程。
首先清理掉,木馬創建的cron 計劃項和主要是/etc/crontab文件,和cron.d/ cron.daily/ cron.deny cron.hourly/ cron.monthly/ cron.weekly/等目錄下的惡意計劃項目; /etc/init.d/下的惡意啟動項以及rcN目錄下的啟動項。記錄下這些項目的內容涉及到的文件,然后全部清理到,注意截圖保留相應的證據(文件時間簽,文件內容等的截圖)。
其次,根據ls -al /etc/proc/Pid/ 找的惡意木馬文件,以及上一步的計劃項和啟動項目中涉及所有木馬文件。所有進程項目的進程ID:
惡意進程的執行目錄和文件
最后用一條命令 kill -9 所有的進程ID && rm -rf 所有涉及的文件和目錄。
ok,搞定。然后注意觀察服務器情況,如果有問題立馬重復以上步驟請出。利用以上步驟可以完全清理所有木馬,完全沒有必要,已有問題就格盤重裝系統,那是非常不專業,業務選手的做法。而且很多時候業務不允許有時間,有資源讓你下線重裝的。
以上就是我們的今日分享,希望對大家有所幫助。