ESP定律法的步骤

ESP定理脱壳(ESP在OD的寄存器中,我们只要在命令行下ESP的硬件访问断点,就会一下来到程序的OEP了!)

(1)开始就点F8,注意观察OD右上角的寄存器中ESP有没突现(变成红色)(这只是一  般情况下,更确切的说我们选择的ESP值是关键句之后的第一个ESP值)

(2)在命令行下:dd XXXXXXXX(指在当前代码中的ESP地址,或者是hr XXXXXXXX),  按回车

(3)选中下断的地址,断点--->硬件访--->WORD断点

(4)按一下F9运行程序,直接来到了跳转处,按下F8,到达程序OEP

实战

1 查壳

用PEID查壳的结果如下图,可以看出程序加了ASPack2.12的壳

2 寻找OEP

(1)用OD载入该程序

(2)按下F8单步步过,发现ESP此时是红色,记下此时ESP寄存器中的值0012FF6C(载入程序处的下一个ESP是红色,当然每个人机器上运行这个值有可能不同)

(3)在命令行下输入dd 0012FF6C,然后按下回车键

(4)选中要下断点的0012FF6C那行,依次选择断点 -> 硬件访问 -> Word

(5) 在菜单栏调试(D)下的硬件断点(H)下选项下可以看到我们设置的硬件断点

(6)然后按下F9运行程序,运行到程序停止

(7)删除前面下的硬件断点,选择调试(D)下的硬件断点(H),弹出如下对话框,点击  删除1按钮删除前面下的硬件断点

(8)运用F8很快会到达程序的OEP(此时需要使用F8单步步过)

3 脱壳

可以使用OD自带插件,也可以用LordPE,方法和前面"单步跟踪法"中使用方法一样

4 修复

可以使用ImportFix,方法和前面"单步跟踪法"中使用方法一样

文中用到的加壳程序下载地址:http://download.csdn.net/detail/qiurisuixiang/4363770

破解入门(五)-----实战ESP定律法脱壳相关推荐

  1. Flutter快速入门 五步搞定Flutter环境配置

    Flutter是什么? Flutter是一款移动应用程序SDK,一份代码可以同时生成iOS和Android两个高性能.高保真的应用程序. Flutter目标是使开发人员能够交付在不同平台上都感觉自然流 ...

  2. python web自动化测试入门与实战杨定佳pdf_Python Web自动化测试入门与实战

    篇 基础篇 章 学习环境的搭建 1.1 环境搭建 1.1.1 Selenium简介 1.1.2 Python简介 1.1.3 Python的安装 1.1.4 环境变量的设置 1.1.5 Seleniu ...

  3. 破解入门(三)-----脱壳的常用方法

    什么是壳 大家应该先明白"壳"的概念.在自然界中,我想大家对"壳"这东西应该都不会陌生了,植物用它来保护种子,动物用它来保护身体等等.同样,在一些计算机软件里也 ...

  4. 8s pod 查看 的yaml_Kubernetes入门到实战(五)深入浅出详解Pod

    作者:Happy老师 链接:https://blog.51cto.com/happylab/2500457 写在前面 前面的系列文章已介绍kubernetes架构,安装,升级和快速入门,读者通过文章的 ...

  5. Python入门到实战(五)自动化办公、pandas操作Excel、数据可视化、绘制柱状图、操作Word、数据报表生成、pip install国内镜像下载

    Python入门到实战(五)conda使用.pandas操作Excel.数据可视化.绘制柱状图.操作Word.数据报表生成.pip install国内镜像下载 conda使用 常用操作 配置VS+Co ...

  6. 【五天时间】Qt从入门到实战:第一天

    [五天时间]Qt从入门到实战:第一天 第一天 1.1 Qt的介绍.优点.成功案例 什么是Qt? Qt的优点 Qt的成功案例 1.2 创建第一个Qt程序 1.3 熟悉按钮控件常用API 1.4 对象树的 ...

  7. k8s之Pod详解(五)【Kubernetes(K8S) 入门进阶实战完整教程,黑马程序员K8S全套教程(基础+高级)】

    参考于Kubernetes(K8S) 入门进阶实战完整教程,黑马程序员K8S全套教程(基础+高级) Pod Pod的结构 每个Pod中都可以包含一个或者多个容器 这些容器可以分为两类: 用户自定义用的 ...

  8. 《Angular4从入门到实战》学习笔记

    <Angular4从入门到实战>学习笔记 腾讯课堂:米斯特吴 视频讲座 二〇一九年二月十三日星期三14时14分 What Is Angular?(简介) 前端最流行的主流JavaScrip ...

  9. Java从入门到实战总结-4.2、数据库高级

    Java从入门到实战总结-4.2.数据库高级 文章目录 Java从入门到实战总结-4.2.数据库高级 第一章 数据完整性 1.1 数据库的完整性 1.2 实体完整性 1.2.1 主键约束(primar ...

最新文章

  1. 003:Virtualenvwrapper使用
  2. JAVA顺序表的简单实现
  3. 为什么我的 Func 如此之慢?
  4. java中线程调度遵循的原则_深入理解Java多线程核心知识:跳槽面试必备
  5. ArrayDeque 双端队列
  6. ACM-线段树区间更新+离散化
  7. Google 搜索老矣,尚能饭否?
  8. LINUX下的PHP
  9. 数学分析教程(科大)——3.6笔记+习题
  10. 一元云购系统接入短信功能问题汇总
  11. JeecgBoot 3.4.3-GA 版本发布,开源免费的企业级低代码平台
  12. GitHub的Linux配置与常用操作
  13. 思科服务器的dns如何配置文件,思科在服务器上配置dns
  14. 2021-09-27 网安实验-取证分析-计算机取证之Xplico
  15. win7电脑开启wifi
  16. # bzoj2215: [Poi2011]Conspiracy 2-sat
  17. 激光类雷达障碍物检测与追踪——DON点云滤波
  18. 使用Cpoly.f90注意事项
  19. smartctl 使用
  20. PostgreSQL中的两阶段提交

热门文章

  1. 捕获鼠标事件-JavaScript入门基础(005)
  2. C语言:【入门】求长方形的周长和面积
  3. 《DFQ》开发随录——后记
  4. 博图pro版和adv版区别_笔记本定制版什么意思?笔记本标配版和定制版的区别与利弊分析...
  5. 年度文章集合 | 最全微前端集合【建议收藏】
  6. PMAC硬件-一个运动控制系统的实例
  7. JavaScript实现输入圆的半径,输出周长、体积和面积的代码
  8. 【电力系统】基于matlab粒子群算法求解热电联产系统优化配置问题【含Matlab源码 2298期】
  9. 【游戏策划】《游戏架构设计与策划基础》学习收获要点-------任务与关卡的设计
  10. svm对未知数据的分类_SVM对sklearn自带手写数字数据集进行分类