游乐游手机版
首页/网络安全/文章详情

FSG 1.33手动脱壳入门第十五篇

时间:2026-07-21 19:18
FSG 1 33 手动脱壳入门教程:模拟跟踪与API断点技巧 直接进入主题:本次要处理的是FSG 1 33压缩壳,使用Peid查壳显示为FSG 1 33 -> dulek xt。用OD加载后没有任何异常,说明这是一个标准的压缩壳,既没有反调试机制,也不存在自校验。外壳入口代码如下: 00404B58

FSG 1.33 手动脱壳入门教程:模拟跟踪与API断点技巧

直接进入主题:本次要处理的是FSG 1.33压缩壳,使用Peid查壳显示为FSG 1.33 -> dulek/xt。用OD加载后没有任何异常,说明这是一个标准的压缩壳,既没有反调试机制,也不存在自校验。外壳入口代码如下:

00404B58 >  BE A4014000     mov esi, fsg1_33.004001A4
00404B5D    AD              lods dword ptr ds:[esi]
00404B5E    93              xchg eax, ebx
00404B5F    AD              lods dword ptr ds:[esi]
00404B60    97              xchg eax, edi
00404B61    AD              lods dword ptr ds:[esi]
00404B62    56              push esi
00404B63    96              xchg eax, esi
00404B64    B2 80           mov dl, 80
00404B66    A4              movs byte ptr es:[edi], byte ptr ds:[esi]
00404B67    B6 80           mov dh, 80
00404B69    FF13            call dword ptr ds:[ebx]
00404B6B  ^ 73 F9           jnb short fsg1_33.00404B66
00404B6D    33C9            xor ecx, ecx
00404B6F    FF13            call dword ptr ds:[ebx]
00404B71    73 16           jnb short fsg1_33.00404B89
00404B73    33C0            xor eax, eax
00404B75    FF13            call dword ptr ds:[ebx]
00404B77    73 1F           jnb short fsg1_33.00404B98

打开内存镜像查看,发现工作区段位于404000(resources段),其中包含SFX、imports、resources。有意思的是,常规的内存镜像断点在这里并不奏效——因为这段外壳代码没有使用PUSHAD等方便配合ESP定律的指令。如果尝试单步跟踪,FSG 1.33还有变形版本,耗时较长不说,下API断点也会显得很慢。

对付此类壳的最佳策略是模拟跟踪——由于它根本没有SEH处理,模拟追踪几乎不会触发异常。来看内存镜像的详细信息:

内存镜像,项目 13
地址=00404000
大小=00001000 (4096.)
Owner=fsg1_33  00400000  
区段=
包含=SFX,imports,resources  // 当前段是在404000里面。
类型=Imag 01001002
访问=R
初始访问=RWE

内存镜像,项目 12
地址=00401000
大小=00003000 (12288.)
Owner=fsg1_33  00400000
区段=
包含=code      // Oep肯定是在Code段里面。不管FSG在SFX,imports,resources区段里面解压,循环搞什么飞机。最后肯定要跨段访问401000 Code段。
类型=Imag 01001002
访问=R
初始访问=RWE

关键判断已经明确:OEP一定落在401000的code段里。无论外壳在resources段里如何折腾,最终都要跨段跳转到code段执行。于是直接在命令行下开搞:

tc eip

从外壳入口开始模拟运行。注意,模拟跟踪会快速执行,但一旦碰到跨段访问就会自动停下——这正是我们想要的效果。再加上一个断点:

bp GetModuleHandleA

运行程序,很快会停在GetModuleHandleA处。这时按下ALT+F9(执行到返回)回到外壳代码,然后单步往下走。不出意外,在某个位置就能看到OEP的身影了。整个流程快速而简洁,无需手动分析复杂的解压循环。

简单总结一下:FSG 1.33没有SEH、没有PUSHAD,当常规ESP定律和内存断点失效时,模拟跟踪配合API入口断点是最直接的解法。记住一个核心原则——外壳无论怎么折腾,最终都要跳到OEP所在的代码段,抓住这个必然的跨段动作,就能一击制胜。

来源:https://www.jb51.net/hack/5154.html
上一篇计算机12种常用密码破解方法详解 下一篇从Unix系统获取密码档的方法(一)
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
微软IE浏览器BrowseDialog类(ccrpbds6.dll)拒绝服务安全漏洞深度分析
网络安全 · 2026-07-25

微软IE浏览器BrowseDialog类(ccrpbds6.dll)拒绝服务安全漏洞深度分析

BrowseDialog Class (ccrpbds6 dll) 导致 Internet Explorer 拒绝服务漏洞分析 该漏洞的PoC(概念验证代码)实现极为直接——触发浏览器崩溃的条件简单得令人意外。测试环境采用Windows XP Professional SP2(已安装全部补丁)并运行

MS07-002 Excel畸形调色板记录拒绝服务漏洞PoC
网络安全 · 2026-07-25

MS07-002 Excel畸形调色板记录拒绝服务漏洞PoC

MS07-002漏洞详解:Excel调色板记录(Palette Record)堆溢出引发拒绝服务(POC) 首先给出几个核心结论:该漏洞的根本原因是Excel在解析Palette Record(调色板记录)时存在边界检查缺陷,导致堆溢出。然而,其利用条件极为苛刻,远非一个可靠稳定的漏洞——攻击者能够

企业网络安全建设完整方案与最佳实践指南
网络安全 · 2026-07-25

企业网络安全建设完整方案与最佳实践指南

网络安全已从IT部门职责上升为企业生存与国家安全的底线,数据泄密多源于U盘等日常操作。提升全员安全意识是首要防线,等保定级流程包括确定对象、初步定级、专家评审、主管部门核准及备案审核,形成可落地的防护标准。

Adobe Acrobat Reader临时文件创建漏洞
网络安全 · 2026-07-25

Adobe Acrobat Reader临时文件创建漏洞

Acrobat Reader 作为经典 PDF 阅读器,长期占据办公与日常使用的主流地位。然而,即便是成熟产品也可能出现安全疏漏——本次受影响的是 8 1 2 版本。 具体而言,漏洞存在于 acroread 脚本处理 installCertificate 选项时,对临时文件的不安全处理方式。拥有本地

微软Windows DCE-RPC服务控制管理器中的ChangeServiceConfig2A函数内存破坏漏洞
网络安全 · 2026-07-25

微软Windows DCE-RPC服务控制管理器中的ChangeServiceConfig2A函数内存破坏漏洞

MS Windows DCE-RPC svcctl ChangeServiceConfig2A() 0day 内存破坏漏洞 PoC 分析与利用 本文提供了一份针对 MS Windows DCE-RPC 服务控制管理器(svcctl)中 ChangeServiceConfig2A() 函数的内存破坏