零基础逆向工程20_PE结构04_任意节空白区_新增节_扩大节添加代码

向代码节添加代码实现

作者经过一周不断的失败,再思考以及无数次调试终于实现。

思路:八个步骤

1. 文件拷到文件缓冲区(FileBuffer)  //图示见(零基础逆向工程18之PE加载过程)
2. 文件缓冲区扩展到内存映像缓冲区(ImageBuffer)
3. 判断代码空闲区是否有足够空间存储ShellCode代码
4. 将代码复制到空闲区
5. 修正E8
6. 修正E9
7. 修改OEP
8. 内存映像缓冲区到新文件缓冲区(NewBuffer)
9. 新文件缓冲区到文件

向其他节(如数据段)空闲区添加代码

与向代码节的不同是需要修改数据区的属性(Characteristics)为可执行

新增节添加代码

1135275-20170925235848807-1668201393.png

扩大节

1135275-20170926142622417-906575918.png

合并节

1135275-20170926142635714-13115998.png

转载于:https://www.cnblogs.com/flatcc/p/7594611.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值