首页
社区
课程
招聘
[求助]学习脱asprotect壳遇到问题
发表于: 2007-12-26 10:52 4199

[求助]学习脱asprotect壳遇到问题

2007-12-26 10:52
4199
软件名称:qq无敌记牌器
软件地址:http://www.wdjpq.com/qqjpq_down.htm

空闲时间喜欢打打qq升级,朋友昨天给了我个qq无敌记牌器,一运行,弹出一些IE广告,这还不说,程序界面里还特意留了大块地方做广告,好难受,于是想修整一下,但第一步就难住了,加了壳...
先用peid0.92看了一下,显示asprotect  1.2x-1.3x...,下了主页上的vera.dll插件,重新识别为
asprotect 2.00 build 06.23 alpha,用主页上的工具stripper_v211rc2可以脱壳,但脱完不能运行,点击没反应,于是考虑手脱...
按照教程,设置Ollydbg忽略所有的异常选项,隐藏调试标志,用od载入,

/00401000/  PUSH QQJPQ.0053A001
/00401005/  CALL QQJPQ.0040100B
/0040100A/  RETN
下断:HE GetModuleHandleA
Shift+F9,中断2次后,取消断点,Alt+F9返回00ED84AC。
        Ctrl+F9 执行到返回。
/*ED84A6*/  CALL DWORD PTR SS:[EBP+4431EC]
/*ED84AC*/  TEST EAX,EAX                       //返回到这里
/*ED84AE*/  JNZ SHORT 00ED84B7
/*ED84B0*/  PUSH EBX
/*ED84B1*/  CALL DWORD PTR SS:[EBP+4431F0]
/*ED84B7*/  MOV DWORD PTR SS:[EBP+44294D],EAX
/*ED84BD*/  MOV DWORD PTR SS:[EBP+442951],0
/*ED84C7*/  MOV EDX,DWORD PTR SS:[EBP+4430D8]
/*ED84CD*/  MOV EAX,DWORD PTR DS:[ESI]
/*ED84CF*/  TEST EAX,EAX
/*ED84D1*/  JNZ SHORT 00ED84D6
/*ED84D3*/  MOV EAX,DWORD PTR DS:[ESI+10]
/*ED84D6*/  ADD EAX,EDX
/*ED84D8*/  ADD EAX,DWORD PTR SS:[EBP+442951]
/*ED84DE*/  MOV EBX,DWORD PTR DS:[EAX]
/*ED84E0*/  MOV EDI,DWORD PTR DS:[ESI+10]
/*ED84E3*/  ADD EDI,EDX
/*ED84E5*/  ADD EDI,DWORD PTR SS:[EBP+442951]
/*ED84EB*/  TEST EBX,EBX
/*ED84ED*/  JE 00ED8595
/*ED84F3*/  TEST EBX,80000000
/*ED84F9*/  JNZ SHORT 00ED84FF
/*ED84FB*/  ADD EBX,EDX
/*ED84FD*/  INC EBX
/*ED84FE*/  INC EBX
/*ED84FF*/  PUSH EBX
/*ED8500*/  AND EBX,7FFFFFFF
/*ED8506*/  PUSH EBX
/*ED8507*/  PUSH DWORD PTR SS:[EBP+44294D]
/*ED850D*/  CALL DWORD PTR SS:[EBP+4431E8]
/*ED8513*/  TEST EAX,EAX
/*ED8515*/  POP EBX
/*ED8516*/  JNZ SHORT 00ED8587
/*ED8518*/  TEST EBX,80000000
/*ED851E*/  JNZ SHORT 00ED8539
/*ED8520*/  PUSH EDI
/*ED8521*/  MOV EAX,DWORD PTR DS:[ESI+C]
/*ED8524*/  ADD EAX,DWORD PTR SS:[EBP+4430D8]
/*ED852A*/  PUSH EAX
/*ED852B*/  PUSH EBX
/*ED852C*/  LEA EAX,DWORD PTR SS:[EBP+443153]
/*ED8532*/  PUSH EAX
/*ED8533*/  PUSH EDI
/*ED8534*/  JMP 00ED85D2
/*ED8539*/  AND EBX,7FFFFFFF
/*ED853F*/  MOV EAX,DWORD PTR SS:[EBP+4430DC]
/*ED8545*/  CMP DWORD PTR SS:[EBP+44294D],EAX
/*ED854B*/  JNZ SHORT 00ED8571
/*ED854D*/  PUSH EDI
/*ED854E*/  MOV EDX,EBX
/*ED8550*/  DEC EDX
/*ED8551*/  SHL EDX,2
/*ED8554*/  MOV EBX,DWORD PTR SS:[EBP+44294D]
/*ED855A*/  MOV EDI,DWORD PTR DS:[EBX+3C]
/*ED855D*/  MOV EDI,DWORD PTR DS:[EBX+EDI+78]
/*ED8561*/  ADD EBX,DWORD PTR DS:[EBX+EDI+1C]
/*ED8565*/  MOV EAX,DWORD PTR DS:[EBX+EDX]
/*ED8568*/  ADD EAX,DWORD PTR SS:[EBP+44294D]
/*ED856E*/  POP EDI
/*ED856F*/  JMP SHORT 00ED8587
/*ED8571*/  PUSH EDI
/*ED8572*/  MOV EAX,DWORD PTR DS:[ESI+C]
/*ED8575*/  ADD EAX,DWORD PTR SS:[EBP+4430D8]
/*ED857B*/  PUSH EAX
/*ED857C*/  PUSH EBX
/*ED857D*/  LEA EAX,DWORD PTR SS:[EBP+4431A4]
/*ED8583*/  PUSH EAX
/*ED8584*/  PUSH EDI
/*ED8585*/  JMP SHORT 00ED85D2
/*ED8587*/  MOV DWORD PTR DS:[EDI],EAX
/*ED8589*/  ADD DWORD PTR SS:[EBP+442951],4
/*ED8590*/  JMP 00ED84C7
/*ED8595*/  MOV DWORD PTR DS:[ESI],EAX
/*ED8597*/  MOV DWORD PTR DS:[ESI+C],EAX
/*ED859A*/  MOV DWORD PTR DS:[ESI+10],EAX
/*ED859D*/  ADD ESI,14
/*ED85A0*/  MOV EDX,DWORD PTR SS:[EBP+4430D8]
/*ED85A6*/  JMP 00ED8496
/*ED85AB*/  MOV EAX,DWORD PTR SS:[EBP+442A65]
/*ED85B1*/  PUSH EAX
/*ED85B2*/  ADD EAX,DWORD PTR SS:[EBP+4430D8]
/*ED85B8*/  POP EBX
/*ED85B9*/  OR EBX,EBX
/*ED85BB*/  MOV DWORD PTR SS:[EBP+442F11],EAX
/*ED85C1*/  POPAD
/*ED85C2*/  JNZ SHORT 00ED85CC
/*ED85C4*/  MOV EAX,1
/*ED85C9*/  RETN 0C
/*ED85CC*/  PUSH 0
/*ED85D1*/  RETN          //执行到返回至这里

