PE文件结构(四)參考书:《加密与解密》视频:小甲鱼 解密系列 视频输出表一般来说输出表存在于dll中。输出表提供了 文件里函数的名字跟这些函数的地址, PE装载器通过输出表来改动IAT。IMAGE_OPTIONAL_HEADER中的 DataDirectory[0] 提供了输出表的RVA。输出表是...
分类:
其他好文 时间:
2015-07-30 21:08:57
阅读次数:
127
PE文件结构(五岁以下儿童)參考书:《加密与解密》视频:小甲鱼 解密系列 视频基址重定位 链接器生成一个PE文件时,它会如果程序被装入时使用的默认ImageBase基地址(VC默认exe基地址00400000h。dll基地址10000000h),而且会把代码中全部指令中用到的地址都使用默认的基地址(...
分类:
其他好文 时间:
2015-07-17 11:51:50
阅读次数:
101
一直想做一个PE结构的总结,只是学的时候有很多东西就没搞懂,加上时间一长,很多知识也早忘了,也就一直没完成。这几天从头看了下,好不容易理清楚了,整理一下,以免又忘了pe文件框架结构,图片贴过来太模糊了就画个表格代替一下DOS文件头PE文件头区块表 各区块 调试信息 DOS文件头DOS文件头包...
分类:
其他好文 时间:
2015-07-02 19:09:55
阅读次数:
159
一、EXE文件概念 EXE File英文全名executable file 。译作可运行文件,可移植可运行 (PE) 文件格式的文件,它能够载入到内存中。并由操作系统载入程序运行,是可在操作系统存储空间中浮动定位的可运行程序。如记事本程序notepad.exe ,能够用来编辑文档,如:測试.txt....
分类:
其他好文 时间:
2015-06-20 09:07:03
阅读次数:
113
作者:MSDN译者:李马预定义段 一个Windows NT的应用程序典型地拥有9个预定义段,它们是.text、.bss、.rdata、.data、.rsrc、.edata、.idata、.pdata和.debug。一些应用程序不需要所有的这些段,同样还有一些应用程序为了自己特殊的需要而定义了更多.....
分类:
其他好文 时间:
2015-05-27 15:27:01
阅读次数:
231
作者:MSDN译者:李马摘要 Windows NT 3.1引入了一种名为PE文件格式的新可执行文件格式。PE文件格式的规范包含在了MSDN的CD中(Specs and Strategy, Specifications, Windows NT File Format Specifications).....
分类:
其他好文 时间:
2015-05-26 18:38:44
阅读次数:
133
windows下的PE文件在Solaris下不能执行,反之Solaris下的可执行文件在windows下不能运行.但是同样CPU,它的汇编指令是兼容的,比如window下的 PUSH EBP机器码是55在OpenSolaris中反汇编push %ebp,左边的机器指令也是55在不同操作系统使用自己的...
本系列文章来自 CLR VIA C#.NET FrameWork在Microsoft Windows平台的顶部运行。这意味着.NET必须用Windows可以理解的技术来构建。首先,所有的托管模块和程序集文件都必须使用Windows PE文件格式,而且要么是一个Windows.exe文件,要么是一个D...
分类:
其他好文 时间:
2015-05-10 15:31:48
阅读次数:
541
TLS是在线程创建后执行前,销毁后退出前自动执行的一种技术,常用于反调试技术。TLS主要有一个回调函数地址表,在PE文件中存在。一个程序放到调试器中,还没有加载到OEP时,就已经执行TLS了(因为程序的主线程在OEP前创建,而创建时会自动调用TLS,准确的说是创建后自动调用其回调函数TLS)。这时候往TLS中置入反调试检测,就达到了效果。...
分类:
其他好文 时间:
2015-05-10 09:51:33
阅读次数:
249
首先得会内存、寄存器还有程序运行的规则。
存储知识:
文件地址(File Offset):数据在PE文件中的地址,文件在磁盘上存放时相对于文件开头的偏移;
虚拟内存地址:每个进程都有的4G虚拟空间;
物理内存地址;
这三个地址要层层映射
内存:
代码区:存放二进制代码
数据区:存储全局变量
堆区:动态内存空间(还没太明...
分类:
其他好文 时间:
2015-05-08 00:04:00
阅读次数:
184