手动脱壳入门第十五篇 FSG 1.33
番茄系统家园 · 2022-03-12 00:58:17
【脱文标题】 手动脱壳入门第十五篇 FSG 1.33
【脱文作者】 weiyi75[Dfcg]
【作者邮箱】 weiyi75@sohu.com
【作者主页】 Dfcg官方大本营
【使用工具】 Peid,Ollydbg,ImportREC,Loadpe
【脱壳平台】 Win2K/XP
【软件名称】 Unpackme
【软件简介】 Loveboom用VB写的一个FSG压缩的脱壳练习程序
【软件大小】 2.65 KB
FSG 1.33.rar
【加壳方式】 FSG 1.33 -> dulek/xt
【保护方式】 FSG压缩壳
【脱壳声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------------------------
【脱壳内容】
首先Peid查壳,为FSG 1.33 -> dulek/xt,OD载入运行,无任何异常,判断其为压缩壳。
00404B58 >BE A4014000 mov esi, fsg1_33.004001A4//外壳入口。
00404B5DADlods dword ptr ds:[esi]
00404B5E93xchg eax, ebx
00404B5FADlods dword ptr ds:[esi]
00404B6097xchg eax, edi
00404B61ADlods dword ptr ds:[esi]
00404B6256push esi
00404B6396xchg eax, esi
00404B64B2 80 mov dl, 80
00404B66A4movs byte ptr es:[edi], byte ptr ds:[esi>
00404B67B6 80 mov dh, 80
00404B69FF13call dword ptr ds:[ebx]
00404B6B^ 73 F9 jnb short fsg1_33.00404B66
00404B6D33C9xor ecx, ecx
00404B6FFF13call dword ptr ds:[ebx]
00404B7173 16 jnb short fsg1_33.00404B89
00404B7333C0xor eax, eax
00404B75FF13call dword ptr ds:[ebx]
00404B7773 1F jnb short fsg1_33.00404B98
打开内存镜像,它工作区段就是404000 resources段里面,内存镜像断点没有作用。它也没有用PUSHAD等语句,ESP定律也不能用。据说FSG 1.33还有变形版本,单步慢慢跟踪太费时间,下API断点,也慢。
对付它最好的方法就是模拟跟踪,因为它没有SEH,模拟跟踪最好不过了。
内存镜像,项目 13
地址=00404000
大小=00001000 (4096.)
Owner=fsg1_3300400000
区段=
包含=SFX,imports,resources// 当前段是在404000里面。
类型=Imag 01001002
访问=R
初始访问=RWE
内存镜像,项目 12
地址=00401000
大小=00003000 (12288.)
Owner=fsg1_3300400000
区段=
包含=code//Oep肯定是在Code段里面。不管FSG在SFX,imports,resources区段里面解压,循环搞什么飞机。最后肯定要跨段访问401000
Code段。
类型=Imag 01001002
访问=R
初始访问=RWE
于是,命令行下
tc eipBE A4014000 mov esi, fsg1_33.004001A4//外壳入口。
00404B5DADlods dword ptr ds:[esi]
00404B5E93xchg eax, ebx
00404B5FADlods dword ptr ds:[esi]
00404B6097xchg eax, edi
00404B61ADlods dword ptr ds:[esi]
00404B6256push esi
00404B6396xchg eax, esi
00404B64B2 80 mov dl, 80
00404B66A4movs byte ptr es:[edi], byte ptr ds:[esi>
00404B67B6 80 mov dh, 80
00404B69FF13call dword ptr ds:[ebx]
00404B6B^ 73 F9 jnb short fsg1_33.00404B66
00404B6D33C9xor ecx, ecx
00404B6FFF13call dword ptr ds:[ebx]
00404B7173 16 jnb short fsg1_33.00404B89
00404B7333C0xor eax, eax
00404B75FF13call dword ptr ds:[ebx]
00404B7773 1F jnb short fsg1_33.00404B98
00404B79B6 80 mov dh, 80
00404B7B41inc ecx
00404B7CB0 10 mov al, 10
.........................................................................................
命令行
bp GetModuleHandleA
77E6AB06 >&nbs
免责声明: 凡标注转载/编译字样内容并非本站原创,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如果你觉得本文好,欢迎推荐给朋友阅读;本文链接: https://m.nndssk.com/wlaq/192045Y6qaHt.html。
