国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于TWPos內(nèi)核完整性保護(hù)

2015-06-26 11:13:20范明鈺王光衛(wèi)
關(guān)鍵詞:內(nèi)核完整性內(nèi)存

何 進(jìn),范明鈺,王光衛(wèi)

基于TWPos內(nèi)核完整性保護(hù)

何 進(jìn),范明鈺,王光衛(wèi)

(電子科技大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 成都 611731)

內(nèi)核rookits攻擊對(duì)內(nèi)核的完整性構(gòu)成致命威脅,因此對(duì)內(nèi)核rootkits防護(hù)是內(nèi)核完整性保護(hù)的重點(diǎn)。當(dāng)前研究主要側(cè)重于內(nèi)核rootkits探測(cè)和防護(hù),不足之處在于:1) rootkits防護(hù)存在單一保護(hù)模式;2) 內(nèi)核rootkits探測(cè)只能做探測(cè)使用,即便發(fā)現(xiàn)內(nèi)核已經(jīng)受到攻擊,也無能為力。鑒于這種情況,該文設(shè)計(jì)了一種內(nèi)核完整性保護(hù)方法,采用安全認(rèn)證保護(hù)和探測(cè)恢復(fù)兩種方式(TWPos)保護(hù)操作系統(tǒng),同時(shí)具備探測(cè)和防護(hù)能力,即便內(nèi)核受到攻擊也能進(jìn)行恢復(fù)。實(shí)驗(yàn)表明,TWPos系統(tǒng)既能全面有效的防護(hù),而且又不犧牲系統(tǒng)性能,并且兼容多種OS系統(tǒng)。

探測(cè)恢復(fù)復(fù)試; 內(nèi)核完整性; rootkits; 安全認(rèn)證保護(hù)模式; TWPos; 虛擬機(jī)管理

Rootkits是攻擊者向計(jì)算機(jī)系統(tǒng)植入的,能夠隱藏自身蹤跡并保留超級(jí)用戶訪問權(quán)限的惡意程序。rootkits分為用戶級(jí)和內(nèi)核級(jí)兩種[1],本文只對(duì)內(nèi)核級(jí)rootkits進(jìn)行探測(cè)和防護(hù),內(nèi)核級(jí)的rootkits對(duì)整個(gè)計(jì)算機(jī)安全構(gòu)成致命威脅,它不僅破壞內(nèi)核任務(wù)、文件系統(tǒng)、網(wǎng)絡(luò)協(xié)議棧、系統(tǒng)時(shí)鐘、調(diào)度堆棧等OS重要部件,而且對(duì)內(nèi)核進(jìn)行篡改、注入、更改內(nèi)核控制流程以及隱藏自身反病毒軟件。rootkits對(duì)內(nèi)核攻擊主要通過以下途徑:1) 帶有rootkits的模塊插入到內(nèi)核;2) 內(nèi)核自身安全漏洞,注入rootkits到內(nèi)核;3) 通過應(yīng)用安全漏洞提取最高權(quán)限,再向內(nèi)核注入rootkits。

無論采用何種途徑防止內(nèi)核rootkits攻擊,最終目的是確保內(nèi)核完整性。通過研究?jī)?nèi)核rootkits注入方式、系統(tǒng)特征及防范措施,將這些工作分為兩大類:1) 探測(cè)內(nèi)核rootkits[2-4],早期Copilot[2]采用獨(dú)立PCI卡周期獲取內(nèi)核的內(nèi)存,并分析判斷內(nèi)核是否被破壞;基于Copilot改進(jìn)[3]進(jìn)一步探測(cè)代碼完整性及其數(shù)據(jù)完整性;SBCFI[4]探測(cè)控制流;OSck[5]基于不變式進(jìn)行探測(cè)。所有這些都是基于探測(cè)模式,只有rootkits已經(jīng)注入內(nèi)核之后,才能探測(cè)發(fā)現(xiàn)rootkits攻擊,盡管事后采取一系列措施,然而內(nèi)核完整性無法得到保障。2) 阻止rootkits注入內(nèi)核從而確保內(nèi)核完整性[6-9,12-13],Secvisor[6]確保整個(gè)系統(tǒng)運(yùn)行周期內(nèi)核代碼完整性;Patagonix[7]探測(cè)執(zhí)行文件格式確保內(nèi)核完整性;NICKLE[8]認(rèn)證內(nèi)核代碼再執(zhí)行;HookSafe[9]函數(shù)指針保護(hù),主要是鉤子函數(shù)保護(hù)。這些保護(hù)都是基于內(nèi)核某一個(gè)方面進(jìn)行保護(hù),要么保證代碼完整性[6-8],或數(shù)據(jù)完整性[11,15]或控制流完整性[9],都采用單一防護(hù)某類攻擊,而缺乏統(tǒng)一全面保護(hù)措施。

