談潘攀
摘要:內(nèi)核級(jí)rootkit是破壞內(nèi)核完整性的最大威脅,它通常通過(guò)冒充或篡改合法模塊加載到內(nèi)核,本文在對(duì)內(nèi)核級(jí)rootkit防范技術(shù)對(duì)比分析的基礎(chǔ)上,提出一種認(rèn)證和檢測(cè)相結(jié)合的內(nèi)核模塊加載機(jī)制,該機(jī)制把內(nèi)核模塊區(qū)分為信任模塊和非信任模塊,加載前者時(shí)首先驗(yàn)證其完整性,加載后者時(shí),驗(yàn)證其身份和完整性,并實(shí)時(shí)檢測(cè)其對(duì)內(nèi)核數(shù)據(jù)的修改。實(shí)驗(yàn)表明,該機(jī)制能防范內(nèi)核級(jí)rootldt的通過(guò)內(nèi)核模塊方式入侵。本文最后對(duì)該機(jī)制的優(yōu)缺點(diǎn)及下一步研究方向進(jìn)行了分析。
關(guān)鍵詞:內(nèi)核級(jí)rootkit;內(nèi)核模塊;認(rèn)證;檢測(cè)
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.3969/j.issn.1003-6970.2015.04.028
0.引言
在運(yùn)行的系統(tǒng)中動(dòng)態(tài)加載或卸載內(nèi)核模塊是大部分現(xiàn)代操作系統(tǒng)具備的基本功能,Windows操作系統(tǒng)又稱(chēng)模塊為設(shè)備驅(qū)動(dòng)程序或內(nèi)核驅(qū)動(dòng)程序。Rootkit是攻擊者向計(jì)算機(jī)系統(tǒng)中植入的,能夠隱藏自身蹤跡并保留超級(jí)用戶(hù)訪問(wèn)權(quán)限的惡意程序。它主要分為用戶(hù)級(jí)和內(nèi)核級(jí)兩種,內(nèi)核級(jí)rootkit是入侵操作系統(tǒng)內(nèi)核層的rootkit,通常會(huì)在內(nèi)核空間更改和插入執(zhí)行代碼,它是破壞內(nèi)核完整性的最大威脅。利用模塊機(jī)制是內(nèi)核級(jí)rootkit入侵內(nèi)核的常用手段。
1.傳統(tǒng)模塊加載機(jī)制的安全弱點(diǎn)
傳統(tǒng)的內(nèi)核模塊加載機(jī)制,在方便用戶(hù)的同時(shí),也給內(nèi)核級(jí)rootkit很多可乘之機(jī)。它們利用這種機(jī)制進(jìn)入內(nèi)核主要有兩種,一是冒充合法的模塊,系統(tǒng)管理員使用正常的加載命令將其加載到系統(tǒng);二是修改靜態(tài)內(nèi)核模塊文件,待系統(tǒng)重啟后加載到系統(tǒng)。不論哪種方式進(jìn)入內(nèi)核,一旦加載成功,它將破壞運(yùn)行時(shí)內(nèi)核的完整性,為系統(tǒng)設(shè)置后門(mén)。一般說(shuō)來(lái),它通過(guò)劫持系統(tǒng)調(diào)用,攔截中斷,內(nèi)聯(lián)掛鉤等攻擊手段,達(dá)到隱藏文件、進(jìn)程、網(wǎng)絡(luò)連接,記錄密碼等非法目的。研究表明,為了達(dá)到入侵目的,其主要修改內(nèi)核空間的下列關(guān)鍵數(shù)據(jù):endprint