怎樣在CentOS上配置基于主機(jī)的入侵檢測(cè)系統(tǒng)?

任何系統(tǒng)管理員想要在其生產(chǎn)服務(wù)器上最先部署的安全措施之一就是檢測(cè)文件篡改的機(jī)制――不法分子篡改的不僅僅是文件內(nèi)容,還有文件屬性。
AIDE(全稱“高級(jí)入侵檢測(cè)環(huán)境”)是一種基于主機(jī)的開(kāi)源入侵檢測(cè)系統(tǒng)。AIDE通過(guò)檢查許多文件屬性的不一致性來(lái)檢查系統(tǒng)二進(jìn)制文件和基本配置文件的完整性,這些文件屬性包括權(quán)限、文件類型、索引節(jié)點(diǎn)(inode)、鏈接數(shù)量、鏈接名稱、用戶、用戶組、文件大小、塊計(jì)數(shù)、修改時(shí)間、訪問(wèn)時(shí)間、創(chuàng)建時(shí)間、訪問(wèn)控制列表(acl)、SELinux安全上下文、xattrs以及md5/sha校驗(yàn)和。
AIDE通過(guò)掃描一臺(tái)(未被篡改)的Linux服務(wù)器的文件系統(tǒng)來(lái)構(gòu)建文件屬性數(shù)據(jù)庫(kù)。然后,它對(duì)照該數(shù)據(jù)庫(kù),檢查服務(wù)器的文件屬性,然后在服務(wù)器運(yùn)行時(shí),一旦索引文件出現(xiàn)任何更改,就發(fā)出警告。正是由于這個(gè)原因,每當(dāng)由于正當(dāng)原因而更新系統(tǒng)或更改配置文件后,AIDE必須重新為受保護(hù)的文件編制索引。
對(duì)某些客戶而言,他們的安全策略可能要求在服務(wù)器上安裝某種入侵檢測(cè)系統(tǒng)(IDS)。但無(wú)論客戶是不是要求IDS,系統(tǒng)管理員部署IDS都是個(gè)好的做法。
在CentOS或RHEL上安裝AIDE
AIDE的初始安裝(以及首次運(yùn)行)最好是在剛安裝操作系統(tǒng)的系統(tǒng)上進(jìn)行,沒(méi)有任何服務(wù)暴露在互聯(lián)網(wǎng)、甚至暴露在局域網(wǎng)面前。在這個(gè)早期階段,我們可以將來(lái)自外部的一切闖入和篡改行為這種風(fēng)險(xiǎn)降到最低限度。事實(shí)上,這也是確保系統(tǒng)在AIDE構(gòu)建其初始數(shù)據(jù)庫(kù)時(shí)很干凈的唯一途徑。
由于這個(gè)原因,我們?cè)谑褂? yum install aide這個(gè)命令安裝AIDE后,需要將我們的機(jī)器從網(wǎng)絡(luò)斷開(kāi),并執(zhí)行一些基本的配置任務(wù),如下所述。
配置AIDE
默認(rèn)配置文件位于/etc/aide.conf。該文件提供了幾個(gè)示例保護(hù)規(guī)則(比如FIPSR、NORMAL、DIR和DATAONLY),每個(gè)規(guī)則后面跟著一個(gè)等號(hào)以及要檢查的文件屬性列表,或者任何預(yù)定義規(guī)則(用+分隔)。你也可以使用這種格式定義任何自定義規(guī)則。
FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256
NORMAL = FIPSR+sha512
比如說(shuō),上述例子意味著,NORMAL規(guī)則將檢查下列屬性方面的不一致性:權(quán)限(p)、索引節(jié)點(diǎn)(i)、鏈接數(shù)量(n)、用戶(u)、用戶組(g)、大小(s)、修改時(shí)間(m)、創(chuàng)建時(shí)間(c)、訪問(wèn)控制列表(acl)、SELinux(selinux)、xattrs(xattr)以及SHA256/SHA512校驗(yàn)和(sha256和sha512)。
定義的規(guī)則可以靈活地用于不同的目錄和文件(用正則表達(dá)式表示)。
條目前面的感嘆號(hào)(!)告訴AIDE忽略子目錄(或目錄里面的文件),可針對(duì)子目錄定義另一個(gè)規(guī)則。
在上面這個(gè)例子中,PERMS是面向/etc及其子目錄和文件的默認(rèn)規(guī)則。然而,沒(méi)有規(guī)則會(huì)應(yīng)用于/etc中的備份文件(即/etc/.*~),也不會(huì)應(yīng)用于/etc/mtab文件。對(duì)于/etc中一些選擇性的子目錄或文件而言,而是應(yīng)用NORMAL規(guī)則,替代默認(rèn)規(guī)則PERMS。
定義合適的規(guī)則,并將其應(yīng)用到系統(tǒng)中的合適位置,這是使用AIDE過(guò)程中最困難的部分,但運(yùn)用良好的判斷力是個(gè)好的開(kāi)端。一個(gè)經(jīng)驗(yàn)法則是,別檢查不必要的屬性。比如說(shuō),檢查/var/log或/var/spool里面的文件的修改時(shí)間肯定會(huì)導(dǎo)致大量誤報(bào),因?yàn)橛性S多應(yīng)用程序和守護(hù)進(jìn)程常常將內(nèi)容寫(xiě)入到這些位置。此外,檢查多個(gè)校驗(yàn)和可能會(huì)加強(qiáng)安全性,不過(guò)代價(jià)是AIDE運(yùn)行時(shí)間延長(zhǎng)了。
另外,如果你使用MAILTO變量來(lái)指定電子郵件地址,可以將檢查結(jié)果發(fā)送到你的郵箱。將下面這一行放入到/etc/aide.conf中的任何位置。
首次運(yùn)行AIDE
運(yùn)行下列命令對(duì)AIDE數(shù)據(jù)庫(kù)進(jìn)行初始化:
# aide --init
根據(jù)/etc/aide.conf生成的/var/lib/aide/aide.db.new.gz文件需要重命名為/var/lib/aide/aide.db.gz,以便讓AIDE能讀取它:
# mv /var/lib/aide/aide.db.new.gz /var/lib/aide.db.gz
現(xiàn)在,是時(shí)候?qū)φ諗?shù)據(jù)庫(kù),執(zhí)行我們的第一次系統(tǒng)檢查了。為此,只要運(yùn)行:
# aide
沒(méi)有選項(xiàng)調(diào)用時(shí),AIDE假設(shè)使用--check。
如果數(shù)據(jù)庫(kù)創(chuàng)建后沒(méi)有做過(guò)任何變更,AIDE在結(jié)束檢查后會(huì)返回OK信息。
在生產(chǎn)環(huán)境中管理AIDE
構(gòu)建初始AIDE數(shù)據(jù)庫(kù)后,你常常需要由于各種正當(dāng)?shù)脑蚋率鼙Wo(hù)的服務(wù)器,這是日常系統(tǒng)管理活動(dòng)的一部分。每次服務(wù)器經(jīng)過(guò)更新后,你必須重新構(gòu)建AIDE數(shù)據(jù)庫(kù),以便將變更內(nèi)容添加到數(shù)據(jù)庫(kù)。為此,使用這個(gè)命令:
# aide --update
為了使用AIDE保護(hù)生產(chǎn)系統(tǒng),可能最好安排一個(gè)計(jì)劃任務(wù),以便定期使用AIDE檢查任何不一致性。比如說(shuō),安排AIDE每天運(yùn)行一次,并將結(jié)果發(fā)送到電子郵件地址:
# crontab -e
0 0 * * * /usr/sbin/aide --check | /usr/bin/mail -s "AIDE run for $HOSTNAME" your@email.com
測(cè)試AIDE檢查文件篡改的功能
下列測(cè)試場(chǎng)景將演示AIDE如何檢查文件的完整性。
測(cè)試場(chǎng)景1
我們不妨添加一個(gè)新文件(比如/etc/fake)。
# cat /dev/null > /etc/fake
測(cè)試場(chǎng)景 2
我們不妨變更文件權(quán)限,看看它能否被檢測(cè)到。
# chmod 644 /etc/aide.conf
測(cè)試場(chǎng)景 3
最后,我們不妨更改文件內(nèi)容(比如添加一個(gè)注釋行到/etc/aide.conf)。
echo "#This is a comment" >> /etc/aide.conf
在上面的屏幕截圖中,第一列顯示了文件屬性,第二列顯示了AIDE數(shù)據(jù)庫(kù)中的值,第三列顯示了那些屬性的更新后值。第三列中的空白部分表示該屬性沒(méi)有更改(該例子中的ACL)。
結(jié)束語(yǔ)
要是你果真覺(jué)得自己處于這種情形:有充分的理由認(rèn)為系統(tǒng)已遭到了篡改,可是乍一看又無(wú)法查明什么有可能遭到了更改,像AIDE這樣的基于主機(jī)的入侵檢測(cè)系統(tǒng)就大有幫助,因?yàn)樗梢詭椭惚M快查明什么遭到了更改,而不是胡加猜測(cè)、浪費(fèi)寶貴的時(shí)間。
相關(guān)文章
什么是CC攻擊 判斷網(wǎng)站是否被CC攻擊并且如何防御CC攻擊
CC主要是用來(lái)攻擊頁(yè)面的,大家都有這樣的經(jīng)歷,就是在訪問(wèn)論壇時(shí),如果這個(gè)論壇比較大,訪問(wèn)的人比較多,打開(kāi)頁(yè)面的速度會(huì)比較慢,對(duì)不?!一般來(lái)說(shuō),訪問(wèn)的人越多,論壇的頁(yè)2024-01-06Windows系統(tǒng)安全風(fēng)險(xiǎn)-本地NTLM重放提權(quán)
入侵者主要通過(guò)Potato程序攻擊擁有SYSTEM權(quán)限的端口偽造網(wǎng)絡(luò)身份認(rèn)證過(guò)程,利用NTLM重放機(jī)制騙取SYSTEM身份令牌,最終取得系統(tǒng)權(quán)限,該安全風(fēng)險(xiǎn)微軟并不認(rèn)為存在漏洞,所以2021-04-15- 這篇文章主要介紹了文件上傳漏洞全面滲透分析小結(jié),這里主要為大家分享一下防御方法,需要的朋友可以參考下2021-03-21
- 這篇文章主要介紹了sql手工注入語(yǔ)句&SQL手工注入大全,需要的朋友可以參考下2017-09-06
- 這篇文章主要介紹了詳解Filezilla server 提權(quán),需要的朋友可以參考下2017-05-13
FileZilla Server 2008 x64 提權(quán)與防御方法
這篇文章主要介紹了FileZilla Server 2008 x64 提權(quán)與防御方法,需要的朋友可以參考下2017-05-13https加密也被破解 HEIST攻擊從加密數(shù)據(jù)獲取明文
不久之前我們說(shuō)過(guò)關(guān)于http和https的區(qū)別,對(duì)于加密的https,我們一直認(rèn)為它是相對(duì)安全的,可今天要講的是,一種繞過(guò)HTTPS加密得到明文信息的web攻擊方式,不知道這消息對(duì)你2016-08-10iPhone和Mac也會(huì)被黑 一條iMessage密碼可能就被盜了
一直以來(lái)蘋(píng)果系統(tǒng)的安全性都是比安卓要高的,但是再安全的系統(tǒng)也免不了漏洞,蘋(píng)果也一樣。最近爆出的新漏洞,只需要接收一條多媒體信息或者iMessage就會(huì)導(dǎo)致用戶信息泄露。2016-07-27- 國(guó)家正在修正關(guān)于黑客方面的法律法規(guī),有一條震驚黑客圈的“世紀(jì)佳緣”起訴白帽黑客事件,深深的傷害了廣大黑客們的心,加上扎克伯格和特拉維斯·卡蘭尼克賬號(hào)被盜,于是黑2016-07-11
如何逆向破解HawkEye keylogger鍵盤(pán)記錄器進(jìn)入攻擊者郵箱
面對(duì)惡意郵件攻擊,我們就只能默默忍受被他攻擊,連自我保護(hù)能力都沒(méi)有談什么反抗?讓人痛快的是,如今有了解決辦法,逆向破解鍵盤(pán)記錄器,進(jìn)入攻擊者郵箱2016-07-06