基于上述兩種類型,僅僅采用探測(cè)方式是無法保護(hù)內(nèi)核完整性,即便阻止rootkits注入確保內(nèi)核完整性這種方式,也存在諸多弊端,因而無法有效的保護(hù)內(nèi)核完整性。鑒于此,本文采用了一種將安全防護(hù)及探測(cè)安全漏洞并進(jìn)行恢復(fù)相結(jié)合的方法確保內(nèi)核完整性的方案,稱為TWPos方法,TWPos基于VMM[14]管理,將TWPos保護(hù)的內(nèi)核劃分為兩種保護(hù)措施:一部分內(nèi)核采用安全認(rèn)證保護(hù)方式(safe authentication protection mode, SAPM),這部分保護(hù)主要針對(duì)內(nèi)核里面安全級(jí)別要求很高的部分,如控制流、內(nèi)核調(diào)度等;另一部分內(nèi)核采用探測(cè)恢復(fù)方式(detection recovery mode, DRM),這部分相對(duì)上面部分安全要求低,如一些外圍設(shè)備等。TWPos將保護(hù)的內(nèi)核邏輯上劃分為兩個(gè)部分,采用SAPM方式保護(hù)的內(nèi)核部分稱為SAPM-K,采用DRM方式探測(cè)保護(hù)的內(nèi)核部分稱為DRM-K。

1 TWPos設(shè)計(jì)

定義 1 內(nèi)核完整性KI:內(nèi)核整個(gè)運(yùn)行周期,內(nèi)核代碼、內(nèi)核數(shù)據(jù)、內(nèi)核控制流和內(nèi)核棧都未被篡改或注入,稱為內(nèi)核完整性。

定義 2 原始內(nèi)存塊OMB:OMB保存內(nèi)核代碼、數(shù)據(jù)、堆棧的內(nèi)存。保護(hù)方式來看OMB內(nèi)存= DRM-K∪SAPM-K,DRM-K?OMB,SAPM-K?OMB并且DRM-K∩SAPM-K=?。

定義 3 備份內(nèi)存塊BMB:保存DRM-K?OMB備份的內(nèi)存,當(dāng)DRM-K完整性遭到破壞,通過BMB進(jìn)行恢復(fù),確保代碼、數(shù)據(jù)、控制流和棧完整性。

定義 4 映射內(nèi)存塊MMB:存放的內(nèi)存都是從OMB通過安全認(rèn)證之后的內(nèi)存,GOS可以安全訪存。

定義 5 安全映射表SMT:建立SAPM-K和MMB之間映射關(guān)系,當(dāng)GOS任務(wù)訪問SAPM-K內(nèi)存時(shí),通過SMT項(xiàng)映射至MMB內(nèi)存,進(jìn)行訪問,SMT標(biāo)識(shí)狀態(tài)包括5種:LOCK、UNLOCK、USE、SAFE和NORMAL。LOCK狀態(tài):建立映射時(shí)的狀態(tài);UNLOCK狀態(tài):撤銷映射時(shí)的狀態(tài);USE狀態(tài):GOS可以訪問內(nèi)存;SAFE狀態(tài):GOS可以安全訪問MMB內(nèi)存,NORMAL狀態(tài):GOS通用訪問OMB內(nèi)存。

1.1 內(nèi)存關(guān)系

將TWPos加載VMM中,TWPos從Host OS(HOS)分配3部分內(nèi)存:BMB、SMT和MMB,并將這3部分內(nèi)存塊的頁(yè)表都置為非置換方式,避免這些內(nèi)存被置換出去,導(dǎo)致系統(tǒng)性能降低。

