成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

都是自己編的VS2003代碼格式歡迎大家指點改正

開發(fā) 后端
讓我們想像一下:如果我們可以把VS2003代碼通過操作導入表thunks將導入函數的入口點(thoroughfare)重定向到我們的指定的例程,用我們的例程過濾導入(消息)就成為可能。

 本人介紹下注入VS2003代碼到PE,文件格式的Import Table(導入表,也有譯為“引入表”)技術,其也被稱為API重定向技術,這些都是通過平時的學習和實踐中得出的結果。

讓我們想像一下:如果我們可以通過操作導入表thunks將導入函數的入口點(thoroughfare)重定向到我們的指定的例程,用我們的例程過濾導入(消息)就成為可能。此外,我#t#們可以通過這個功能實現安排給我們適當的例程,VS2003代碼專業(yè)的Portable Executable (PE) Protectors正是這么來做的,另外一些種類的rootkits使用這個方法通過一個特洛伊木馬嵌入其惡意代碼到受害者。在反向工程世界里,我們稱之為:API重定向技術,然而我不準備通過源代碼描述這個領域的所有觀點,本文只是通過一個簡單代碼介紹一下這個技術的概況。我將描述這個源代碼中沒有的其他一些問題;我不能公開這些代碼,原因是其關系到一些商業(yè)項目或可能會被懷有惡意者利用,然而我想本文可以被用來作為一個關于該主題的入門。

進入導入表

PE文件格式包括:MS-DOS header、NT headers、Sections headers和Section images(譯注:正如很多技術讀物上一樣,其實header可以譯為“頭”,image可譯為“映像”,但本文正文在不影響理解的前提下盡量保留原文術語,以免誤解。)正如你在下圖中所看到的。MS-DOS header是自DOS時代到Windows時代在所有微軟可執(zhí)行文件格式(executable file format)公有的。NT headers的思想來源于UNIX系統(tǒng)的Executable and Linkable Format (ELF),當然Portable Executable (PE)格式是Linux Executable and Linkable Format (ELF)的姐妹。PE 格式包括"PE" Signature、Common Object File Format (COFF) header、Portable Executable Optimal header和Section headers。

Portable Executable 文件格式結構

在Portable Executable Optional header,有一些數據目錄(data directories)描述了當前進程在虛擬內存中主信息表(the principal information tables)的相對位置和大小。這些表可以有關于VS2003代碼資源的信息、import(導入)、export(導出)、relocation(重定位)、Debug(調試)、thread local storage(線程本地存儲)和COM運行時。沒有導入表想要找到一個PE可執(zhí)行文件是不可能的;

該表包含DLL的名稱和Functions(函數)名稱,這些是當程序意圖通過它們的虛地址來請求(調用)它們時所必需的。在Console executable files(控制臺可執(zhí)行文件)中沒有發(fā)現資源表(resource table);然而它是擁有Graphic User Interface (GUI)的Windows可執(zhí)行文件的至關重要的部分。導出表(export table)在一個動態(tài)鏈接庫想要導出它的函數到外界時是必需的,并且它也在OLE Active-X容器中。Dot NET虛擬機在沒有COM+ runtime header下時不能被執(zhí)行。正如你看到的VS2003代碼,在PE格式中每個表都有特定的委派任務。

 Data Directories(數據目錄)

  1. PIMAGE_NT_HEADERS pimage_nt_headers = ImageNtHeader(pImageBase);  
  2. DWORD it_voffset = pimage_nt_headers->OptionalHeader.  
  3. DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress;  
  4. PIMAGE_DOS_HEADER pimage_dos_header = PIMAGE_DOS_HEADER(pImageBase);  
  5. PIMAGE_NT_HEADERS pimage_nt_headers = (PIMAGE_NT_HEADERS)  
  6. (pImageBase + pimage_dos_header->e_lfanew);  
  7. DWORD it_voffset = pimage_nt_headers->OptionalHeader.  
  8. DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress 
責任編輯:chenqingxiang 來源: domisou
相關推薦

2009-12-15 13:39:43

2009-11-25 09:26:39

VS2003代碼

2009-11-25 13:22:49

VS2003代碼

2009-11-30 09:27:38

VS2003源代碼

2009-12-01 13:10:29

VS2003壓縮代碼

2009-11-30 09:16:44

VS2003源代碼

2009-11-27 08:59:29

VS2003配置文件

2009-12-18 10:10:49

VS 2003程序

2009-12-09 13:41:04

VS 2003 報錯

2009-11-26 13:55:35

VS2003源代碼

2009-12-11 13:41:18

2009-11-25 13:41:53

使用VS2003

2009-11-30 13:51:28

2009-11-30 15:57:18

VS2003 MFC

2009-12-09 16:52:51

VS 2003插件

2009-12-01 13:38:30

VS2003快捷鍵

2009-11-25 13:57:25

VS2003發(fā)布

2009-11-26 09:42:38

VS2003插件

2009-12-01 17:55:11

VS2003配置

2009-11-26 13:05:39

VS2003斷點
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91在线观看免费视频 | 中文字幕av网 | 欧美精品在线一区 | 伊人久久在线观看 | 91精品国产91久久久久久最新 | 欧美成人免费在线视频 | 国产一区二区免费在线 | 国产精品18hdxxxⅹ在线 | 91视频中文| 久久6视频| 久久久久国产一区二区三区 | 在线欧美小视频 | 国产精品日韩欧美一区二区三区 | 精品一区二区三区免费毛片 | 色播久久 | 欧美国产亚洲一区二区 | 九九九久久国产免费 | 日日干日日操 | 国产精品视频网 | 在线色网站 | 精品一区二区三区在线视频 | 日韩毛片免费视频 | www.国产视频 | 久久国产精品视频 | 日本黄色免费视频 | 好姑娘影视在线观看高清 | 亚洲电影成人 | 亚洲视频第一页 | 亚洲国产偷| 久久er精品 | 91精品麻豆日日躁夜夜躁 | 国产欧美精品一区二区 | 成人免费视频网址 | 黄色香蕉视频在线观看 | 欧美在线二区 | 午夜天堂精品久久久久 | 天天天天天操 | 色久影院 | 国产综合在线视频 | 成人在线视频免费播放 | 中文字幕一区在线观看视频 |