IDA Pro基本简介 IDA加载完程序后,3个立即可见的窗口分别为IDA-View,Named,和消息输出窗口(output Window) IDA图形视图会有执行流,Yes箭头默认为绿色,No箭头默认为红色,蓝色表示默认下一个执行块。 在寄存器窗口中显示着每个寄存器当前的值和对应在反汇编窗口中的 ...
分类:
其他好文 时间:
2020-07-20 20:32:11
阅读次数:
107
对两个PE文件进行对比分析: 可以发现,对各个结构体进行了重叠。首先观察PE头,DOS存根被省掉。 从3C地址处,找到NT头地址,在10H处。即DOS头和NT头进行了重叠。 文件头倒数第二个元素(SizeOfOptionalHeader)的值为148H。 由值10B找到可选头,下面一行即为Entry ...
分类:
其他好文 时间:
2020-07-16 00:19:24
阅读次数:
67
主要步骤: 1.将要加载的文件读取到内存中(简称为文内),检查文件格式无误后,根据可选PE头(简称op头)的SizeOfImage,申请出一块空间用于存储该文件加载到内存后展开的数据(简称为内内)。记得先全部初始化为0,免去后续拷贝中对齐补0的步骤。 2.将文件数据拷贝到申请出来内存空间中(模仿PE ...
分类:
其他好文 时间:
2020-07-10 09:17:51
阅读次数:
84
Windbg用户模式下,非托管代码,可以直接用bp命令设置断点。调试.Net 应用程序相对于非托管程序,要麻烦一些。因为.NET源码在编译的时候,首先是编译成IL文件,程序运行的时候,通过Load加载PE文件,然后JIT编译器负责将IL代码编译为汇编指令,然后执行。JIT编译器编译过后,就可以像非托 ...
分类:
数据库 时间:
2020-07-07 17:28:56
阅读次数:
69
PE文件加载带内存中的时候 都存在文件到内存的映射 RVA 相对虚拟地址 当文件到内存的映射关系如下时 1.当RVA相对偏移地址为5000时,求文件偏移 5000-1000(因为在第一个节区)+400 公式 ...
分类:
其他好文 时间:
2020-07-06 11:20:32
阅读次数:
54
首先学习PE文件头需要先了解其部分数据结构,初步了解过PE文件的人,应该知道PE最开始的是DOS头,然后NT头组成。DOS没什么好说的,主要是为了兼容16位系统,不过现在没必要了解了,主要了解的是NT头。 找到NT首先可以去看PE文件的编码,找到PE文件的magic标识,来找到PE,然后后面的数字是 ...
分类:
其他好文 时间:
2020-06-28 18:39:21
阅读次数:
55
内存加载Exe原理,PELoder 一丶原理 原理是模拟Window 双击 Exe进行操作. 而对于我们来说.其实就是 针对PE文件的 NT头 节表数据 重定位表 导入表 等进行操作. 步骤如下: 总共分为几大步骤 文件数据转内存数据 1.拷贝文件中NT头数据大小. 按照SizeofHeder大小拷 ...
分类:
其他好文 时间:
2020-06-26 11:09:29
阅读次数:
172
DLL(Dynamic Linked Library) 加载DLL的方式实际有两种:一种是显示链接(Explicit Linking),程序使用DLL时加载,完毕时再释放内存; 一种是隐式链接(Implicit Linking),程序开始时就加载DLL,程序终止时再释放占用的内存. 而IAT提供的机 ...
分类:
其他好文 时间:
2020-06-24 14:31:44
阅读次数:
70
P404.拿到指针就拿到了一切,拿到了句柄就拿到了一切 ...
分类:
其他好文 时间:
2020-06-14 12:49:40
阅读次数:
54
PE文件: VC驿站《PE文件格式解析》 2/9 P101.格式的魅力 P202.回调的艺术:callback P303.PE结构 P404.拿到指针就拿到了一切,拿到了句柄就拿到了一切 P505.区段与对齐 P606.PE文件中的导出 P707.PE文件中的导入表 P808.重定位表 P909.你 ...
分类:
其他好文 时间:
2020-06-13 19:43:48
阅读次数:
77