GOS未加入安全系統(tǒng)之前,GOS訪存過程:GOS虛擬地址—>VMM。將TWPos作為VMM針對(duì)GOS的一個(gè)安全部件,被保護(hù)的GOS運(yùn)行在VMM之上,加入安全TWPos系統(tǒng),訪存過程如圖1b:GOS虛擬地址—>TWPos—>VMM。說明GOS任務(wù)安全訪問物理內(nèi)存時(shí),必須通過TWPos,才能訪問真正物理內(nèi)存,TWPos作為GOS安全訪問的重要部件,通過保護(hù)GOS物理內(nèi)存達(dá)到保護(hù)GOS內(nèi)核KI。內(nèi)存關(guān)系如圖1c:將TWPos加載到OMB時(shí),TWPos從HOS分配3部分內(nèi)存分別為BMB、SMT和MMB,處理它們之間關(guān)系如下:

1) 映射關(guān)系(OMB—>MMB):TWPos內(nèi)核加載時(shí),將采用SAPM機(jī)制的內(nèi)存或者模塊SAPM-K?OMB內(nèi)存認(rèn)證備份至MMB內(nèi)存SAPM-K—>MMB,并且SMT={OMB,MMB,SMT標(biāo)識(shí)}將它們映射關(guān)系寫入空閑SMT項(xiàng)。

2) 副本關(guān)系(OMB—>BMB):TWPos內(nèi)核加載時(shí),將采用DRM機(jī)制的內(nèi)存或者模塊DRMK?OMB內(nèi)存?zhèn)浞葜罛MB內(nèi)存DRM-K—>BMB。

3) 安全訪問(GOS—>SMT—>MMB):若GOS訪問SAPM-K內(nèi)存,先查找SAPM-K內(nèi)存與MMB映射關(guān)系SMT,若找到則通過SMT映射塊訪問MMB,由于MMB是認(rèn)證之后的內(nèi)存,因此該訪問為安全訪問。

4) 通用訪問(GOS—>SMT—>OMB):GOS訪問DRM-K內(nèi)存,訪問過程為GOS—>SMT—>OMB。

5) 恢復(fù)關(guān)系(BMB—>OMB):如果DRM機(jī)制周期檢測(cè)到DRM-K內(nèi)存被篡改,則通過BMB進(jìn)行恢復(fù)BMB—>OMB。

1.2 保護(hù)機(jī)制

TWPos根據(jù)不同保護(hù)內(nèi)容采用不同策略,圖1顯示了TWPos保護(hù)KI完整性的總體構(gòu)架。

SAPM方式:初始化模塊建立GOS的映射關(guān)系SAPM-K—>MMB,并將MMB內(nèi)存置為只讀模式,同時(shí)修改shadow page tables(SPT)頁(yè)表將原先指向SAPM-K修改為指向MMB;當(dāng)GOS訪問SAPM-K內(nèi)存通過SPT和SMT映射到MMB進(jìn)行訪問。要是GOS訪問DRM-K內(nèi)存通用訪問。

DRM方式:初始化時(shí)將GOS的DRM-K內(nèi)存和BMB內(nèi)存切分多個(gè)邏輯塊,并將DRM-K所有邏輯塊與BMB建立副本關(guān)系,同時(shí)DRM-K所有邏輯塊進(jìn)行HASH,并將HASH值存入BMB內(nèi)存;GOS訪問DRM-K內(nèi)存采用通用訪問,該訪存未進(jìn)行任何安全保護(hù),GOS可能對(duì)DRM-K內(nèi)存進(jìn)行篡改和破壞。DRM啟動(dòng)內(nèi)核線程周期HASH驗(yàn)證DRM-K邏輯塊KI完整性,如果KI完整性被破壞則通過BMB進(jìn)行恢復(fù)。

圖1 TWPos總體構(gòu)架

2 TWPos實(shí)現(xiàn)

