上一篇:PELOCKnt破解 >>
Professional Quest脱壳实例…
发信人: shizg (刀客☆永远的痛), 信区: Hacker
标 题: Professional Quest脱壳实例(vbox4.10)
发信站: BBS 水木清华站 (Fri Jun 23 10:10:12 2000)
这个东东以前就装了,是一个做问卷调查的软件。最近要用,所以拿出来一看,
哇塞,不能用了。然后加载S-Ice,再运行看,出来一个框,是什么vbox警告框,
意思是说我有debug,呵呵。知道是vbox保护了。
下面就是脱壳过程,想练手的可以照着做(找不到可以问我要),好像上一次
有人问那个codevizor也是用vbox4.10保护的:
1。打S-Ice补丁,就是backdoor keeper,这样就不怕vbox不能脱壳弹出上面那个
框框了。如果用trw更爽,直接faults off命令,就可以了。
2。S-Ice加载执行程序quest.exe
3。中断在B53000:
015F:00B53000 PUSH DWORD PTR [ESP+0C]
015F:00B53004 PUSH DWORD PTR [ESP+0C]
015F:00B53008 PUSH DWORD PTR [ESP+0C]
015F:00B5300C PUSH 2B08AEB1
015F:00B53011 PUSH 2BBD9A3E
015F:00B53016 PUSH 2B08AAE1
015F:00B5301B PUSH 2B08AA1B
015F:00B53020 CALL [00B531F0]
015F:00B53026 PUSH FFFFFFFF
015F:00B5302B CALL EAX
015F:00B5302D RET 000C
4。单步执行到B5302B,此时eax=00B4E000,F8跟进,如下:
015F:00B4E000 PUSH DWORD PTR [ESP+0C]
015F:00B4E004 PUSH DWORD PTR [ESP+0C]
015F:00B4E008 PUSH DWORD PTR [ESP+0C]
015F:00B4E00C PUSH 0209AF7E
015F:00B4E011 PUSH FEF61153
015F:00B4E016 PUSH A509A770
015F:00B4E01B PUSH DEFA1690
015F:00B4E020 CALL [00B4E1D4]
015F:00B4E026 PUSH FFFFFFFF
015F:00B4E02B CALL EAX
015F:00B4E02D RET 000C
5。注意B4E020就是vbox用来判断是否过期、有debug的代码,如正常则解码,并
返回程序正确地址于Eax,此时eax=00913F34
6。到B4E02B跟进去,如下:
015F:00913F34 MOV [009E1F4C],ESP
015F:00913F3A XOR EBP,EBP
015F:00913F3C PUSH EBP
015F:00913F3D MOV EBP,ESP
015F:00913F3F CALL KERNEL32!GetVersion
015F:00913F44 MOV EDX,EAX
015F:00913F46 AND EDX,000000FF
015F:00913F4C MOV [009E1F40],EDX
015F:00913F52 MOV EDX,EAX
015F:00913F54 SHR EDX,08
015F:00913F57 AND EDX,000000FF
015F:00913F5D MOV [009E1F44],EAX
。。。
这就是解码后的程序啊。只需要将内存dump出来就可以。
dump方法比较多,我就用procdump来dump,选择full dump,并且在选项里面选择
rebuild新的import表,否则程序是不能运行的,因为找不到dll入口嘛,还执行
什么,呵呵。如果用trw2000,可以用makepe命令
7。最后一步,dump出一个文件,比如quest1.exe,必须修改程序入口地址,可以
用peedit,procdump,将入口地址改为前面跟得的地址,但要注意,该地址应是
00913F34-image的基址(00400000)=00513F34
8。这就是一个脱过壳的执行文件了,运行不需要vbox库,当然过期什么都没有了,
那个干扰画面也没有了。
愿意的话,还可以写一个procdump的script,以后解vboxb410.dll的壳就不用这么
麻烦了。
下一篇:EncryptPE V2.2005314 主程… >>
相关文章:
- · 概览: DB2 和 Visual Studio .NET
- · ADO.NET 的数据存取性能
- · Dan Wolfson 就 DB2 和 Web…
- · 从数据管理到信息集成: 自然…
- · 有效利用 Domino/Notes 缓存(Cache)机制
- · 集成 Macromedia Flash 和 IBM Lotus Notes/Domino:基于 Domino 解决方案的基于 Fla…
- · 了解 IBM Lotus Sametime 7.5 中的新特性和新技术
- · Lotus Sametime 开发入门: 使用客户端 ToolKit 与 Sametime 服务器交互
- · Lotus C API Extension Manager 应用举例
- · 在 IBM Workplace 中部署更…
- · 比较基于服务器的邮件和本地…
- · Web 客户端集成到 WebSpher…
- · Lotus Instant Messaging
- · Collaboration Services 2.…
- · Collaboration Services 2.5
- · 向 IBM Workplace portlet …
- · Instant Messaging SPI 进行…
- · WebSphere Application Server 中的内存泄漏检测与分析: 第 1 部分:内存泄漏概述
- · 使用 Rational Application Developer 创建接收 SOAP 附件的 Web 服务
- · 使用 WebSphere Business Monitor ——综述
- · 探索 WebSphere Portal V5.1.0.1 编程模型: 第 3 部分:将 WebSphere Portal 集成到安…
- · 使用 Business Process Choreographer API 通过 WebSphere Process Server V6 创建业…
- · 使用 IBM WebSphere Business Integration V6.0 产品的端到端解决方案,第 2 部分: 实…
- · 使用 WebSphere Portal V5.1.0.1 开发多区域设置网站
- · 扩展 WebSphere Developer for zSeries v6.0 中的 LPEX Editor
- · Server V6 系统管理——第 …
- · Linux SEK 2005 Release 1:
- · 客户端集成到 WebSphere Po…
- · Architect V6.0 for Linux …
- · 自主监控工具维护联邦数据
- · 第 11 部分:使用 CICS 事务…
- · e-Commerce 的安全性:攻击…
- · 协同使用 IBM Cloudscape V…
- · WebSphere Application Server 中的内存泄漏检测与分析: 第 1 部分:内存泄漏概述
- · 使用开放源代码框架的 Java 应用程序的 Web 服务集成模式,第 1 部分: 实现调用模式
- · 人工智能 Java 坦克机器人系列: 神经网络,上部
- · 人工智能 Java 坦克机器人系列: 神经网络,下部
- · 让开发自动化: 持续检查
