freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

計(jì)算機(jī)病毒結(jié)構(gòu)分析(1)-資料下載頁

2025-01-06 09:13本頁面
  

【正文】 eader結(jié)構(gòu)大小,必須為有效值。 Characteristics 關(guān)于文件信息的標(biāo)記,比如文件是 exe還是 dll。 注: ? 節(jié)、節(jié)表和 NumberOfSections的關(guān)系 ? 節(jié)表數(shù)組邊界確定 NumberOfSections 全0標(biāo)示 (4) Optional Header ? Optional Header是 PE header中最后,最大,也是最重要的成員,包含了 PE文件的邏輯分布信息。該結(jié)構(gòu)共有 31個(gè)域。 ? 虛擬地址 (VA——Virtual Address) ? RVA( Relative Virtual Address,相對虛擬地址) 域名 含義 AddressOfEntryPoint PE裝載器準(zhǔn)備運(yùn)行的 PE文件的第一個(gè)指令的 RVA。若您要改變整個(gè)執(zhí)行的流程,可以將該值指定到新的 RVA,這樣新 RVA處的指令首先被執(zhí)行。 ImageBase PE文件的優(yōu)先裝載地址。比如,如果該值是 400000H, PE裝載器將嘗試把文件裝到虛擬地址空間的 400000H處。若該地址區(qū)域已被其他模塊占用,那 PE裝載器會(huì)選用其他空閑地址。 SectionAlignment 內(nèi)存中節(jié)對齊的粒度。例如,如果該值是 4096 (1000H),那么每節(jié)的起始地址必須是 4096的倍數(shù)。若第一節(jié)從 401000H開始且大小是10個(gè)字節(jié),則下一節(jié)必定從 402022H開始,即使 401000H和 402022H之間還有很多空間沒被使用。 FileAlignment 文件中節(jié)對齊的粒度。含義類似 SectionAlignment。 MajorSubsystemVersion MinorSubsystemVersion Win32系統(tǒng)版本。 SizeOfImage 內(nèi)存中整個(gè) PE映像體的尺寸。它是所有頭和節(jié)經(jīng)過節(jié)對齊處理后的大小。 SizeOfHeaders 所有頭 +節(jié)表的大小,也就等于文件尺寸減去文件中所有節(jié)的尺寸??梢砸源酥底鳛?PE文件第一節(jié)的文件偏移量。 Subsystem NT用來識別 PE文件屬于哪個(gè)子系統(tǒng)。對于大多數(shù) Win32程序,只有兩類值 : Windows GUI 和 Windows CUI (控制臺(tái) )。 DataDirectory IMAGE_DATA_DIRECTORY 結(jié)構(gòu)數(shù)組。每個(gè)結(jié)構(gòu)給出一個(gè)重要數(shù)據(jù)結(jié)構(gòu)的 RVA,比如引入地址表等。 ( 5)節(jié)表 (Section Table) ? Section Table是用來索引節(jié)的數(shù)組結(jié)構(gòu),其詳細(xì)表示為: – IMAGE_SIZEOF_SHORT_NAME equ 8 – IMAGE_SECTION_HEADER STRUCT ? Name db IMAGE_SIZEOF_SHORT_NAME dup(?) ? union Misc – PhysicalAddress dd – VirtualSize dd ? Ends ? VirtualAddress dd ? SizeOfRawData dd ? PointerToRawData dd ? PointerToRelocations dd ? PointerToLinenumbers dd ? NumberOfRelocations dw ? NumberOfLinenumbers dw ? Characteristics dd – IMAGE_SECTION_HEADER ENDS 域名 含義 Name 節(jié)名長不超過 8字節(jié)。節(jié)名僅僅是個(gè)標(biāo)記而已,可以選擇任何名字甚至空著也行。節(jié)名不是一個(gè) ASCII字符串,所以不用 null結(jié)尾。 VirtualAddress 本節(jié)的 RVA。 PE裝載器將節(jié)映射至內(nèi)存時(shí)會(huì)讀取該值,如果域值是 1000H,而 PE文件裝在地址 400000H處,那么本節(jié)就被裝載到 401000H。 SizeOfRawData 經(jīng)過文件對齊處理后的節(jié)尺寸。該域值代表需映射入內(nèi)存的字節(jié)數(shù)。(假設(shè)一個(gè)文件的文件對齊尺寸是0x200,如果 VirtualSize域指示本節(jié)長度是 0x388字節(jié),則本域值為 0x400,表示本節(jié)是 0x400字節(jié)長)。 PointerToRawData 節(jié)基于文件的偏移量。 PE裝載器通過該值找到節(jié)數(shù)據(jù)在文件中的位置。 Characteristics 包含標(biāo)記以指示節(jié)屬性。節(jié)是否含有可執(zhí)行代碼、初始化數(shù)據(jù)、未初始數(shù)據(jù),是否可寫、可讀等。 ? PE裝載器的工作步驟 : ? 第一,讀取 IMAGE_FILE_HEADER的 NumberOfSections域,獲取文件的節(jié)數(shù)目; ? 第二, SizeOfHeaders域值作為節(jié)表的文件偏移量,并以此定位節(jié)表; ? 第三,遍歷整個(gè)結(jié)構(gòu)數(shù)組檢查各成員值; ? 第四,對于每個(gè)結(jié)構(gòu),讀取 PointerToRawData域值并定位到該文件偏移量。然后再讀取 SizeOfRawData域值來決定映射內(nèi)存的字節(jié)數(shù)。將 VirtualAddress域值加上ImageBase域值等于節(jié)起始的虛擬地址。然后就準(zhǔn)備把節(jié)映射進(jìn)內(nèi)存,并根據(jù) Characteristics域值設(shè)置屬性。 ? 第五,遍歷整個(gè)數(shù)組,直至所有節(jié)都已處理完畢。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1