TWPos實(shí)現(xiàn)兩種內(nèi)核和內(nèi)核模塊保護(hù)機(jī)制:1) SAPM方式,將內(nèi)核及其模塊建立映射關(guān)系SAPM-K—>MMB,GOS采用安全訪問GOS—>SMT—>MMB進(jìn)行訪存。2) DRM方式,將DRM-K內(nèi)核劃分多個(gè)邏輯塊,每個(gè)邏輯塊DRM-K[i]進(jìn)行HASH,并將HASH值存入OMB[i]內(nèi)存,同時(shí)建立副本關(guān)系DRM-K—>BMB。DRM方式周期HASH驗(yàn)正DRM-K內(nèi)核,如果探測(cè)到DRM-K內(nèi)核的KI被破壞,則探測(cè)恢復(fù)關(guān)系BMB—>OMB。TWPos保護(hù)的內(nèi)核,即可以采用其中一種,也可以同時(shí)采用兩種保護(hù)方式,但是不能將相同內(nèi)存塊同時(shí)置于這兩種保護(hù)方式之下。

2.1 初始化

內(nèi)核和內(nèi)核模塊加載OMB內(nèi)存中,SAPM方式保護(hù)的內(nèi)核SAPM-K?OMB,DRM方式保護(hù)的內(nèi)核DRM-K?OMB,并且DRM-K∩SAPM-K=?,也就是OMB內(nèi)存對(duì)應(yīng)的邏輯塊只能選擇一種方式保護(hù),不能將OMB的邏輯塊即置入SAPM方式和DRM方式之下。從前面所述內(nèi)存關(guān)系可以看出要保護(hù)SAPM-K內(nèi)核,需要在初始化時(shí)建立映射關(guān)系SAPM-K—>MMB。同樣,保護(hù)DRM-K內(nèi)核,初始化時(shí)建立副本關(guān)系DRM-K—>BMB,并且建立HASH驗(yàn)證機(jī)制。同時(shí)SMT、MMB和BMB 3部分內(nèi)存頁(yè)表都置為非置換方式,避免內(nèi)存頁(yè)置換出去,導(dǎo)致系統(tǒng)性能降低。內(nèi)核采用保護(hù)方式不一樣,分為兩種初始化過程:

1) SAPM-K初始化建立SAPM-K—>MMB映射關(guān)系,逐一將SAPM-K[i]—>MMB[i]邏輯塊建立映射關(guān)系。同時(shí)建立SMT[i]={OMB[i],MMB[i],標(biāo)識(shí)}映射表。

2) DRM-K內(nèi)核初始化:GOS的DRM-K內(nèi)核劃分多個(gè)DRM-K[i]邏輯塊并進(jìn)行HASH,將HASH值—>BMB備份內(nèi)存,作為后期判斷DRM-K內(nèi)存KI破壞的依據(jù),建立副本關(guān)系DRM-K—>BMB,BMB為KI內(nèi)存,作為后續(xù)DRM-K內(nèi)存完整性破壞時(shí)進(jìn)行恢復(fù)使用。

2.2 SAPM方式

如圖2所示,GOS通過SAPM方式訪問內(nèi)存分為兩種情況:一種安全訪問;一種通用訪問。通用訪問就是找到GOS對(duì)應(yīng)的SMT項(xiàng),則遵循原有內(nèi)存訪問模式GOS—>SPT—>SAPM-K,訪存流程不變。而安全訪問過程GOS—>SPT—>SMT—>MMB。GOS訪問物理內(nèi)存,通過SPT頁(yè)表,查找訪問SMT;判斷SMT[i].標(biāo)識(shí)狀態(tài),若SMT[i].標(biāo)識(shí)=LOCK,則等待解鎖之后才訪存;若SMT[i].標(biāo)識(shí)=USE&SAFE,則表示安全訪問MMB[i]內(nèi)存;若SMT[i].標(biāo)識(shí)= USE& NORMAL,則表示通用訪問OMB[i]內(nèi)存。

圖2 SAPM保護(hù)方式下的內(nèi)存訪問

算法1:SAPM方式保護(hù)KI算法

頁(yè)表查找GOS—>SPT.

頁(yè)表訪存SPT—>SMT.

if SMT[i].標(biāo)識(shí) = LOCK then

WAIT.

else if (SMT[i].標(biāo)識(shí) = USE) then

if(SMT[i].標(biāo)識(shí) = SAFE)then

獲取SMT[i].MMB[i]地址.

安全訪問MMB[i]內(nèi)存.

