一个文件修复
import REC跟踪无效的函数,这样我们才能够准确无误的删除一些真正无效的函数,我们首先先找到程序的OEP,这里最后一次异常法就可以到达:
这个时候我们dump出来,运行的时候发现:
这个时候我们用import REC进行修复,常规操作,我们转储的文件中,但是我们发现还是会出来相同的问题,那么我们该如何办呢?
跟踪出真正的函数地址
我们首先搜索出函数的输入表(这里验证过了):
然后我们显示出无效的函数:
这个时候我们不要急着去删除他,我们先右键跟踪这几个函数地址,看看能不能跟踪出真正的函数地址:
然后挨个尝试,发现第一二个都是无法看到的,但是我们用到第三个的时候,我们发现import REC卡死了,这个时候,我们就需要打开新的需要脱壳的程序,然后重新加载,然后我们跟踪函数,和上面的操作一样,这个时候import REC会给我们一个结果:
我们可以看到import REC给了我们结果,不仅给了我们地址,还给了我们的函数名,但是不知道是不是bug,我在跟踪的时候待脱壳程序自动关闭了,但是这个不影响,然后我们发现还有5个无法修复,那么没办法我们尝试着去删除他们(在这里有个坑,不知道是不是这个程序的bug,我们点击删除不行,只能点击那个剪切),完事之后我们修复抓取文件,导出就会发现程序脱壳完毕了: