破解入门(五)-----实战ESP定律法脱壳
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定律法脱壳相关推荐
- Flutter快速入门 五步搞定Flutter环境配置
Flutter是什么? Flutter是一款移动应用程序SDK,一份代码可以同时生成iOS和Android两个高性能.高保真的应用程序. Flutter目标是使开发人员能够交付在不同平台上都感觉自然流 ...
- 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 ...
- 破解入门(三)-----脱壳的常用方法
什么是壳 大家应该先明白"壳"的概念.在自然界中,我想大家对"壳"这东西应该都不会陌生了,植物用它来保护种子,动物用它来保护身体等等.同样,在一些计算机软件里也 ...
- 8s pod 查看 的yaml_Kubernetes入门到实战(五)深入浅出详解Pod
作者:Happy老师 链接:https://blog.51cto.com/happylab/2500457 写在前面 前面的系列文章已介绍kubernetes架构,安装,升级和快速入门,读者通过文章的 ...
- Python入门到实战(五)自动化办公、pandas操作Excel、数据可视化、绘制柱状图、操作Word、数据报表生成、pip install国内镜像下载
Python入门到实战(五)conda使用.pandas操作Excel.数据可视化.绘制柱状图.操作Word.数据报表生成.pip install国内镜像下载 conda使用 常用操作 配置VS+Co ...
- 【五天时间】Qt从入门到实战:第一天
[五天时间]Qt从入门到实战:第一天 第一天 1.1 Qt的介绍.优点.成功案例 什么是Qt? Qt的优点 Qt的成功案例 1.2 创建第一个Qt程序 1.3 熟悉按钮控件常用API 1.4 对象树的 ...
- k8s之Pod详解(五)【Kubernetes(K8S) 入门进阶实战完整教程,黑马程序员K8S全套教程(基础+高级)】
参考于Kubernetes(K8S) 入门进阶实战完整教程,黑马程序员K8S全套教程(基础+高级) Pod Pod的结构 每个Pod中都可以包含一个或者多个容器 这些容器可以分为两类: 用户自定义用的 ...
- 《Angular4从入门到实战》学习笔记
<Angular4从入门到实战>学习笔记 腾讯课堂:米斯特吴 视频讲座 二〇一九年二月十三日星期三14时14分 What Is Angular?(简介) 前端最流行的主流JavaScrip ...
- Java从入门到实战总结-4.2、数据库高级
Java从入门到实战总结-4.2.数据库高级 文章目录 Java从入门到实战总结-4.2.数据库高级 第一章 数据完整性 1.1 数据库的完整性 1.2 实体完整性 1.2.1 主键约束(primar ...
最新文章
- 003:Virtualenvwrapper使用
- JAVA顺序表的简单实现
- 为什么我的 Func 如此之慢?
- java中线程调度遵循的原则_深入理解Java多线程核心知识:跳槽面试必备
- ArrayDeque 双端队列
- ACM-线段树区间更新+离散化
- Google 搜索老矣,尚能饭否?
- LINUX下的PHP
- 数学分析教程(科大)——3.6笔记+习题
- 一元云购系统接入短信功能问题汇总
- JeecgBoot 3.4.3-GA 版本发布,开源免费的企业级低代码平台
- GitHub的Linux配置与常用操作
- 思科服务器的dns如何配置文件,思科在服务器上配置dns
- 2021-09-27 网安实验-取证分析-计算机取证之Xplico
- win7电脑开启wifi
- # bzoj2215: [Poi2011]Conspiracy 2-sat
- 激光类雷达障碍物检测与追踪——DON点云滤波
- 使用Cpoly.f90注意事项
- smartctl 使用
- PostgreSQL中的两阶段提交
热门文章
- 捕获鼠标事件-JavaScript入门基础(005)
- C语言:【入门】求长方形的周长和面积
- 《DFQ》开发随录——后记
- 博图pro版和adv版区别_笔记本定制版什么意思?笔记本标配版和定制版的区别与利弊分析...
- 年度文章集合 | 最全微前端集合【建议收藏】
- PMAC硬件-一个运动控制系统的实例
- JavaScript实现输入圆的半径,输出周长、体积和面积的代码
- 【电力系统】基于matlab粒子群算法求解热电联产系统优化配置问题【含Matlab源码 2298期】
- 【游戏策划】《游戏架构设计与策划基础》学习收获要点-------任务与关卡的设计
- svm对未知数据的分类_SVM对sklearn自带手写数字数据集进行分类