else if(SMT[i].標(biāo)識(shí) = NORMAL)then

獲取SMT[i]. OMB[i]地址.

通用訪問OMB[i]內(nèi)存.

else

錯(cuò)誤

2.3 DRM方式

GOS不通過認(rèn)證直接訪問DRM-K內(nèi)核,帶有惡意代碼或數(shù)據(jù)直接訪問OMB,導(dǎo)致KI被破壞。DRM內(nèi)核初始化及DRM內(nèi)核模塊加載過程中,DRM-K內(nèi)核的OMB內(nèi)存都做恢復(fù)備份和HASH。TWPos的DRM保護(hù)方式下,探測(cè)到rootkits攻擊進(jìn)行恢復(fù)內(nèi)核線程對(duì)OMB內(nèi)存做周期性校驗(yàn),如圖3所示,檢查KI是否被破壞,若KI未破壞,則進(jìn)入下一個(gè)周期檢查,否則BMB內(nèi)存進(jìn)行恢復(fù)(見恢復(fù)算法2)。

圖3 DRM保護(hù)方式下,探測(cè)到rootkits攻擊進(jìn)行恢復(fù)

DRM方式恢復(fù)邏輯塊OMB[i]算法如下:

1) 周期HASH驗(yàn)證,TWPos的內(nèi)核線程對(duì)OMB[i]邏輯塊進(jìn)行HASH,值標(biāo)記為:HASH[dest]。從BMB[i]內(nèi)存獲取OMB[i]初始化HASH值,標(biāo)記為:HASH[Orig]。HASH[Orig]和HASH[dest]進(jìn)行匹配,若匹配則表明OMB[i]的KI未破壞,若不匹配則表明OMB[i]的KI被破壞。

2) 定時(shí)周期校驗(yàn)與恢復(fù)交互,定時(shí)周期校驗(yàn)?zāi)K發(fā)現(xiàn)KI被破壞,則向恢復(fù)模塊發(fā)送恢復(fù)指令標(biāo)記為CMD[rec],等到恢復(fù)模塊恢復(fù)KI結(jié)束之后,向定時(shí)周期校驗(yàn)?zāi)K發(fā)送恢復(fù)完成指令,標(biāo)記為CMD[resp]。

3) KI恢復(fù),恢復(fù)模塊收到CMD[rec]指令,讀取BMB[i],執(zhí)行探測(cè)恢復(fù)BMB[i]—>OMB[i]。

算法2:恢復(fù)算法

創(chuàng)建周期檢測(cè)線程。

for OMB[i]且?i∈{1,2,…,n} do

HASH邏輯塊OMB[i]—>HASH[dest]。

獲取BMB[i]初始化值HASH[Orig]。

if HASH[Orig] ≠ HASH[dest] then

CMD[rec]—>恢復(fù)模塊.

LOCK—> OMB[i].

恢復(fù)關(guān)系BMB[i]—>OMB[i] .

UNLOCK—> OMB[i].

CMD[resp]—>定時(shí)周期檢測(cè)模塊.

else

OMB[i]的KI未破壞.

等待下一個(gè)檢測(cè)周期

表1 通過現(xiàn)有內(nèi)核rootkits攻擊TWPos系統(tǒng),防護(hù)情況

3 實(shí)驗(yàn)及其分析

TWPos系統(tǒng)實(shí)驗(yàn)及其分析側(cè)重兩種方面:1) 防護(hù)能力;2) 系統(tǒng)性能。實(shí)驗(yàn)環(huán)境:Dell PowerEdge T310、2.4 G主頻、Intel Xeon X3430、4 GB內(nèi)存,Xen[16]hypervisor基于3.4.2版本,dom0系統(tǒng)為Fedora 12,使用64位Ubuntu、內(nèi)核為2.6.24作為客戶機(jī)OS。

