如果乙個應用程式有數字簽名,那麼它的安全表就不會為空。它位於異常表的後面。
通過資料目錄表裡提供的rva,我們轉換成offset,找到了安全表的位置,如下:
安全表的結構體如下:
typedef struct _win_certificate
dwlength:此結構體的長度,對應上圖中的0x00003390
wrevision:在bcertificate裡面保護的證書的版本號,版本號有兩種,如下表,一般為0x0200,對應上圖中的0x0200值資訊
win32 sdk中的巨集定義名
0x0100
win_certificate的老版本
win_cert_revision_1_0
0x0200
win_certificate的當前版本
win_cert_revision_2_0
wcertificatetype:證書型別,有如下**中的型別,對應上圖中的0x0002值資訊
win32 sdk中的巨集定義名
0x0001
x.509證書
win_cert_type_x509
0x0002
包含pkcs#7的signeddata的結構
win_cert_type_pkcs_signed_data
0x0003
保留win_cert_type_reserved_1
0x0004
終端伺服器協議堆疊證書簽名
win_cert_type_ts_stack_signed
bcertificate:包含乙個或多個證書,一般來說這個證書的內容一直到安全表的末尾。
PE 檔案格式學習
以前總在網上看看介紹pe檔案格式的文章,看的時候看到一大堆的結構體就蛋疼了,想想現在我這個居然都不清楚以後咋裝bi呢 今天下了個peview邊看變學了 先自己隨便寫個控制台程式,然後加進去就有了,讓後我們可以看看這個檔案到底是怎麼組成的。從這個樹形結構我們能很清楚的理解這個檔案的整體構成,在網上有很...
PE檔案格式
pe 的意思是 portable executable 可移植的執行體 它是 win32環境自身所帶的執行檔案格式。它的一些特性繼承自unix的coff common object file format 檔案格式。portable executable 可移植的執行體 意味著此檔案格式是跨win3...
PE檔案格式
pe檔案格式分析及修改 圖 1 2009 01 09 14 08 pe 的意思是 portable executable 可移植的執行體 它是 win32環境自身所帶的執行檔案格式。它的一些特性繼承自unix的coff common object file format 檔案格式。portable ...