首页
社区
课程
招聘
某软件SVKP 1.32的脱壳
发表于: 2005-5-14 13:00 4883

某软件SVKP 1.32的脱壳

2005-5-14 13:00
4883
【破解作者】 beach
【作者主页】 http://www.j111.com/index.asp?boardid=165
【使用工具】 FI3.01、ollydbg
【破解平台】 WinXP
【软件名称】 SVKP 1.32加壳的某软件
【加壳方式】 SVKP 1.32
【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------------------------
【破解内容】

看了几篇大侠写的脱SVKP壳的文章.我也试了几种方法脱这个壳.最后找了个最简单的方法脱了这个壳.是

不是真实的
OEP还请各位大侠指教......呵呵
用PEiD查看壳为:SVKP 1.3x -> Pavol Cerven(用FI3.01查壳为SVKP 1.32版.看来还是FI强大啊!)

一.设置Ollydbg忽略所有异常选项,OD自动隐藏插件帮你隐藏OD.
OD载入程序.
00842000 L>  60                pushad               //外壳入口,F9运行
00842001     E8 00000000       call L2Wind.00842006
00842006     5D                pop ebp
00842007     81ED 06000000     sub ebp,6
...............................................这里省略代码^o^
0012E3B6     6285 1E220000     bound eax,qword ptr ss:[ebp+221>     //典型SVKP1.32最后一次异

常.
0012E3BC     EB 02             jmp short 0012E3C0
0012E3BE     0FE88B D1EB02CD   psubsb mm1,qword ptr ds:[ebx+CD>
0012E3C5     208B C2EB02CD     and byte ptr ds:[ebx+CD02EBC2],>
0012E3CB     208B 8A401600     and byte ptr ds:[ebx+16408A],cl
0012E3D1     008B 89740100     add byte ptr ds:[ebx+17489],cl
0012E3D7     00BA 61110000     add byte ptr ds:[edx+1161],bh
0012E3DD     68 00400000       push 4000
.................................................................

利用大侠们的二次内存断点法到达Oep.省了不少功夫......呵呵
Alt+M 打开内存镜像.

内存镜像
地址=00842000
大小=00020000
Owner=L2Wind 00400000
区段=.
包含=SFX,imports       //一次对SFX,imports下内访问断点,shift+F9运行中断。
类型=Imag 01001002
访问=R
初始访问=RWE

0012FF17     8B89 78010000     mov ecx,dword ptr ds:[ecx+178]  //中断在这里
0012FF1D     8BAD 42210000     mov ebp,dword ptr ss:[ebp+2142]
0012FF23     BA 5FC90600       mov edx,6C95F
0012FF28     55                push ebp
0012FF29     57                push edi
0012FF2A     56                push esi
0012FF2B     50                push eax

继续内存镜像

内存镜像
地址=00401000
大小=00228000
Owner=L2Wind 00400000
区段=
包含=code     //在Code段下内存访问断点.shift+F9运行
类型=Imag 01001002
访问=R
初始访问=RWE

004019E4    /EB 10             jmp short L2Wind.004019F6    //当当当当...脱吧...
004019E6    |66:623A           bound di,dword ptr ds:[edx]
004019E9    |43                inc ebx
004019EA    |2B2B              sub ebp,dword ptr ds:[ebx]
004019EC    |48                dec eax
004019ED    |4F                dec edi
004019EE    |4F                dec edi
004019EF    |4B                dec ebx
004019F0    |90                nop
004019F1   -|E9 98906200       jmp 00A2AA8E
004019F6    \A1 8B906200       mov eax,dword ptr ds:[62908B]

我找到的就是这个OEP了.....因为对手动修复指针没经验,脱壳后.好多无效指针.
修复了几天不能修复这个程序.^o^.......呵呵

还请各位大侠多多指教

--------------------------------------------------------------------------------
【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!

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

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
2
避开输入表加密
2005-5-14 13:06
0
雪    币: 209
活跃值: (55)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
一直有个问题不明白,为啥IAT的加密不能在加壳的时候就加密了,
却在程序运行的时候才加密,这样加密IAT也太弱了吧
2005-5-14 13:30
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
有个教程说用SVKP加壳的exe文件存在错误的重定位数据。OD加载时报一个错,IDA反编译时会挂掉.我用OD加载时也是报错.是删了重定位数据再脱壳的.这样会影响脱壳的软件吗?
2005-5-14 19:03
0
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
5
只是弹出警告吧
不影响脱壳就行
2005-5-14 19:29
0
游客
登录 | 注册 方可回帖
返回
//