有哪些方法可以檢查Linux是否被入侵
Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。有時(shí)我們不經(jīng)意間會(huì)被入侵系統(tǒng),那么有什么方法可以檢查呢?這篇文章主要介紹了11個(gè)檢查Linux是否被入侵的方法,都是通過一些linux命令來檢查,需要的朋友可以參考下
方法介紹
1. 檢查帳戶
復(fù)制代碼代碼如下:
# less /etc/passwd
# grep :0: /etc/passwd(檢查是否產(chǎn)生了新用戶,和UID、GID是0的用戶)
# ls -l /etc/passwd(查看文件修改日期)
# awk -F: ‘$3= =0 {print $1}’ /etc/passwd(查看是否存在特權(quán)用戶)
# awk -F: ‘length($2)= =0 {print $1}’ /etc/shadow(查看是否存在空口令帳戶)
2. 檢查日志
復(fù)制代碼代碼如下:
# last
(查看正常情況下登錄到本機(jī)的所有用戶的歷史記錄)
注意”entered promiscuous mode”
注意錯(cuò)誤信息
注 意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. 檢查進(jìn)程
復(fù)制代碼代碼如下:
# ps -aux(注意UID是0的)
# lsof -p pid(察看該進(jìn)程所打開端口和文件)
# cat /etc/inetd.conf | grep -v “^#”(檢查守護(hù)進(jìn)程)
檢查隱藏進(jìn)程
# ps -ef|awk ‘{print }’|sort -n|uniq >1
# ls /porc |sort -n|uniq >2
# diff 1 2
4. 檢查文件
復(fù)制代碼代碼如下:
# 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 {} \
(檢查系統(tǒng)中的core文件)
檢查系統(tǒng)文件完整性
# rpm –qf /bin/ls
# rpm -qf /bin/login
# md5sum –b 文件名
# md5sum –t 文件名
5. 檢查RPM
復(fù)制代碼代碼如下:
# 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
注意相關(guān)的 /sbin, /bin, /usr/sbin, and /usr/bin
6. 檢查網(wǎng)絡(luò)
復(fù)制代碼代碼如下:
# ip link | grep PROMISC(正常網(wǎng)卡不該在promisc模式,可能存在sniffer)
# lsof –i
# netstat –nap(察看不正常打開的TCP/UDP端口)
# arp –a
7. 檢查計(jì)劃任務(wù)
復(fù)制代碼代碼如下:
注意root和UID是0的schedule
# crontab –u root –l
# cat /etc/crontab
# ls /etc/cron.*
8. 檢查后門
復(fù)制代碼代碼如下:
# 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. 檢查內(nèi)核模塊
復(fù)制代碼代碼如下:
# lsmod
10. 檢查系統(tǒng)服務(wù)
復(fù)制代碼代碼如下:
# chkconfig
# rpcinfo -p(查看RPC服務(wù))
11. 檢查rootkit
復(fù)制代碼代碼如下:
# rkhunter -c
# chkrootkit -q
補(bǔ)充:Linux基本命令
1.ls命令:
格式::ls [選項(xiàng)] [目錄或文件]
功能:對(duì)于目錄,列出該目錄下的所有子目錄與文件;對(duì)于文件,列出文件名以及其他信息。
常用選項(xiàng):
-a :列出目錄下的所有文件,包括以 . 開頭的隱含文件。
-d :將目錄像文件一樣顯示,而不是顯示其他文件。
-i :輸出文件的i節(jié)點(diǎn)的索引信息。
-k :以k字節(jié)的形式表示文件的大小。
-l :列出文件的詳細(xì)信息。
-n :用數(shù)字的UID,GID代替名稱。
-F : 在每個(gè)文件名后面附上一個(gè)字符以說明該文件的類型,“*”表示可執(zhí)行的普通文 件;“/”表示目錄;“@”表示符號(hào)鏈接;“l”表示FIFOS;“=”表示套接字。
2.cd命令
格式:cd [目錄名稱]
常用選項(xiàng):
cd .. 返回上一級(jí)目錄。
cd ../.. 將當(dāng)前目錄向上移動(dòng)兩級(jí)。
cd - 返回最近訪問目錄。
3.pwd命令
格式: pwd
功能:顯示出當(dāng)前工作目錄的絕對(duì)路徑。
相關(guān)閱讀:Linux主要特性
完全兼容POSIX1.0標(biāo)準(zhǔn)
這使得可以在Linux下通過相應(yīng)的模擬器運(yùn)行常見的DOS、Windows的程序。這為用戶從Windows轉(zhuǎn)到Linux奠定了基礎(chǔ)。許多用戶在考慮使用Linux時(shí),就想到以前在Windows下常見的程序是否能正常運(yùn)行,這一點(diǎn)就消除了他們的疑慮。
多用戶、多任務(wù)
Linux支持多用戶,各個(gè)用戶對(duì)于自己的文件設(shè)備有自己特殊的權(quán)利,保證了各用戶之間互不影響。多任務(wù)則是現(xiàn)在電腦最主要的一個(gè)特點(diǎn),Linux可以使多個(gè)程序同時(shí)并獨(dú)立地運(yùn)行。
良好的界面
Linux同時(shí)具有字符界面和圖形界面。在字符界面用戶可以通過鍵盤輸入相應(yīng)的指令來進(jìn)行操作。它同時(shí)也提供了類似Windows圖形界面的X-Window系統(tǒng),用戶可以使用鼠標(biāo)對(duì)其進(jìn)行操作。在X-Window環(huán)境中就和在Windows中相似,可以說是一個(gè)Linux版的Windows。
支持多種平臺(tái)
Linux可以運(yùn)行在多種硬件平臺(tái)上,如具有x86、680x0、SPARC、Alpha等處理器的平臺(tái)。此外Linux還是一種嵌入式操作系統(tǒng),可以運(yùn)行在掌上電腦、機(jī)頂盒或游戲機(jī)上。2001年1月份發(fā)布的Linux 2.4版內(nèi)核已經(jīng)能夠完全支持Intel 64位芯片架構(gòu)。同時(shí)Linux也支持多處理器技術(shù)。多個(gè)處理器同時(shí)工作,使系統(tǒng)性能大大提高。
檢查Linux是否被入侵相關(guān)文章: