一、CLR寄宿 .net framework在windows平台的顶部允许。者意味着.net framework必须用windows能理解的技术来构建。所有托管模块和程序集文件必须使用windows PE文件格式,而且要么是windows exe文件,要么是DLL文件 1,MSCorEE.dll(垫 ...
分类:
移动开发 时间:
2017-07-13 22:53:11
阅读次数:
274
PE文件结构(三) 參考 书:《加密与解密》 视频:小甲鱼 解密系列 视频 输入表 输入函数,表示被程序调用可是它的代码不在程序代码中的,而在dll中的函数。对于这些函数。磁盘上的可执行文件仅仅是保留相关的函数信息,如函数名,dll文件名称等。在程序执行前。程序是没有保存这些函数在内存中的地址。当程 ...
分类:
其他好文 时间:
2017-06-15 20:37:50
阅读次数:
212
分配粒度和内存页面大小x86处理器平台的分配粒度是64K,32位CPU的内存页面大小是4K,64位是8K,保留内存地址空间总是要和分配粒度对齐。一个分配粒度里包含16个内存页面。这是个概念,具体不用自己操心,比如用VirtualAllocEx等函数,给lpAddress参数NULL系统就会自动找一个 ...
分类:
其他好文 时间:
2017-05-22 19:04:50
阅读次数:
572
一个MS-DOS头部 IMAGE_DOS_HEADER 一个是DOS的程序残余以及一个PE文件标志 PE文件头和可选头部: IMAGE_NT_HEADERS A pointer to the entry point function, relative to the image base addre ...
分类:
其他好文 时间:
2017-05-21 09:51:26
阅读次数:
131
随笔- 9 文章- 0 评论- 144 再探.NET的PE文件结构(安全篇) 一、开篇 首先写在前面,这篇文章源于个人的研究和探索,由于.NET有自己的反射机制。可以清楚的将源代码反射出来。这样你的软件就非常easy被破解。当然这篇文章不会说怎么样保护你的软件不被破解。相反是借用一个软件来讲述是怎么 ...
分类:
移动开发 时间:
2017-05-19 22:12:20
阅读次数:
272
接上一篇的win32下PE文件分析之NT头(一).FileBuffer与ImageBuffer(1).FileBuffer是将文件原原本本的读入申请的内存区域中,那部分区域就是FileBuffer,里面的内容与磁盘中的文件一模一样.如下图:(2).ImageBuffer是按照一定规则加载到内存中的某个区域,并且通过一定的处理,能立刻..
解析程序自己的附加数据,将附加数据写入文件里。 主要是解析PE文件头。定位到overlay的地方。写入文件。常应用的场景是在crackme中,crackme自身有一段加密过的附加数据。在crackme执行的过程中解析自己的附加数据,然后解密这段数据。。。。 代码留存: //解析自己的PE文件 TCH ...
分类:
其他好文 时间:
2017-05-06 19:06:33
阅读次数:
132
进程通信是指进程之间的信息交换。PV操作是低级通信方式,高级通信方式是指以较高的效率传输大量数据的通信方式。高级通信方法主要有以下三个类。 共享存储 在通信的进程之间存在一块可直接访问的共享空间,通过对这片共享空间进行写/读操作实现进程之间的信息交换。在对共享空间进行写/读操作时,需要使用同步互斥工 ...
分类:
系统相关 时间:
2017-04-12 13:39:44
阅读次数:
405
PE(Portable Execute)文件是Windows下可执行文件的总称,常见的有DLL,EXE,OCX,SYS等,事实上,一个文件是否是PE文件与其扩展名无关,PE文件可以是任何扩展名。相信来看本文的多少对于PE结构有一定的了解,那么今天就直接贴代码,以尽量简短的代码来实现PE的读取,没有使 ...
分类:
其他好文 时间:
2017-04-09 12:49:02
阅读次数:
345
1.静态tls将变量定义在PE文件内部. 使用.tls节存储 .tls节中包含: 初始化数据 用于每个线程初始化和终止的回调函数 TLS索引 2.代码访问tls数据时经过的步骤: (1) 链接时, 链接器设置tls目录中的AddressOfIndex字段. 该字段指向一个位置,该位置保存了程序用到的 ...
分类:
编程语言 时间:
2017-04-07 12:32:57
阅读次数:
195