防護(hù)能力:采用現(xiàn)有內(nèi)核rootkits攻擊工具[17-23]對(duì)插入TWPos模塊的系統(tǒng)進(jìn)行攻擊,測(cè)試結(jié)果如表1所示。插入模塊修改控制流程、全局變量、修改或注入調(diào)用表或中斷表等,從而達(dá)到隱藏或篡改操作系統(tǒng)目的。實(shí)驗(yàn)表明TWPos能夠有效防止現(xiàn)有內(nèi)核rootkits攻擊,保護(hù)內(nèi)核的完整性。表2通過幾種探測(cè)和防護(hù)系統(tǒng)的比較,可看出TWPos系統(tǒng)是一個(gè)全面綜合防御系統(tǒng),包括對(duì)控制流、代碼、數(shù)據(jù)完整性進(jìn)行全面保護(hù),克服單一防護(hù)模式的弱點(diǎn),其他探測(cè)與防御系統(tǒng)對(duì)控制流、代碼、數(shù)據(jù)完整性行只能保護(hù)其中一種或兩種,不能全面有效的防護(hù)。

表2 TWPos與其他內(nèi)核完整性探測(cè)和防護(hù)系統(tǒng)的對(duì)比

性能影響:采用XEN作為性能測(cè)試基準(zhǔn),Lmbench[10]作為測(cè)試性能工具,測(cè)試并分析系統(tǒng)各參數(shù)及TWPos系統(tǒng)對(duì)性能的影響。

SAPM方式和DRM方式性能對(duì)比:DRM方式獲得最佳性能:最合理邏輯塊切分粒度4K和最優(yōu)檢測(cè)周期15 ms,與SAPM方式比較,內(nèi)核比例分配:SAPM-K內(nèi)核占有60%,DRM-K內(nèi)核占有40%,圖4表明了SAPM方式比DRM方式性能更好,只要SAPM方式能夠防護(hù),盡可能采用SAPM方式。TWPos系統(tǒng)整體性能介于SAPM方式和DRM方式之間。

TWPos系統(tǒng)對(duì)應(yīng)用程序的影響:應(yīng)用程序訪存過程:應(yīng)用程序—>系統(tǒng)調(diào)用—>GOS內(nèi)核虛擬地址—>GOS內(nèi)核物理地址—>TWPos—>VMM—>物理內(nèi)存。盡管TWPos只對(duì)內(nèi)核完整性進(jìn)行保護(hù),但TWPos在兩個(gè)方面可能對(duì)應(yīng)用程序性能造成影響:1) 應(yīng)用程序的系統(tǒng)調(diào)用需要訪問內(nèi)核,那么就要訪問TWPos安全模塊;2) DRM方式的內(nèi)核線程周期檢測(cè)DRM-K內(nèi)存,對(duì)系統(tǒng)性能造成影響。圖5表明TWPos系統(tǒng)對(duì)應(yīng)用程序性能影響很小。主要基于如下原因:1) 由于TWPos采用了內(nèi)存映射而摒棄仲裁技術(shù),內(nèi)存映射機(jī)制對(duì)系統(tǒng)性能產(chǎn)生輕微的影響,不會(huì)導(dǎo)致系統(tǒng)性能嚴(yán)重下降;2) DRM的內(nèi)核檢測(cè)線程盡管周期掃描DRW-K內(nèi)存,但是只有在內(nèi)核被篡改或注入代碼時(shí),內(nèi)核完整性遭到破壞進(jìn)行恢復(fù)才會(huì)導(dǎo)致系統(tǒng)性能下降,其它時(shí)候?qū)ο到y(tǒng)性能不造成影響。

TWPos系統(tǒng)對(duì)內(nèi)核程序的影響:圖6呈現(xiàn)了TWPos對(duì)系統(tǒng)性能的影響,導(dǎo)致系統(tǒng)性能下降的主要原因是訪存過程中建立和查找對(duì)應(yīng)的SMT映射。Fork進(jìn)程和Exec任務(wù)都需要建立棧對(duì)象,對(duì)棧進(jìn)行映射處理。Insmod插入模塊對(duì)系統(tǒng)性能的影響主要是SMT映射的建立,并做內(nèi)存?zhèn)浞?。file copy(FC)開銷主要是SMT映射函數(shù)地址的查找,而實(shí)際文件內(nèi)容訪問(讀寫)并沒有增加系統(tǒng)開銷。Apache主要針對(duì)協(xié)議棧代碼完整性保護(hù)導(dǎo)致系統(tǒng)開銷。TWPos對(duì)系統(tǒng)額外開銷很少,主要開銷在于SMT映射。TWPos系統(tǒng)對(duì)性能的影響主要是SMT導(dǎo)致的,訪問內(nèi)容不會(huì)降低系統(tǒng)性能。圖6表明了TWPos系統(tǒng)比SecVisor和NICKLE系統(tǒng)性能好,無論系統(tǒng)接口調(diào)用、內(nèi)核模塊加載還是內(nèi)核程序執(zhí)行,TWPos都體現(xiàn)出優(yōu)越的性能,主要由于TWPos摒棄仲裁技術(shù)而采用內(nèi)存映射機(jī)制,并且將OMB內(nèi)存切分多個(gè)邏輯塊進(jìn)行快速恢復(fù)。

