180225 逆向-脱壳技术(8)

1625-5 王子昂 总结《2018年2月25日》 【连续第512天总结】
A. 脱壳技术(8)脱压缩壳的技巧
B.

压缩壳

UPX

UPX壳既破坏了输入表也破坏了重定位表,因此尽量使用自解压命令来脱

upx -d File

有些工具为了防止UPX的自解压会修改UPX的标志位使其识别失败,例如UPXPR和UPX-Scrambler
此时就需要修复各个标志位

UPXFIX这个工具可以自动修复
手动时则需要注意:

  1. 区段名
    两个块名应该为UPX0和UPX1
  2. UPX!标志
    区段前会注明版本号,形如3.01.UPX!....
    如果这个标志被删除,同样也会无法解压
    修复时可以依据标志字节0C 09 ?? ??0D 09 ?? ??,将其还原即可

手动脱壳时需要注意重定位表被清空,壳程序解压后会自己填充重定位信息
因此在脱壳时需要跳过填充部分的代码,将未被改变的原程序dump下来,然后再找到真正的重定位表来修复

ASPack

该外壳运行时,有一段时间会出现完整的原程序,包括输入表、重定位表都是完整的
因此它的兼容性极好
然而也正因为此,脱壳非常轻松,只要抓住这个时机将其dump出来就能得到原程序

C. 明日计划
脱壳技术(9)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值