upx 手动脱壳

Posted dirwang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了upx 手动脱壳相关的知识,希望对你有一定的参考价值。

查壳

技术图片

 

 UPX 0.89.6 - 1.02 / 1.05 - 2.90 (Delphi) stub -> Markus & Laszlo

upx这类压缩壳手动脱壳非常简单。

一、查找oep

二、dump、修复IAT

 

  • 一、查找oep

way1:

首先在程序入口发现pushad指令,接下来可以直接查找指令popad

技术图片

 

技术图片

 

 技术图片

 

 在jmp指令处下断,运行。

jmp之后来到oep

 

技术图片

 

技术图片

 

 


 

way2:

当然可以在单步pushad后,转到esp的内存窗口,设置硬件断点,运行,找到jmp处。

技术图片

 

 

技术图片

 

 运行后会在popad指令后停下

技术图片

 

 跟踪jmp将转到oep

 


 

  • 二、dump、fix dump

 在x64dbg下使用Scylla

 

技术图片

 

删除掉失效函数。

技术图片

 

最后

技术图片

 

 脱壳完成。

技术图片

 

 如果没有修复,直接运行程序可能会报错

技术图片

修复IAT后程序便可以正常运行。[fix  dump]

 

以上是关于upx 手动脱壳的主要内容,如果未能解决你的问题,请参考以下文章

如何给程序脱壳

如何实现upx的脱壳(请详细说明步骤和软件)?

UPX\aspack脱壳机怎么写?

UPX 脱壳初见

简单尝试UPX脱壳

脱壳第三讲,UPX压缩壳,以及补充壳知识