歡迎使用CSDN markdown編輯器

2021-08-02 22:36:07 字數 819 閱讀 6250

pe結構詳解

1.序言:

從某種意義上來講,可執行檔案的格式是作業系統本身執行機制的反應。

雖然研究可執行檔案格式並不是程式設計師的首要任務,但這又處於對作業系統的理解。

2.必備知識:

exe檔案 dll檔案都是用完全相同的pe格式, 唯一的不同就是用乙個字段表示這個檔案是exe 檔案還是dll檔案(exe檔案雙擊就能開啟, dll檔案是動態鏈結庫,需要exe檔案呼叫)

pe格式定義的主要地方位於我們的標頭檔案winnt.h。

第二講

每乙個pe檔案都是以乙個dos程式開始的,這樣,一旦程式在dos下執行,dos才能識別出這是有效的執行體。

pe檔案的第乙個位元組起始於乙個傳統的ms-dos頭部,被稱作為image_dos_header, 這其實是乙個結構。

image_dos_header結構講解:

typedef struct _image_dos_header image_dos_header, *pimage_dos_header;

重點講解(第乙個跟最後乙個

e_magic //majic dos signature(4dh 5ah)

dos可執行檔案標記

一般存放兩個位元組 4d 和 5a

e_lfanew //offset to start of pe header

指向pe檔案頭的32位指標

pe檔案頭(pe header) 緊挨著dos stub

pe header是pe相關結構nt映像頭(image_nt_header)的簡稱,裡面包含著許多pe裝載器用到的重要字段

歡迎使用CSDN markdow

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...

歡迎毛毛與妞妞使用CSDN markdown編輯器

建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下mar...

歡迎使用CSDN markdow1n編輯器

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...