声明:

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

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

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

2.ESP定律后的落脚点

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

3.然后单步,注意点:

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

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

4.来到OEP

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

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. 技本功丨收藏!斜杠青年与你共探微信小程序云开发(下篇)

    2019年2月26日,人们为了一个杯子疯了一天. 星巴克猫爪杯,一场已经与猫无关了的“圣杯战争“.网上的倒卖价格,已炒至近千元! 求而不得,舍而不能,得而不惜.这是人最大的悲哀... 所以,请珍惜以下 ...

  2. C++ 名字空间namespace的使用

    A namespace is a scope.C++ provides namespaces to prevent name conflicts.A namespace is a mechanism ...

  3. AOP:静态代理实现方式①通过继承②通过接口

    文件结构: 添加日志: package com.wangcf.manager; public class LogManager { public void add(){ System.out.prin ...

  4. win10自带中文输入法的用户体验

    用户界面: 貌似没有什么界面,不过我感觉这就是最大的优点,没有过度渲染的界面,没有烦人的推送.弹窗,没有定期不定期的更新提示,简洁也是我使用这款输入法的最主要的原因 记住用户的选择: 这点我认为win ...

  5. prefix pch 中引用cocoapods 中的头文件失败

    如题,遇到这个问题,卡了几个小时,记下来防止下次再卡住: 解决办法: 1.pod install, 2.新建pch文件:projectname-Prefix.pch, 3.按要求在工程配置中添加, O ...

  6. 团队作业4——第一次项目冲刺(Alpha版本)第三次

    一.会议内容 制定任务内容 制作leangoo表格 初步工作 二.各人工作 成员 计划任务 遇见难题 贡献比 塗家瑜(组长) api搭建 无 1 张新磊 数据库搭建完成 无 1 姚燕彬 功能测试 无 ...

  7. JavaScript数组去重的四种方法

    今天,洗澡的想一个有趣的问题,使用js给数组去重,我想了四种方法,虽然今天的任务没有完成,5555: 不多说,po代码: //方法一:简单循环去重    Array.prototype.unique1 ...

  8. 设计模式--Restful笔记(一)

    一.REST基础概念 首先REST是 Representational State Transfer 的缩写,如果一个架构符合REST原则,它就是RESTful架构. 在REST中的一切都被认为是一种 ...

  9. 图文详解 IntelliJ IDEA 15 创建普通 Java Web 项目

    第 1 部分:新建一个 Java Web Application 项目 File -> New -> Project…,请选择 Java EE 这个模块下的 Web Application ...

  10. 爬虫学习之-操作mysql

    在操作数据库的时候,python2中一般使用mysqldb,但在python3中已经不在支持mysqldb了,我们可以用pymysql和mysql.connector.本文的所有操作都是在python ...