11個審查Linux是否被入侵的方法
本文給大家收集整理了一些審查Linux系統是否被入侵的方法,這些方法可以新增到你運維例行巡檢中。
1. 檢查帳戶
# less /etc/passwd
# grep :0: /etc/passwd(檢查是否產生了新使用者,和UID、GID是0的使用者)
# ls -l /etc/passwd(檢視檔案修改日期)
# awk -F: ‘$3= =0 {print $1}’ /etc/passwd(檢視是否存在特權使用者)
# awk -F: ‘length($2)= =0 {print $1}’ /etc/shadow(檢視是否存在空口令帳戶)
2. 檢查日誌
# last
(檢視正常情況下登入到本機的所有使用者的歷史記錄)
注意”entered promiscuous mode”
注意錯誤資訊
注 意Remote Procedure Call (rpc) programs with a log entry that includes a large number (> 20) strange characters(-^PM-^PM-^PM-^PM-^PM-^PM-^PM-^PM)
3. 檢查程序
# ps -aux(注意UID是0的)
# lsof -p pid(察看該程序所開啟埠和檔案)
# cat /etc/inetd.conf | grep -v “^#”(檢查守護程序)
檢查隱藏程序
# ps -ef|awk ‘{print }’|sort -n|uniq >1
# ls /porc |sort -n|uniq >2
# diff 1 2
4. 檢查檔案
# find / -uid 0 –perm -4000 –print
# find / -size +10000k –print
# find / -name “…” –print
# find / -name “.. ” –print
# find / -name “. ” –print
# find / -name ” ” –print
注意SUID檔案,可疑大於10M和空格檔案
# find / -name core -exec ls -l {} \
(檢查系統中的core檔案)
檢查系統檔案完整性
# rpm –qf /bin/ls
# rpm -qf /bin/login
# md5sum –b 檔名
# md5sum –t 檔名
5. 檢查RPM
# rpm –Va
輸出格式:
S – File size differs
M – Mode differs (permissions)
5 – MD5 sum differs
D – Device number mismatch
L – readLink path mismatch
U – user ownership differs
G – group ownership differs
T – modification time differs
注意相關的 /sbin, /bin, /usr/sbin, and /usr/bin
6. 檢查網路
# ip link | grep PROMISC(正常網絡卡不該在promisc模式,可能存在sniffer)
# lsof –i
# netstat –nap(察看不正常開啟的TCP/UDP埠)
# arp –a
7. 檢查計劃任務
注意root和UID是0的schedule
# crontab –u root –l
# cat /etc/crontab
# ls /etc/cron.*
8. 檢查後門
# cat /etc/crontab
# ls /var/spool/cron/
# cat /etc/rc.d/rc.local
# ls /etc/rc.d
# ls /etc/rc3.d
# find / -type f -perm 4000
9. 檢查核心模組
# lsmod
10. 檢查系統服務
# chkconfig
# rpcinfo -p(檢視RPC服務)
11. 檢查rootkit
# rkhunter -c
# chkrootkit -q