999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于NT內核操作系統的RootKit的實現

2008-12-31 00:00:00趙曉娟
電腦知識與技術 2008年35期

摘要:介紹了Windows NT平臺下RootKit實現的基本原理及步驟,探討了在Windows平臺下進行Ring0級編程的實現及如何修改安全參考監視器來徹底突破NT的安全防御系統,并給出了整個RootKit的部分核心匯編源代碼。

關鍵詞:RootKit;Windows NT;Ring 0;安全參考監視器

中圖分類號:TP309文獻標識碼:A文章編號:1009-3044(2008)35-2550-03

NT Operating System Kernel Based on the Realization of the RootKit

ZHAO Xiao-juan

(HuNan Urban Construction College,Xiangtan 41110 )

Abstract: Introduced the Windows NT platform RootKit to achieve the basic principles and steps on the Windows platform under Ring0-level programming to achieve security and how to modify the reference to thoroughly monitor the safety of NT breakthrough defense system, and gives the whole RootKit The core part of the compilation of source code.

Keywords: rootkit; windows NT; ring 0; security reference monitor

1 引言

Rootkit最初指被修改和重新編譯后用來隱藏入侵者活動痕跡的一組Unix 工具(典型的工具有ps、netstate 和passwd)。現在,Rootkit 是入侵者或非法的黑客為了隱藏它存在的痕跡和使用其系統而執行未經許可的功能,用來破壞計算機獲取目錄使用權的一套軟件工具。Rootkit的存在可追溯到上個世紀90年代初,那時Solaris 和Linux 操作系統是Rootkit主要的攻擊對象。而現在Rootkit不再局限于像Unix這樣的系統,其他的操作系統,如Microsoft Windows也已成為入侵者的目標。

RootKit的目的是保留持續的系統訪問權和在計算機中隱藏自己, 它可以通過兩種不同層次來實現,一種是修改或者替換和包裝系統中用戶包括管理員運行的可執行文件和庫文件,在操作系統的用戶態下執行, 這種方式的被稱為“ 用戶模式” 另一種是控制和修改操作系統內核,運行在操作系統的內核態,這種方式是“ 內核模式”。[1]

Windows 下應用程序有自己的地址空間,只能調用自己地址空間中的函數,所以,在掛鉤API函數之前,必須將一個可以替代API 執行的函數的執行代碼注入到目標進程,然后再想辦法將目標進程對該API 的調用改為對注入到目標進程中自定義函數的調用。[2]

2 NT的安全保護措施

2.1 基于網絡的安全與Windows NT信任域

NT內核中有一個執行組件叫做安全參考監視器(SRM)。在DoD的紅皮書中也已定義了一個“安全參考監視器”。在紅皮書中,一個安全域被一個單一的實體所管理。

“一個單一的信任系統猶如一個單一的實體一樣,通過一個單一的信任證據所接受。一個單一信任系統網絡執行相關的參考監視器來加強對對象訪問時所應遵循的清晰的和良好定義的網絡安全政策。[2]”

以上描述在NT中就是主域控制器(PDC),記住每一個系統都有本地安全和域安全。PDC的安全參考監視器負責管理域內的所有對象,與此同時,它創建了一個單一的控制點,和一個單一信任系統網絡。

2.2 如何侵犯系統的完整性

DoD紅皮書定義了“信任處理基礎”(TCB)。在Windows NT中使用安全特權SE_TCB_PRIVILEGE指令和“擔當操作系統一部分”的用戶權利非常相似,可以通過使用管理員權限來將這個安全特權添加給某一個用戶。

如果有權擔當TCB的一部分,幾乎可以做任何事情。現在在進程和剩下系統之間幾乎沒有安全措施。如果TCB不再被信任了,那么整個網絡系統的完整性也已受到攻擊。將要展示的就是這樣的一個例子,如果它被安裝在一個工作站上,就會侵犯一個網絡分區。如果它被安裝在主域控制器上,將會侵犯整個網絡的完整性。

在一個相同的主機里,可能擁有兩個唯一的區域:TCB在傳統的紅皮書里被評價為受信任處理基礎和NTCB。這些分區沒有必要相互交迭,但是可以這樣做。如果任何的一個組件被侵犯了,那么看上去其他的也同樣被侵犯了。換句話說,如果一臺主機受到了危害,那么NTCB可能也受到了危害。

很顯然,只有管理員才能在TCB上安裝一個補丁,或擁有安裝設備驅動程序的能力。為了使木馬或病毒正常的執行,依靠某人的知識來安裝這些補丁是很簡單的事情。

2.3 NT下Ring0特權級保護機制

Windows操作系統運行在保護模式下,嚴格將用戶權限分為內核模式和用戶模式[3]。在Win9X和Windows NT操作系統中,為了充分利用虛擬空間并保證多任務的正常運行,應用程序都運行在保護模式。為了管理臨界段資源,系統使用了特權級的概念。Intel X86處理器支持四個特權級,即Ring0 級到Ring3級。但Windows操作系統只使用了其中兩個特權級:Ring0 作為“內核模式”,Ring3 作為“用戶模式”。Ring0 級是最高等級的特權級, 所有內核狀態執行線程在這一級執行,這就有效地保護了操作系統不受任何應用程序的損害。而所有應用程序都在Ring3 特權級內運行,這樣可以避免影響系統內核的運行。

