日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

用RPM校驗文件

有些事情對我們系統(tǒng)管理員來說至少發(fā)生過一次,就是你感覺到你的系統(tǒng)好像不對勁
,開始懷疑有人已經(jīng)突破了你的防御 。確定此事是否發(fā)生的途徑之一就是檢查系統(tǒng)文
件有沒有變化,你需要安裝TripWire或者其他審計工具來幫忙 。

幸運的是,Red;Hat的程序員們開發(fā)了一個工具,叫作Red;Hat;Package;Manager,簡
稱為RPM 。在Red;Hat的Linux系統(tǒng)中是默認(rèn)存在的 。

RPM能為我做些什么?
RPM是一個強大的工具,用來安裝、升級和校驗Red;Hat系統(tǒng)上的軟件包 。它的校驗功能可以用來確認(rèn)文件是否被修改或覆蓋,這正是本文所要討論的 。除了文件的大小和時間戳,RPM還能檢查文件的信息文摘或MD5簽名 。

在RFC;1321中有MD5的詳細(xì)描述 。簡單的說,MD5根據(jù)文件的內(nèi)容用算法產(chǎn)生一個唯一的128位簽名,用任何方法改變文件都會導(dǎo)致簽名改變 。盡管人們一直在討論修改文件后能保持簽名不變的理論可能性,但截止到目前還沒有人能夠做到 。所以在文件使用前后各作一次MD5檢查,能夠99.9999%的保證文件沒有改變 。

如何使用RPM來檢查文件?
有一些RPM的參數(shù)你需要注意 。第一個是“-V”,它檢查與某一RPM包相關(guān)所有文件的
完整性 。語法為:

rpm;-V;package_name_to_verify

比如系統(tǒng)上運行了sendmail,通過以下命令檢查所有相關(guān)文件的完整性:

rpm;-V;sendmail

輸出看來是這樣的:

[root@fubar;/root]#;rpm;-V;sendmail;
S.5....T;c;/etc/aliases;
missing;/etc/mail/ip_allow;
S.5....T;c;/etc/mail/relay_allow;
S.5....T;c;/etc/sendmail.cf;
S.5....T;c;/etc/sendmail.cw;
S.5....T;/usr/sbin/sendmail;
S.5....T;/var/log/sendmail.st;
[root@fubar;/root]#;

只有校驗失敗的文件才被列出,沒有列出的文件應(yīng)該是完好無損的 。左邊給出了為什
么校驗失敗的原因,具體解釋如下:

S;=;大小改變
M;=;權(quán)限改變
5;=;MD5改變;
L;=;連接改變
D;=;設(shè)備改變
U;=;用戶改變
G;=;組改變
T;=;日期和時間改變
missing;=;文件丟失

從上面的輸出可見,文件aliases,;relay_allow,;sendmail.cf;和;sendmail.cw的大
小、時間日期和MD5發(fā)生了改變 。由于它們是配置文件,應(yīng)該沒什么關(guān)系 。但是/usr/
bin/sendmail的改變就要引起注意了,它是一個監(jiān)聽在25端口的可執(zhí)行文件,用來接
受信件 。除非你升級了sendmail,否則它不應(yīng)該校驗失敗,很明顯有人修改或者覆蓋
了原來的sendmail文件,可能帶有木馬或者后門 。

輸出還顯示ip_allow文件被刪除或者被改名 。這是用來檢查和控制SPAM的一個文件,
它的丟失某種程度上表明相關(guān)的二進(jìn)制文件可能被修改 。

當(dāng)觀察RPM輸出的時候,在檢查日期時間和文件大小的同時,要特別注意MD5是否變化,入侵者經(jīng)常修改或覆蓋某些文件來隱藏他們的蹤跡 。

挨個檢查軟件包很費時間,用“-a”選項可以一次性檢查所有RPM包:

rpm;-Va;>;/root/rpm_chk.txt;&

這條命令讓RPM檢查服務(wù)器上安裝的RPM包,結(jié)果輸出到rpm_chk.txt文件,最后的可選項“&”表示命令在后臺運行,給出shell提示符可以作其他事情 。

最后一個技巧,當(dāng)你想要檢查某個文件而不知道它屬于哪個RPM包,可以用“-qf”選
項查看哪個軟件包安裝了此文件:

[root@fubar;/root]#;rpm;-qf;/usr/sbin/sendmail;
sendmail-8.8.7-20;
[root@fubar;/root]#;

這表明此sendmail文件是sendmail-8.8.7-20;RPM包的一部分 。如果一個文件沒有關(guān)聯(lián)
的RPM包,輸出大概是這樣的:

[root@fubar;/root]#;rpm;-qf;/sbin/.vile_stuff;
file;/sbin/.vile_stuff;is;not;owned;by;any;package;
[root@fubar;/root]#;

小心你系統(tǒng)上運行的不能被校驗的程序!

推薦閱讀