一、说明 1.1 背景说明 看《加密与解密》的时候反复听说“PE文件格式”,到Android安全兴起就不断听说“dex文件格式”。意思是看得懂的,但自己不能手解析一番总觉得不踏实,所以决定写个程序来解析一番。 本文其实算是姜维的Android逆向之旅 解析编译之后的Dex文件格式的Python实现版 ...
分类:
编程语言 时间:
2018-10-15 20:36:15
阅读次数:
231
PE知识复习之PE的导出表 一丶简介 在说明PE导出表之前.我们要理解.一个PE可执行程序.是由一个文件组成的吗. 答案: 不是.是由很多PE文件组成.DLL也是PE文件.如果我们PE文件运行.那么就需要依赖DLL.系统DLL就是Kerner32.dll user32.dll等等.这些都是PE文件. ...
分类:
其他好文 时间:
2018-10-03 21:48:15
阅读次数:
247
PE知识复习之PE新增节 一丶为什么新增节.以及新增节的步骤 例如前几讲.我们的PE文件在空白区可以添加代码.但是这样是由一个弊端的.因为你的空白区节属性可能是只读的不能执行.如果你修改了属性.那么程序就可能出现问题.所以新增一个节可以实现我们的代码. 等等. 1.新增节的步骤 1.在最后一个节位置 ...
分类:
其他好文 时间:
2018-10-02 22:34:07
阅读次数:
387
PE知识复习之PE扩大节 一丶为什么扩大节 上面我们讲了,空白区添加我们的代码.但是有的时候.我们的空白区不够了怎么办.所以需要进行扩大节. 扩大节其实很简单.修改节数据对齐后的大小即可. 并且在PE文件中添加0数据进行填充即可. 首先看一下我们的节表 二丶扩大节实战以及注意问题 PE扩大节的时候一 ...
分类:
其他好文 时间:
2018-10-01 19:13:54
阅读次数:
206
PE知识复习之PE文件空白区添加代码 一丶简介 根据上面所讲PE知识.我们已经可以实现我们的一点手段了.比如PE的入口点位置.改为我们的入口位置.并且填写我们的代码.这个就是空白区添加代码. 我们也可以利用这个知识.实现PEDLL注入. 原理就是 修改入口. 跳转到我们空白区执行我们的代码.我们空白 ...
分类:
其他好文 时间:
2018-10-01 17:59:38
阅读次数:
233
让我们从反汇编的角度去分析并还原 C 语言的 if … else 结构,首先我们不看源代码,我们用 OllyDBG 载入 PE 文件,定位到 main 函数领空,如下图所示。 在图示中,我已经做好了关键的注释,经过一步一步地分析,不难还原出以下的 C 语言代码段。 ...
分类:
编程语言 时间:
2018-09-11 21:13:00
阅读次数:
171
加壳的实现 我是个初学者,所知有限,难免会有错误,如果有人发现了错误,还请指正。 先大致说一下加壳的原理,即在原PE文件(后面称之为宿主文件)上加一个新的区段(也就是壳),然后从这个新的区段上开始运行;也就算是成功的加上了壳;下面我们就说一下具体的实现。 这个工程有两个项目,一个用来生成壳的Win3 ...
分类:
其他好文 时间:
2018-09-02 11:06:34
阅读次数:
152
由于一些原因,需要学习安全方面的一些知识,所以学习了PE文件的结构,这篇随笔是学习的一些心得,作为复习。希望对各位有所帮助,如果行文中有什么错误,还请各位指正。 Microsoft Windows Portable Executable是微软可迁移可执行软件的全称,简称PE文件。对PE文件结构的学习 ...
分类:
其他好文 时间:
2018-08-12 11:55:17
阅读次数:
184
写在前面的话 这篇文章将介绍使用codecaves对PE文件植入后门代码。有几个很好的工具可以帮到你了。比如BackdoorFactory和Shelter将完成相同的工作,甚至绕过一些静态分析几个防病毒。 开始 让我们理解一些术语: PE文件: 可移植可执行文件(PE)格式是可执行文件,目标代码和D ...
分类:
其他好文 时间:
2018-08-09 14:52:49
阅读次数:
240
原文链接 https://bbs.pediy.com/thread-223629.htm asmjit参考https://www.cnblogs.com/lanrenxinxin/p/5021641.html 1.代码对push/mov/add/sub/cmp指令进行膨胀 2.对push/mov的立 ...
分类:
其他好文 时间:
2018-06-28 19:18:25
阅读次数:
186