2.4 安全參考監視器

安全參考監視器負責加強訪問控制。在NT下,所有的SRM函數都由ntoskrnl。exe傳遞。如果這些代碼的完整性受到了侵犯,那么安全參看監視器也不再是受信任的了。整個安全系統就等于失敗了。安全參考監視器負責對任何對象的訪問提出同意或否定。它參考一個進程表來獲取當前運行進程的訪問令牌。然后它會比較訪問令牌和對象的訪問需求。每個對象都有一個安全描述(SD)。比較這兩個結構,SRM就可以拒絕或允許訪問這個對象。

參考確認機制必須面對的三個設計需求條件:1)參考確認機制必須提供篡改證據;2)參考確認機制必須總是被調用;3)參考確認機制必須足夠小到經受起分析和測試,它的完全性必須被確認。

安全參考監視器不能提供篡改證據。它可能被TCB安全特權所保護,但是真正的能提供篡改證據的SRM應該使用加密機制。使用一個攻擊工具如病毒或木馬,一個補丁可以輕易的在TCB的環境下被安裝。

如果對存儲器映射有訪問權限,可以修改安全參考監視器。這樣,可以插入一個特別的用戶ID可以隨時訪問的后門,這只是一個可以運用到NT RootKit中的一個小技巧。

3 NT平臺上RootKit的實現

3.1 RootKit實現步驟

1) 插入無效的數據。無效的數據可以被插入到任何的網絡流中,同樣可以插入一些錯誤數據到固定的存儲系統中,可能是敏銳的時間信息等,這樣可能會破壞系統的備份。這樣將會侵犯系統的可靠性和完整性。

2) 修改進入的ICMP數據報。使用ICMP作為隱藏的渠道,補丁可以讀取進入到核心的ICMP數據報內部的命令。

3) 修改進入的以太網數據報。在不使用任何驅動組件的情況下擔當嗅探器的角色。如果它已經修改了以太網,那么同樣可以發送/接收與外網的數據報。它還可以嗅探秘密的關鍵字。

4) 修改已經存在的動態鏈接庫,比如wininet.dll,追蹤進入的數據。

5) 修改入侵檢測系統。它可以修改如Tripwire或RealSecure等程序來破壞它們的完整性。

6) 修改審核系統,如系統事件日志來忽略一些事件日志消息。

3.2 獲得Ring 0特權

在Windows NT下,普通用戶沒有直接寫物理內存的權限\"因此不能直接修改GDT或IDT。要獲取Ring 0 權限,首先要求用戶有寫物理內存的權限,然后修改GDT,構造一個調用門,最后訪問該調用門,執行Ring 0 代碼[4]。 實現思路如下:

1) 使用戶可讀寫\\Device\\PhysicalMemory對象GDT位于內核區域, 普通Ring 3 級應用程序無權直接訪問該內存區域,Windows NT提供了一個名為PhysicalMemory 的Section對象, 通過該對象可以讀寫物理內存。通過分析,正常情況下只有SYSTEM用戶才有對該對象的讀寫權限,administrator用戶只有讀權限。要使特定普通用戶有寫該對象的權限,需要以administrator用戶身份增加另一個訪問控制列表(ACL)到\\Device\\PhysicalMemory對象:首先打開一個\\Device\\PhysicalMemory對象的句柄并獲得其安全描述符(GetSecurityInfo),接著在當前ACL中增加讀寫權限(SetEntriesInAcl),最后更新安全描述符(Set-SecurityInfo)。

2) 構造調用門:根據ntddk.h中的定義,當selector=8時,該調用門指向的處理代碼以Ring 0 權限運行。函數地址低16位和函數地址高16位分別為Ring 0 代碼的地址的高低16位。 Dpl位為調用該門的代碼的最低權限,應設為3,present應設為1,表明該調用門可用。

3) 將調用門寫入GDT中:從GDT尾部開始循環查找GDT中每一項,當找到一個不存在的描述符 (paresent=0)時停止,并將該描述符的各項修改為前面構造的調用門結構。

4) 訪問調用門,運行Ring 0 代碼:常規訪問該調用門的方法不可行\"因為當前應用程序運行在用戶態,即Ring 3 級必須通過遠調用far call來訪問該調用門。

3.3 核心代碼實現

首先對函數SeAccessCheck()進行逆向分析,通過使用IDA對函數進行了反匯編,部分代碼如下所示。

8019A20C push [ebp+arg_24]

8019A20F push [ebp+arg_14]

8019A212 push edi

8019A213 push [ebp+arg_1C]

8019A216 push [ebp+arg_10]

8019A219 push [ebp+arg_18]

8019A21C push ebx

8019A21D push dword ptr [esi]

8019A21F push dword ptr [esi+8]

8019A222 push [ebp+arg_0]

8019A225 call sub_80199836

