我们接着上一篇   ”简单脱壳教程笔记(2)---手脱UPX壳(1)“继续。我们说了UPX我们可以使用四种方式,上一篇已经详细的讲解了单步跟踪法,接下来,我们讲解其他方式。

方法2:ESP定律法

ESP是我们的是一个寄存器,当程序使用pushad命令入栈的时候,只会让esp突变,根据堆栈平衡的原则,我们就可以找到OEP了。

操作:

1、找到关键句的下一句,将程序运行到此处,我们此处的关键代码就是pushad,将程序执行到下一句,就会发现ESP突变。

2、然后在命令行窗口中使用命令进行设置断点

可以在ESP上右键,选择在数据窗口中跟随,也可以使用dd  或 hr

dd XXXXX    转存在堆栈格式

hr XXXXX   访问时进行硬件中断

然后设置硬件访问断点(注意:把之前设置的硬件断点取消掉)

然后我们运行程序即可,就跳转到jmp  OEP 处

找到OEP,我们就可以根据1中的方法进行脱壳了。

方法3:2次内存镜像法

我们需要找到内存。 (要使用OllyICE_1.10.rar  不要使用吾爱的OD)

1、点击查看--内存(alt+m) 或者点击M即可

2、在内存窗口中找到程序段中的第一个 .rsrc ,然后下断点,

然后运行

3、我们在到内存中下断点,

然后运行

4、然后单步即可 就找到OEP了。

方法4:一步直达法(适合绝大部分的UPX壳和ASPACK壳)

我们在程序的开头见到有pushad,那么肯定会有popad,我们直接查询popad命令即可

简单脱壳教程笔记(3)---手脱UPX壳(2)相关推荐

  1. 简单脱壳教程笔记(2)---手脱UPX壳(1)

    本笔记是针对ximo早期发的脱壳基础视频教程,整理的笔记. ximo早期发的脱壳基础视频教程 下载地址如下: http://down.52pojie.cn/%E5%90%BE%E7%88%B1%E7% ...

  2. 简单脱壳教程笔记(10) --- 手脱EXE32PACK壳

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

  3. 手脱UPX壳的几种方法

    最近在研究各个壳的脱壳方法,有些心得,和大家分享一下如何手脱UPX的壳 我们的流程是 PEID查壳 得知壳的形式为 UPX 0.89.6 - 1.02/ 1.05 - 2.90 -> Marku ...

  4. RE入门之脱壳——手脱UPX壳

    很多加了壳的软件是很难逆向分析的,需要手脱.下面以UPX壳为例简单介绍一下如何手动脱壳 需要工具:x64dbg. 以buuctf中re的新年快乐为例 拿到程序以后使用x64dbg打开. F9运行到程序 ...

  5. 用ollydbg手脱UPX加壳的DLL

    用Ollydbg手脱UPX加壳的DLL 作者:fly [目标程序]:UPX加壳的EdrLib.dll.附件中还有输入表.重定位数据.UPXAngela以及UnPacked以供参考.        [作 ...

  6. 【2022.1.3】手脱压缩壳练习(含练习exe)

    [2022.1.3]手脱压缩壳练习(含练习exe) 文章目录 [2022.1.3]手脱压缩壳练习(含练习exe) 0.简介 1.单步跟踪法 (#)方法介绍 (0)练习exe下载 (1).查看源程序 ( ...

  7. 手脱UPX v0.89.6 - v1.02

    声明: 只为纪录自己的脱壳历程,高手勿喷 这个壳的脱法很多一般都一步直达的,步过我喜欢ESP定律 1.载入OD,在入口下一行ESP定律运行一次 00457170 > 60 pushad ; // ...

  8. 手脱压缩壳UPX的4种查OEP方法

    目录 先使用PEid进行查壳,可以看出壳的详细信息 方法一 单步跟踪 方法二 ESP定律法 方法三 两次内存镜像法 方法四 一步直到法 先使用PEid进行查壳,可以看出壳的详细信息 方法一 单步跟踪 ...

  9. 手脱UPX(堆栈平衡原理)

    一开始看到pushad F8执行直到只有esp,eip,变化 在esp处follow in dump 下硬件访问断点 F9运行在硬件断点停下 到达一个长跳转(跳到OEP) 完成 ----------- ...

最新文章

  1. css 超出隐藏滚动条_css 之内容溢出滚动,隐藏滚动条(解决火狐浏览隐藏不了滚动条问题)...
  2. 【机器视觉】 stop算子
  3. python条形图颜色设置_python – 根据值在matplotlib中更改3D条形图中的条形颜色
  4. C++ 11 在 Qt 5 中的应用
  5. 128位计算机 ps2,64位就是最强电脑?难道就没有128位的电脑吗
  6. 数据结构与算法(一) 线性表之顺序表
  7. sharepoint中显示网页库item的webpart和显示列表库item的webpart
  8. C# XML加载屏蔽注释 忽略注释的加载
  9. delphi报列表索引越界怎么处理_深入了解散列表
  10. DeepSort轨迹跟踪方法
  11. vf程序设计与c语言,全国计算机等级考试vf和C语言哪个更好
  12. C语言中的%f和%lf的区别
  13. android打包时出现***is not translated in zh-rCN (Chinese: China)
  14. Unity tips 之文字动画效果
  15. 基于xilinx fpga的ofdm通信系统基带设计_基于嵌入式Wi-Fi处理器的无线系统设计...
  16. “天地不仁,以万物为刍狗”正解
  17. 第十四届蓝桥杯三月真题刷题训练——第 10 天
  18. 7-1 家谱处理 超简单 40多行代码AC
  19. 作文批改网如何粘贴英语作文
  20. Z00334 轻量级JAVAEE企业应用实战(第3版) 百度网盘链接

热门文章

  1. 2月,写在转行7年之际
  2. IT服务管理(ITSM)是什么?ITSM工具哪个好用
  3. uniapp 扫码、拍照
  4. 解决jar文件不显示图标问题
  5. RxJava 3.x 使用总结
  6. multisim14 电流探针在哪儿
  7. MQL5 代码自动生成文档
  8. blp模型 上读下写_读写模型整理笔记
  9. paraview管道:PipeLine
  10. 【矩阵乘法】JZOJ_5223 B