圖4 SAPM與DRM性能對(duì)比

圖5 TWPos和XEN性能對(duì)比

圖6 TWPos與XEN、SecVisor和NICKLE內(nèi)核程序性能對(duì)比

4 結(jié) 論

本論文基于VMM虛擬技術(shù),呈現(xiàn)TWPos的設(shè)計(jì)、實(shí)現(xiàn)及其TWPos實(shí)驗(yàn)分析,表明了TWPos不僅能夠全面高效自動(dòng)探測(cè)和防護(hù)確保內(nèi)核完整性,同時(shí)兼容多操作系統(tǒng)。因此TWPos可以廣泛應(yīng)用于商業(yè)領(lǐng)域。

[1] NGUYEN A Q, YOSHIYASU T. Towards a tamper resistant kernel rootkit detector[C]//Proceedings of the 2007 ACM Symposium on Applied Computing. Seoul, Korea: ACM, 2007.

[2] PETRONI N, FRASER T, MOLINA J, et al. Copilot: a coprocessor-based kernel runtime integrity monitor[C]// Proceedings of the 13th USENIX Security Symposium. San Diego, USA: Springer, 2004.

[3] PETRONI J N L, FRASER T, WALTERS A, et al. An architecture for specification-based detection of semantic integrity violations in kernel dynamic data[C]//Proceedings of the 15th USENIX Security Symposium. Vancouver, Canada: Springer, 2006.

[4] PETRONI J N L, HICKS M. Automated detection of persistent kernel control-flow attacks[C]//Proceedings of the 2007 ACM Conference on Computer and Communications Security. Alexandria, USA: ACM, 2007.

[5] HOFMANN O S, DUNN A M, KIM S, et al. Ensuring operating system kernel integrity with osck[J]. ACM SIGPLAN Notices, 2011, 46(3): 279-290.

[6] SESHADRI A, LUK M, QU Ning, et al. Secvisor: a tiny hypervisor to provide lifetime kernel code integrity for commodity oses[J]. ACM SIGOPS Operating Systems Review, 2007, 41(6): 335-350.

[7] LITTY L, LAGAR-CAVILLA H A, LIE D. Hypervisor support for identifying covertly executing binaries[C]// Proceedings of the 17th USENIX Security Symposium. California, USA: Springer, 2008: 243-258.

[8] RILEY R, JIANG Xu-xian, XU Dong-yan. Guesttransparent prevention of kernel rootkits with vmm-based memory shadowing[C]//the 11th International Symposium on Recent Advances in Intrusion Detection. Cambridge, USA: Springer, 2008.

[9] WANG Zhi, JIANG Xu-xian, CUI Wei-dong, et al. Countering kernel rootkits with light weight hook protection [C]//16th ACM Conference on Computer and Communications Security. New York, USA: ACM, 2009.

[10] Sourceforge site. Lmbench[R/OL]. [2014-03-19]. http:// sourceforge.net/ projects/lmbench/.

[11] LI Jin-ku, WANG Zhi, BLETSCH T, et al. Comprehensive and efficient protection of kernel control data[J]. IEEE Transactions Information Forensics and Security, 2011, 6(4): 1404-1417.

[12] SZEFER J, LEE R B. Architectural support for hypervisor-secure virtualization[J]. ACM SIGARCH Computer Architecture News, 2012, 40(1): 437-450.

[13] WANG Zhi, WU C, GRACE M, et al. Isolating commodity hosted hypervisors with HyperLock[C]//ACM European Conference on Computer Systems. New York, USA: ACM, 2012.

