枫笑九洲 发表于 2018-1-16 16:51

手动脱掉ASProtect 1.23 RC1

原贴地址:脱壳练习二十三
https://www.52pojie.cn/thread-13912-1-1.html

到OEP的方法可以用最后一次异常法去到,没什么好说的。

然后我们在被加密的输入函数上下内存访问断点,断下来后,跟一下就可以获得大量的api函数

这里自己写了一个修复脚本

var a
var aa
var bb
var bbb
var cc
var ccc
var dd
var ff

bc
bphwcall

mov aa,009B25FA //写入api
mov bb,00401000 //代码段地址
mov cc,51000 //代码段大小
mov bbb,00452000 //第二段地址
mov ccc,2000 //第二段大小
mov dd,0045159C //oep
mov ff,009B25F1 //获得api
bphws aa,"x"
bphws dd,"x"
bphws ff,"x"
bpwm bbb,ccc
esto
bpmc
esto
MSGYN "请在调试选项中取消非法访问内存的勾勾,取消后继续"
cmp $RESULT,1
je start



//------------下面的要具体情况具体分析---------------
start:
cmp eip,ff
jne work
mov a,eax
esto
mov ,a
esto
jmp start

work:
esto
esto
esto
esto
esto
esto
bprm bb,cc
esto

end:
bc
bpmc
bphwc
ret

可以修复大量函数,最后还剩11个搞不出来,跟也跟不到地方,求大神教下怎么跟那最后的11个

最后是用一个笨办法,自己写一个delphi程序,一步一步的跟,别说,还真被我把最后的11个函数跟出来了。

用ImportREC修复完,手动填入函数,转存后,可以运行

不挂科夫斯基 发表于 2020-5-19 20:37

2.51版本貌似没有办法用最后一次一场来找AEP啊

枫笑九洲 发表于 2018-1-17 08:54

灵影 发表于 2018-1-17 00:33
OEP 入口我还找不到呢。不知道什么特征

我的大概是26次异常程序就启动,在25次异常时,在00401000下内存访问断点,Shift+F9就可以来到OEP了

枫笑九洲 发表于 2018-1-16 16:53

原贴上面说有ImportREC的脚本跟,不故道怎么回事,我一跟程序就死掉

linuxprobe 发表于 2018-1-16 21:47

我没看懂你写的这个代码,你能解释一下吗?

灵影 发表于 2018-1-17 00:33

OEP 入口我还找不到呢。不知道什么特征

whyida 发表于 2018-1-17 10:50

用ImportREC 插件修复。

aerofsm 发表于 2018-3-20 22:21


用ImportREC 插件修复。

我在乎你 发表于 2018-3-23 19:16

谢谢分享学习了

小菜戏大神 发表于 2019-8-16 13:47

感谢楼主大大,请收下我的膝盖~!{:1_893:}

小菜戏大神 发表于 2019-8-17 23:36

感谢的话不多说了
收下了,支持一下。{:1_893:}{:1_893:}{:1_893:}
页: [1] 2
查看完整版本: 手动脱掉ASProtect 1.23 RC1