摘要: _______________________________ | IMAGE_DOS_HEADER | <-- Dos部首 ------------------------------- | PE,0,0 | <-- PE文件标志 ------------------------------- | IMAGE_FILE_HEADER | <-- 映像文件头 ------------------------------- | IMAGE_OPTIONAL_HEADER32 | <-- 映像可选头 -----------------... 阅读全文
posted @ 2012-04-18 23:28 r3call 阅读(431) 评论(0) 推荐(0) 编辑
摘要: from:http://www.2cto.com/Article/201203/123125.htmlPE的意思就是这个the Protable Executable (PE) file format 微软搞得那么一套东西,字面意思是可移植的,但是现实使用中没见他多么的可移植,PE格式借鉴了UNIX系统中的COFF (Common Object File Format) 格式。而且PE对MS-Dos的兼容,保留了MS-Dos头,在dos下打开会提示 “这是win32程序在dos下不能跑” 向下兼容,非常的友好。MS-DOS MZ header 的结构是这样的typedef struct _IM 阅读全文
posted @ 2012-04-18 23:27 r3call 阅读(725) 评论(0) 推荐(0) 编辑
摘要: 这个IMAGE_NT_HEADERS其实就是PE相关结构的映像头,NT据我揣测应该是New Technology的缩写,区分于DOS WIN9X的新技术,您老要是非觉得是NTR什么的也没关系。IMAGE_NT_HEADERS的结构是这个样子的IMAGE_NT_HEADERS STRUCT{+0h DWORD Signature+4h IMAGE_FILE_HEADER FileHeader+18h IMAGE_OPTIONAL_HEADER32 OptionalHeader} IMAGE_NT_HEADERS ENDS其中包含两个子结构体,和一个标志。其中Signature字段被设置成0000 阅读全文
posted @ 2012-04-18 23:27 r3call 阅读(2370) 评论(0) 推荐(0) 编辑
摘要: from:http://www.2cto.com/Article/201204/127992.html【文章作者】: NoAir【软件名称】: emu8086 v4.08【保护方式】: 有点戏剧性【编写语言】: Visual Basic【软件介绍】: 一款优秀的8086汇编IDE,支持可视化调试,内置FASM【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!--------------------------------------------------------------------------------【详细过程】 仅以此文纪念一下emu8086,现在官网不能打开 阅读全文
posted @ 2012-04-18 23:23 r3call 阅读(1221) 评论(0) 推荐(0) 编辑
摘要: 在熟悉了PE结构之后,我们还有知道系统从磁盘加载静态文件映射到内存,作了哪一些的改变。 PE结构,就好像一张指南,告之系统自己的各个属性,哪些地方保存着哪些数据,随后又加载到哪里去。加壳的PE文件始终是也是一个文件,同原始的PE文件比较,只不过是两种数据结构相同,却数据内容不同罢了。 下面我们模拟一次系统loader的过程,探讨一下PE文件是如何从磁盘的静态数据加载的内存中去的。 首先,loader会判断目标文件是否问正常的PE文件IMAGE_DOS_HEADER结构的MZ标志IMAGE_NT_HEADER结构的PE/0/0标志如果出错,就会弹出一个错误提示。\如果是正确的PE格式那么load 阅读全文
posted @ 2012-04-18 23:21 r3call 阅读(348) 评论(0) 推荐(0) 编辑
摘要: PE文件中的结构众多,但是其实,这些结构一多半是告诉loader怎么去加载自身PE的。正常的PE文件总是很严格去填充自身的内部结构,但是也有一小部分变形PE文件没有那么的中规中矩,所以PE结构中有的信息到了loader可能最终也只是起到了一个校验作用。在纵观PE整个大结构的时候,不应该去拘泥于每一个数据结构的特征,应该从大体上去把握它。本文试图通过loader加载方式的类比和举例的角度,介绍了loader是如何讲PE结构中相关重要数据进行加载的。因为介绍PE的优秀文章有很多加上作者水平很有限,如果有错误,请各位指正。下面,就开始逐一的介绍相关重要的结构:1.各种表头 1.1 Dos表头 1.2 阅读全文
posted @ 2012-04-18 23:20 r3call 阅读(785) 评论(0) 推荐(0) 编辑
摘要: from:http://www.2cto.com/Article/201202/118214.html这是我对之前学习写一个简单压缩壳的总结。期间查阅了很多的资料,借鉴了很多的代码,做了很多的笔记,有一些小心得和体会,希望与大家共同的交流和学习。再一次的感谢各位前辈们提供的无数资料。 文章分为了4个部分,从最基本的概念,到最后学习实践的代码,都在这个系列之中。文章包括:1.数据与指令,以及加载前期相关概念2.pe文件的结构解析3.pe文件load的过程4.壳的处理 因为小弟才疏学浅,肯定有不足和错误之处,希望各位大虾能多多的指点。希望为学习写压缩壳的朋友提供一点参考,哪怕是一点点,就很知足了: 阅读全文
posted @ 2012-04-18 23:19 r3call 阅读(490) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2012-04-18 18:42 r3call 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 在程序中,.cpp扩展的文件并不是唯一一种常见的文件。另一种文件称为头文件,有时被称为include file。都文件基本都有一个.h扩展名。头文件的目的是将其它文件要用到的声明整合到一起。标准库头文件的使用看一下下面的程序: 1: #include <iostream> 2: int main() 3: { 4: using namespace std; 5: cout << "Hello, world!" << endl; 6: return 0; 7: }这个程序使用cout将Hello, world!输出到控制台的屏幕中。但是,你 阅读全文
posted @ 2012-04-18 13:10 r3call 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 下载地址:http://files.cnblogs.com/tk091/crackme6.7z先用peid检测,为ASPack 2.x (without poly) -> Alexey Solodovnikov [Overlay]壳。用od载入1 00405000 60 pushad2 00405001 > E8 03000000 call crackme6.004050093 00405006 - E9 EB045D45 jmp 459D54F64 0040500B 55 push ebp默认运行到第二行,利... 阅读全文
posted @ 2012-04-18 09:35 r3call 阅读(2672) 评论(0) 推荐(0) 编辑