[14] DANIEL P. Berrangé. Virtual machine manager[R/OL]. [2014-03-29]. http://virt-manager.org/.

[15] BALIGA A, GANAPATHY V, IFTODE L. Automatic inference and enforcement of kernel data structure invariants[C]//the 2008 Annual Computer Security Applications Conference. Washington, USA: IEEE, 2008.

[16] Xen Project. Xen[R/OL]. [2014-04-19]. http://www. xen.org/.

[17] OpenWall Organization. Adore-ng[R/OL]. [2014-04-19]. http://stealth. openwall.net/rootkits/.

[18] Fr33project. Enyelkm[R/OL]. [2014-04-19]. http://www. Fr33project. org/pages/projects/enyelkm.htm.

[19] Codeforge webset. Sk2rc2[R/OL]. [2014-04-19]. http:// www.codeforge.com/ s/3/sk2rc2-code.

[20] Superkit international company. Superkit[R/OL]. [2014-04-19]. http://www.superkit.com/.

[21] Open code lib. Mood-nt[R/OL]. [2014-04-19]. http:// darkangel.antifork. org/codes/.

[22] Moodledoc site. Override[R/OL]. [2014-04-19]. http:// docs.moodle.org/23/en/Override_permissions.

[23] Sebek project site. Sebek[R/OL]. [2014-04-19]. https:// projects.honeynet.org/sebek.

編 輯 葉 芳

Protection of Kernel Integrity with Two-Mode Protection Operation System

HE Jin, FAN Ming-yu, and WANG Guang-wei

(School of Computer Science and Engineering, University of Electronic Science and Technology of China Chengdu 611731)

Kernel-level rootkits attacks pose a deadly threat to kernel integrity, and kernel rootkits is currently a research focus, primarily focused on kernel-level rootkits detection and rootkits protection. However, these studies are always flawed: the rootkits protection presents a single protected mode; kernel-level rootkits detection can only do the detection use, even if the kernel has been found to be attacked, there is no method to solve. Give this situation, we design a two-mode protection operation system (TWPos), this is, a kernel-level integrity protection method along with detection and protection capability, even if the kernel is already under attack, TWPos also recoveries kernel integrity. The experiments show that TWPos is a comprehensive and effective protection system without sacrificing system performance for the price, and is compatible with a variety of OS systems.

detection recovery mode; kernel integrity; rootkits; safe authentication protection mode; two-mode protection operation system; virtual machine monitoring

TP309

A

10.3969/j.issn.1001-0548.2015.06.017

2014 ? 05 ? 06;

2014 ? 09 ? 19

國(guó)家863項(xiàng)目(2009AA01Z435, 2009AA01Z 403);國(guó)家自然科學(xué)基金(60373109, 60272091)

何進(jìn)(1977 ? ),男,博士,主要從事操作系統(tǒng)安全、虛擬技術(shù)及云安全等方面的研究.

猜你喜歡
內(nèi)核完整性內(nèi)存
萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
稠油熱采水泥環(huán)完整性研究
云南化工(2021年9期)2021-12-21 07:44:00
強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
“春夏秋冬”的內(nèi)存
基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
Linux內(nèi)核mmap保護(hù)機(jī)制研究
莫斷音動(dòng)聽 且惜意傳情——論音樂作品“完整性欣賞”的意義
精子DNA完整性損傷的發(fā)生機(jī)制及診斷治療
樁身完整性檢測(cè)中缺陷的綜合判別
河南科技(2014年18期)2014-02-27 14:14:46
基于內(nèi)存的地理信息訪問技術(shù)
康乐县| 佳木斯市| 乳山市| 米泉市| 宣化县| 东莞市| 榕江县| 靖宇县| 丹阳市| 阿拉尔市| 洪雅县| 乌兰县| 阳新县| 天祝| 合江县| 沭阳县| 中牟县| 泸西县| 成安县| 张家港市| 繁峙县| 石家庄市| 虎林市| 平阴县| 蒙城县| 景宁| 郴州市| 许昌县| 阿荣旗| 顺昌县| 甘南县| 浪卡子县| 七台河市| 北海市| 通山县| 略阳县| 永丰县| 民丰县| 桦川县| 台州市| 永城市|