声明:

只为纪录自己的脱壳历程,高手勿喷

1.在入口的第二行ESP定律下硬件断点然后F9运行8次(因为第9次就跑飞了)

0040955C >                pushad
0040955D EB jmp short UnPackMe. //ESP定律F9运行8次
0040955F 625CE9 F1 bound ebx,qword ptr ds:[ecx+ebp*-0xF]
87EB xchg ebx,ebp
EB jmp short UnPackMe.0040956A
^ E0 BB loopdne short UnPackMe.
 

2.ESP定律后的落脚点

0040B186                  push ecx        //ESP8次的落脚点,然后F8往下跟
0040B187 87D9 xchg ecx,ebx
0040B189 inc eax
0040B18A dec eax
0040B18B 87D9 xchg ecx,ebx
0040B18D 83C4 add esp,0x4
0040B190 8B6C24 mov ebp,dword ptr ss:[esp+0x24]
 

3.然后单步,注意点:

①带数字的CALL用F7跟进
②不带数字的CALL直接F8步过
③尽量使用F2,shift+F9,F2来下断运行,因为我常使用F4的时候会跑飞

路上需要注意的下断  地方一:
  ^\ FA           jnb short UnPackMe. //在这个跳转的下一行下断
0040017B 3A jnz short UnPackMe.004001B7 //这是一个向下的跳转
0040017D AA stos byte ptr es:[edi]
0040017E ^ EB E0 jmp short UnPackMe. //在下一行CALL下断点
FF53 call dword ptr ds:[ebx+0x8]
路上需要注意的下断  地方二:
004001CF   /            jnz short UnPackMe.004001D4//这个向上跳转下面下断点
004001D1 -|FF63 0C jmp dword ptr ds:[ebx+0xC] //因为这一行直接跳向OEP的
004001D4 \ push eax
004001D5 push ebp

4.来到OEP

                  push ebp                 //这里就是OEP
8BEC mov ebp,esp
6A FF push -0x1
push UnPackMe.
0040170A push UnPackMe.
0040170F :A1 mov eax,dword ptr fs:[]
push eax
: >mov dword ptr fs:[],esp
0040171D 83EC sub esp,0x68
 

5.然后修复脱壳就OK了

手脱FSG 2.0 -> bart/xt的更多相关文章

  1. 手脱FSG(2.0)

    1.查壳 2.x32dbg脱壳 在第二个xchg处使用ESP定律脱壳: 由于FSG壳特性,在跳转后位置向上查找,找到js\jne\jmp,jmp就是OEP位置: 在此处使用工具进行脱壳: 完成! 3. ...

  2. 手脱FSG v1.33

    1.载入PEID FSG v1.33 (Eng) -> dulek/xt 2.载入OD,先F8跟一会 004103E3 > BE A4014000 mov esi,fsg1_33.0040 ...

  3. 填坑专记-手脱FSG壳

      妈呀,脱FGS壳真的是坎坷颇多,多亏吾爱破解前辈们的帮忙.我一定要记录下来,省的以后再无法解决.   已经查看是FSG壳了.找到入口也容易了.重点就是脱壳并修复好它. 脱壳   OEP为:   使 ...

  4. 手脱PEncrypt 4.0

    1.载入PEID PEncrypt 4.0 Gamma / 4.0 Phi -> junkcode [Overlay] 2.载入OD,没什么头绪,忽略所有异常,用最后一次异常法shift+F9运 ...

  5. 手脱EZIP v1.0

    一.单步 1.载入PEID查壳 EZIP v1.0 2.载入OD,一上来就是一个大跳转,F8单步一直走 0040D0BE > $ /E9 jmp Notepad.004102DC ; //入口点 ...

  6. 手脱ACProtect V2.0(无Stolen Code)

    1.载入PEID ACProtect V2.0 -> risco 2.载入OD > 00A04000 push ACP_Feed.0040A000 ; //入口点 0B104000 pus ...

  7. 手脱Aspack变形壳1

    1.载入PEID Aspack v2.12 -> www.aspack.com 2.载入OD,不管是看查壳信息还是看入口特征都跟我上一次发的一个手脱Aspack v2.12的帖子相同http:/ ...

  8. <逆向学习第三天>手动脱FSG壳,修复IAT。

    其实对于简单的壳来说,脱壳常用的方法也无非是那几种,但是每种有每种的好处,具体使用那种方法视情况而定,我今天学习的这个壳很简单,但是重点在于修复IAT. 一.查壳: FSG 2.0的壳. 二.脱壳: ...

  9. 简单脱壳教程笔记(7)---手脱PECompact2.X壳

    本笔记是针对ximo早期发的脱壳基础视频教程.整理的笔记.本笔记用到的工具下载地址: http://download.csdn.net/detail/obuyiseng/9466056 简单介绍: F ...

随机推荐

  1. vs2017搭建linux c++开发环境

    最近一直在阅读ovs的源码,看到用户态代码的时候,需要对用户态的代码进行调试,一开始想直接使用linux中的GDB进行调试,但是ovs的工程太过于复杂,从网上找了些文章,发现vs2017能够支持lin ...

  2. 238. [LeetCode] Product of Array Except Self

    Given an array nums of n integers where n > 1,  return an array output such that output[i] is equ ...

  3. NO.1:自学python之路------Hello world、判断、循环

    引言 人工智能如今越来越贴近生活,在这里将记录我自学python与tensorflow的过程.编程使用IDE:visual studio 2017,python版本3.6.4,tensorflow版本 ...

  4. Powershell按文件最后修改时间删除多余文件

    Powershell按文件最后修改时间删除多余文件 1. 删除目录内多余文件,目录文件个数大于$count后,按最后修改时间倒序排列,删除最旧的文件. Sort-Object -Property La ...

  5. 团队作业——王者光耀:team

    光耀101  <光耀101>是福州大学数计学院计算机专业推出的中国首部程序猿脱发养成节目.由张栋担任发起人,刘晨瑶.畅畅担任导师.  该节目召集了你猜多少位选手,通过任务.训练.考核,让选 ...

  6. lintcode-414-两个整数相除

    414-两个整数相除 将两个整数相除,要求不使用乘法.除法和 mod 运算符. 如果溢出,返回 2147483647 . 样例 给定被除数 = 100 ,除数 = 9,返回 11. 标签 二分法 思路 ...

  7. 解析DXF图形文件格式

    一.DXF文件格式分析 DXF文件由标题段.表段.块段.实体段和文件结束段5部分组成,其内容如下. ☆标题段(HEADER)标题段记录AutoCAD系统的所有标题变量的当前值或当前状态.标题变量记录了 ...

  8. 实现Spring管理struts的Action

    struts2和spring的整合,关键点在于struts2中的action要纳入spring容器的管理中成为一个bean.  可以在struts2中配置:  <struts>      ...

  9. 1 RabbitMQ 安装,配置

    1:安装 yum install -y rabbitmq-server   2:主要程序介绍 # 管理插件的程序 /usr/sbin/rabbitmq-plugins # 服务程序 /usr/sbin ...

  10. 复利计算器Junit单元测试

    一.测试场景 测试模块 测试输入 预期结果 运行结果 bug跟踪 复利计算 (本金,利率,年限,次数) 终值     测试运算结果 (100,5,3,1) 115.76 115.76   测试输入负数 ...