壳代码解压完了,  Ctrl+S 搜索命令序列:
      
     mov edx,dword ptr ss:[ebp+C]
        mov edx,dword ptr ds:[edx]
        mov dword ptr ds:[edx],eax
结果只找到一处,纳闷....
/*EBCA6B*/  MOV EDX,DWORD PTR SS:[EBP+C]
/*EBCA6E*/  MOV EDX,DWORD PTR DS:[EDX]
/*EBCA70*/  MOV DWORD PTR DS:[EDX],EAX
而且下断点没用,程序运行没执行这里...
请大家帮忙看看,我该如何做,谢谢!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 95
活跃值: (419)
能力值: ( LV9,RANK:310 )
在线值:
发帖
回帖
粉丝
2
另外想问一下各位朋友,怎么把OD里的地址+代码完整的复制到帖子里啊??谢谢
2007-12-26 10:55
0
雪    币: 95
活跃值: (419)
能力值: ( LV9,RANK:310 )
在线值:
发帖
回帖
粉丝
3
哎,没人帮忙啊,又找了几个脚本来脱,都报错,用Asprotect2.XX IAT fixer v2.2S 老提示需要odbscript 1.47 or above,我下了主页上的1.48和1.51,还是同样提示...
2007-12-26 12:09
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
4
给你个建议,放弃
2007-12-26 12:47
0
雪    币: 87
活跃值: (47)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
5
。。。。。。。。。。
2007-12-26 13:04
0
雪    币: 87
活跃值: (47)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
6
我刚练习了一个asprotect2.00beta的手脱。不知和你这是否一样。
OEP比较好找,最后一次内存访问异常后,在代码段访问异常就可以到。主要麻烦在补区段,有60多处,用脚本,把这些代码搬移到代码区,dump出来就可以了。
如果不想手脱,用著名的volx脚本肯定没问题吧。
2007-12-26 13:06
0
雪    币: 95
活跃值: (419)
能力值: ( LV9,RANK:310 )
在线值:
发帖
回帖
粉丝
7
谢谢LS的朋友,刚才重新下了主页上的OD,脚本现在可以执行了,用的就是volx的脚本,但执行到一处提示错误,继续可以执行完,但没有脱壳后的程序,能不能帮忙看看?还有怎样复制OD里的地址和代码出来?谢谢!!
2007-12-26 13:22
0
雪    币: 216
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
打击新手
2007-12-26 13:26
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
为什么要让他放弃呢?
2007-12-26 13:32
0
雪    币: 87
活跃值: (47)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
10
是asprotect_2.xx_unpack的那个脚本吗?
执行完后目录下应有个de_待脱程序.exe文件,用irec修复iat,应该就可以了。

“复制OD里的地址和代码”,右键菜单里有。

版主说的没错,有的时候要学会放弃,如果不是兴趣或专业,何必给自己找麻烦,钻到一堆乱七八糟的代码里,有时回头看看,很多时候都是因为没有放弃,做了些无意义而浪费时间和精力的事情。
人的时间有限,找好方向,如果脱壳不是你的目标,何必花太多时间呢?
2007-12-26 13:55
0
雪    币: 95
活跃值: (419)
能力值: ( LV9,RANK:310 )
在线值:
发帖
回帖
粉丝
11
谢谢LS朋友的热心帮助,我下了两个volx的脚本,都是执行到中间msg提示:错误,并暂停,继续执行完并没有相应的东东出现...
一个Aspr2.XX_unpacker_v1.0SC.osc,一个Asprotect2.XX IAT fixer v2.2S
2007-12-26 14:13
0
游客
登录 | 注册 方可回帖
返回
//