8019A22A cmp [ebp+arg_8], 0

8019A22E mov bl, al

8019A230 jnz short loc_8019A238

8019A232 push esi

8019A233 call SeUnlockSubjectContext

8019A238 mov al, bl

8019A23A pop edi

8019A23B pop esi

8019A23C pop ebx

8019A23D pop ebp

8019A23E retn 28h

8019A23E SeAccessCheck endp

子程序被SeAccessCheck所調用。大多數的工作都是在此完成,因此對該函數進行了修改。

80199AD3 mov [ebp+var_C], 0

80199ADA add esi, 8

80199ADD cmp [ebp+var_10], 0

80199AE1 jz loc_80199B79

80199AE7 test edi, edi ;

80199AE9 jz loc_80199B79

80199AEF test byte ptr [esi+1], 8

80199AF3 jnz short loc_80199B64

80199AF5 mov al, [esi]

80199AF7 test al, al

80199AF9 jnz short loc_80199B14

80199AFB lea eax, [esi+8]

80199AFE push eax

80199AFF push [ebp+var_8]

80199B02 call sub_801997C2

80199B07 test al, al

80199B09 jz short loc_80199B64

80199B0B mov eax, [esi+4]

80199B0E not eax

80199B10 and edi, eax

80199B12 jmp short loc_80199B64

4 總結

介紹了RootKit技術及Windows NT平臺如何實現RootKit,探討了NT平臺的安全措施,以及繞過安全措施的方法。給出了具體實現RootKit的思路及方法,并給出了部分核心匯編代碼。隨著Windows平臺安全性的提升,要實現RootKit也越來越難,但是越是難以實現的RootKit,一旦實現了就越具有隱蔽性,因此對RootKit技術的探討有助于信息安全技術的不斷更新與發展。

參考文獻:

[1] 雷校勇,黃小平.Windows RootKit技術原理及防御策略[D].上海:上海交通大學,2006.

[2] 程彥,楊建召.Win32 中API攔截技術及其應用[J].長春工業大學學報:自然科學版,2006(04):99-101.

[3] 黃華星,舒輝,謝余強,等.Win32下ring0級保護機制的安全隱患研究 [A].全國網絡與信息安全技術研討會2004論文集[C],2004.

[4] 唐俊.一種基于行為的RootKit檢測方法[J].計算機與數字工程,2008(9):32-34.

主站蜘蛛池模板: 91麻豆精品国产91久久久久| 国产精品网址你懂的| 中文字幕在线日本| 成年av福利永久免费观看| 亚洲精品无码不卡在线播放| www.精品国产| 天堂va亚洲va欧美va国产| 亚洲成在人线av品善网好看| 日本黄色a视频| 久久精品无码国产一区二区三区| 9966国产精品视频| 婷五月综合| 亚洲男人的天堂网| 亚洲欧美自拍视频| 国产真实乱子伦视频播放| 五月婷婷欧美| 国产交换配偶在线视频| 久久精品国产精品青草app| 色天天综合久久久久综合片| 国产精品久久久久久搜索| 国产成人av一区二区三区| 国产男女免费完整版视频| 亚洲精品中文字幕午夜 | 四虎影视国产精品| 精品一区二区三区四区五区| 2018日日摸夜夜添狠狠躁| 久久亚洲国产视频| www亚洲天堂| 国产精品手机在线播放| 免费激情网址| 欧美不卡视频在线观看| 日韩av无码DVD| 97成人在线视频| 亚洲大尺码专区影院| 理论片一区| 免费在线色| 国产极品美女在线观看| 久久伊人操| 九九热在线视频| 亚洲综合日韩精品| 欧美一区日韩一区中文字幕页| 久久精品无码国产一区二区三区 | 国产精品私拍在线爆乳| 欧美成人怡春院在线激情| 亚洲天堂网2014| 日韩a级片视频| 天天色综合4| 欧美19综合中文字幕| 全部免费特黄特色大片视频| 亚洲欧洲自拍拍偷午夜色| 尤物亚洲最大AV无码网站| 亚洲侵犯无码网址在线观看| 色久综合在线| 欧美国产日产一区二区| 国产无码高清视频不卡| 91精品福利自产拍在线观看| 2021天堂在线亚洲精品专区| 亚洲日韩在线满18点击进入| 美女一级毛片无遮挡内谢| 精品中文字幕一区在线| 激情六月丁香婷婷四房播| 国产亚洲视频中文字幕视频| 国产亚洲高清视频| 久久免费精品琪琪| 国产精品免费电影| 久久黄色小视频| 亚洲精品高清视频| 老司机午夜精品网站在线观看| 91青青草视频| 久久亚洲精少妇毛片午夜无码 | 色九九视频| 一级毛片免费高清视频| 亚洲动漫h| 久久国产黑丝袜视频| 精品三级在线| 中文字幕永久视频| 国产精品深爱在线| 超清无码熟妇人妻AV在线绿巨人| 午夜不卡福利| 日韩欧美国产另类| 日韩中文字幕亚洲无线码| 农村乱人伦一区二区|