首先查壳
看到存在ASPack壳,工具自动化脱壳失败了,下面尝试手动脱壳
x32dbg加载,一次运行停到了pushad处,说明开始进入壳
单步,然后对ESP下硬件访问断点
继续运行停到了一个push+ret的地方,发现这个是一个大跳转4010c0,因为push+ret=jmp,所以怀疑这里是OEP
跟进跳转的位置,然后直接dump下来并且尝试Fix Dump
IDA反编译自动进入start函数,在函数最下面进入main主方法
进入sub_401922函数
分析一下其中的sub_401648函数,发现是给全局变量Str2赋值
然后输入字符串,并进入sub_401738进行异或,最后异或的结果和Str2比较
所以很明显我们再次异或就能获得明文flag了
原文始发于微信公众号(智佳网络安全):【RE】ASPack手工脱壳逆向分析
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论