<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      用戶態(tài)的RootKit

      ??惡意代碼經(jīng)常不遺余力地對(duì)用戶隱藏它的生存機(jī)制和正在運(yùn)行的進(jìn)程。 常用來隱藏惡意代碼行為的工具被稱為Rootkit。

      ??Rootkit有多種存在形式,但是大部分Rootkit通過修改操作系統(tǒng)內(nèi)部的功能來工作。 這種修改可以使惡意代碼的文件、進(jìn)程、網(wǎng)絡(luò)連接以及其他資源對(duì)其他程序隱藏,這也使得反病毒產(chǎn)品、管理員以及安全分析人員難以發(fā)現(xiàn)它們的惡意活動(dòng)。 

      ??IAT Hook是用戶空間中一種經(jīng)典的Rootkit方法,這種掛鉤方法通過修改導(dǎo)入地址表(IAT)實(shí)現(xiàn)。

      ??通常情況下,程序通過IAT里記錄的函數(shù)地址,訪問Kernel32.dll中的目標(biāo)函數(shù)。但是,如果植入了IAT Hook,原來的目標(biāo)函數(shù)在IAT中記錄的函數(shù)地址將會(huì)被修改為惡意代碼的地址。這樣,在程序執(zhí)行時(shí),當(dāng)調(diào)用被鉤子的函數(shù)時(shí),實(shí)際上會(huì)執(zhí)行惡意代碼函數(shù)。惡意代碼執(zhí)行完后,一般會(huì)跳轉(zhuǎn)去源代碼真正想要調(diào)用的函數(shù)地址,以來掩飾惡意行為。

      ??IAT Hook的步驟通常包括以下幾個(gè)步驟:

      ??1)獲取目標(biāo)函數(shù)的地址:通過遍歷模塊的導(dǎo)入表,找到目標(biāo)函數(shù)在DLL中的地址。

      ??2)保存原始函數(shù)地址:將目標(biāo)函數(shù)的地址保存下來,以便后續(xù)恢復(fù)。

      ??3)修改IAT表項(xiàng):將目標(biāo)函數(shù)在IAT中對(duì)應(yīng)的函數(shù)指針修改為自定義函數(shù)的地址。

      ??4)實(shí)現(xiàn)自定義函數(shù):編寫自定義的函數(shù),該函數(shù)會(huì)在被鉤子函數(shù)被調(diào)用時(shí)執(zhí)行。

      ??5)調(diào)用原始函數(shù):在自定義函數(shù)中,可以選擇是否調(diào)用原始的被鉤子函數(shù)。

      ??進(jìn)程注入,即將代碼注入到另外一個(gè)正在運(yùn)行的進(jìn)程中,而被注入的進(jìn)程不知情地運(yùn)行注入的代碼。惡意代碼編寫者試圖通過進(jìn)程注入技術(shù)隱藏代碼的行為,有時(shí)他們也試圖使用這種技術(shù)繞過安全機(jī)制。

      ??相關(guān)API函數(shù): LoadLibrary、GetProcAddress

      ??VirtualAllocEx:在另外一個(gè)進(jìn)程中分配一塊內(nèi)存空間。

      ??WriteProcessMemory:用來向VirtualAllocEx函數(shù)分配的地址空間寫數(shù)據(jù)。

      ?? CreateRemoteThread:最核心的函數(shù),在指定進(jìn)程的某個(gè)內(nèi)存位置存儲(chǔ)的函數(shù)為線程函數(shù),啟動(dòng)一個(gè)線程,當(dāng)然被啟動(dòng)的這個(gè)線程屬于指定的這個(gè)進(jìn)程。 

      ??DLL注入是進(jìn)程注入的一種形式。可以簡單理解DLL注入就是讓目標(biāo)程序強(qiáng)行加載給定的dll,并執(zhí)行dll的代碼;惡意dll權(quán)限提升。 

      受害進(jìn)程句柄
      hVictimProcess = OpenProcess(PROCESS_ALL_ACCESS, o, victimProcessID O);
      分配內(nèi)存空間、寫入惡意dll的名字
      pNameInVictimProcess = VirtualAllocEx(hVictimProcess,...,sizeof(maliciousLibraryName),...,...); 
      WriteProcessMemory(hVictimProcess,...,maliciousLibraryName, sizeof(maliciousLibraryName),...);
      GetModuleHandle("Kernel32.dll");
      GetProcAddress (..., "LoadLibraryA");獲取LoadLibrary的地址
      CreateRemoteThread(hVictimProcess,...,...,LoadLibraryAddress,pNameInVictimProcess,...,...);
      三個(gè)重要參數(shù):受害進(jìn)程句柄、LoadLibrary地址、指向惡意dll名字字符串的地址

      ??Inline Hook通過覆蓋導(dǎo)入DLL中APl函數(shù)的代碼來實(shí)現(xiàn)的,所以它必須等到DLL被加載后才能執(zhí)行。IAT Hook只簡單地修改函數(shù)指針,但I(xiàn)nline Hook將修改實(shí)際的函數(shù)代碼。

      ??惡意Rootkit通常用一個(gè)jmp跳轉(zhuǎn)指令替換函數(shù)的開始代碼來執(zhí)行Inline Hook,這個(gè)jmp跳轉(zhuǎn)指令使Rootkit插入的惡意代碼獲取執(zhí)行。 另外,Rootkit還可以通過改變函數(shù)的代碼來破壞它或者改變它,而不是跳轉(zhuǎn)到惡意代碼。 

      posted @ 2024-06-19 18:29  無事閑逛  閱讀(120)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 国产精品美人久久久久久AV| 精品人妻av区乱码| 性视频一区| 欧美日产国产精品日产| 无码人妻一区二区三区线| 亚洲旡码欧美大片| 久久96国产精品久久久| 国产精品九九九一区二区| 欧美人成精品网站播放| 一本大道久久香蕉成人网| 国产精品v欧美精品∨日韩| 国产精品尤物乱码一区二区| 日韩人妻无码精品久久| 亚洲偷自拍国综合| 高级艳妇交换俱乐部小说 | 欧美激情一区二区久久久| 国产精品免费看久久久| 国产老妇伦国产熟女老妇高清| 天天躁日日躁狠狠躁性色avq| 九九热精品在线视频免费| 亚洲综合精品一区二区三区 | 久久人与动人物a级毛片| 高清自拍亚洲精品二区| 国产又爽又大又黄a片| 国产一区二区在线观看粉嫩 | 无码精品人妻一区二区三区中| 国产精品免费视频不卡| 国精品91人妻无码一区二区三区 | 国产精品一区二区三区三级| 无码日韩精品一区二区三区免费| 老鸭窝在线视频| 噜噜噜亚洲色成人网站∨| 国产精品一区中文字幕| 天堂网av成人在线观看| www射我里面在线观看| 免费无码中文字幕A级毛片| 国内精品自国内精品自久久| 亚洲三级香港三级久久| 亚洲综合伊人久久大杳蕉| 国产高清亚洲一区亚洲二区 | 老太脱裤子让老头玩xxxxx|