当前位置: 首页 > news >正文

OllyDbgqaqazazzAcxsaZ

本文通过吾爱破解论坛上提供的OllyDbg版本为例,讲解该软件的使用方法

F2对鼠标所处的位置打下断点,一般表现为鼠标所属地址位置背景变红
F3加载一个可执行程序,进行调试分析,表现为弹出打开文件框
F4执行程序到光标处
F5缩小还原当前窗口,表现为所有打开的窗口都进行缩小
F7单步步入,进入函数实现内,进步到CALL地址处
F8单步步过,越过函数实现
F9直接运行程序,遇到断点处暂停
Ctrl+F2重新运行程序到起始处,用于重新调试程序
Ctrl+F9执行到函数返回处
Alt+F9执行到用户代码处,用于快速跳出系统函数(不好用)
Ctrl+G输入十六进制地址,在反汇编或数据窗口中快速定位到该地址处

 修改数据

找到要修改数据的地址所对应的HEX数据,双击该数据,弹出对应的编辑数据对话框,去掉对"保持大小"的勾选,可向后修改数据。由于C\C++中字符串以00结尾,需要将字符串最末尾的数据修改为00。选择十六进制编码文本框,在最末尾处插入00。单击“确定”按钮。

 

 字串参考

顾名思义,就是在程序中搜索特定的字符串或者编码,对于定位操作有很大的作用

一般操作是:

鼠标右键->search for(查找)->all referenced text string(所有参考文本字串)出现以下界面

可以同过右键点击->查找查找字符串,也可以双击直接跳转到目标位置

为了看看是否还有其他的参考,可以通过右键选择查找参考(find reference to)->立即数: 

OllyDbg 显示程序的某些部分时是 不正确的,错误的将可执行代码解释为数据.这种情况,你可以在反汇编窗口中右击选择 Analysis(分析) -> Remove analysis from module(从模块中删除分析) 手动删除分析结果
高亮显示 jumps 和 calls ,你使用它可能会更为方便但我个人不 喜欢(这会有不 同的体验),右键点击,选择 选项->界面选项->代码高亮

 

L 图标或 View-> Log,显示日志窗口, 通过配置,可以显示 OllyDbg 启动时保存在日志窗口 的不同类型信息,也涉及条件断点的信息。如果需要将日志进行导出,则右键->记录到文件

 

 

E 按钮 View ->Executables 显示程序 运行使用的模块:exe,,dll,,ocx 和 其它。 

 

 

M 按钮或 View->Memory 显示我们的程 序映射到内存的信息,一个内存块可能 被分为几个部 分
右键点击可以搜索不同种类的字符串, 可以在访问上设置中断

 

T 按钮或 View->Threads 显示程序的线程窗口
W 按钮或 View-> Windows 显示程序窗口

 

H 按钮或 View-> Handles,句柄窗口 

C 按钮或 View->CPU,允许我们返回到 O llyDbg 的主窗口,CPU 窗口。
P按钮或 View->Patches,如果程序经过 了修改,这里显示修改的信息,现在我们的程序还没
有被修改过,所以为空白。

 

K 按钮或 View->Call stack 显示调用堆 栈的窗口信息,可以尝试反向跟踪函数的
调用顺序。
B 按钮或 View->Breakpoints 显示程序 普通断点的列表窗口,这里不显示硬件 断点和内存断点。

 

R 按钮或 View->Reference 参考窗口, 显示我们在 OllyDbg 中搜索的结果。

 

 “...”按钮或 View->Run trace 显示 RUN TRACE(RUN 跟踪)命令的结果。

 寄存器

显示有 EAX,ECX,,EDX,,EBX , ESP, EBP,,ESI,,EDI 和 EIP 等 它们都被称为 32 位寄存器。 在 OllyDbg 中,它们的内容以十六进制 显示。例如,EAX 的最小值为 00000000 ,最大值为 FFFFFFFF,用二进制表示将 是 11111111111111111111111111111111 。

 ESP 指向堆栈最顶端的地址我们看到寄存器显示了在我们的堆栈最上 方的值,打个比方,它就是一堆信件最上 方的那一 封。

EIP – 另一个非常重要的寄存器,它指 向当前将要执行的指令如果你按下 F7,那么将执行第一条指令,然后切到第二条将执行的指令。

 同样我们可以对寄存器的值进行修改,选中对应的寄存器->修改 即可

如果你要用到 EAX 寄存器的一部分,AX 是 EAX 的一部分,是 16 位寄存器,我们在 CommandBar 中 进行输入也可以看到。 ? AX(问号也可用于查询寄存器的值)
OllyDbg 可以更改寄存 器的值。我们在 EAX 上进行的一切操作同样适用于 其它寄存器:检查寄存器, 看哪一个是你想要更改的,然后右键点击 它选择 Modify。但 EIP 是唯一一个例外 的,它指向下一条将要执行的指令。 要改变头的值,需要如下操作。 EIP 指向将要执行的指令,只需简单的在 反汇编窗口中选择新的指令起始点一旦选择,例如 40101A,在其上点击鼠标右键,选择 New origin here(汉化版翻译为:处为新的 EIP),EIP 就会改变为 40101A,这样,程序就将会从这条指令执行。
在 OllyDbg 寄存器信息的下方显示的就是标志寄存器我们看到,这里的标志分为 C,P,A,Z
,S,T,D 和 O。 我们还看到,它们只能是两个数字值,0 和 1。某一具体指
令的执行可以改变它们的含义。 我们一起来看看这些标志:
1) O 标志(溢出标志)溢出标志在当操作改变了符号位,返回错误值时被设置 
该标志的目的:当 指令的结果超出了它可能存取的最大值 ,将被设置
2) A 标志(辅助进位标志) 完成操作后,用其它的某种形式对其进行记录。
3) P 标志(奇偶标志) 如果指令的结果用二进制表示,该二进 制数中的的 1 的总个数为偶数时,P 标志被设置
4) Z 标志(零标志) 这是在 Cracking 过程中最著名最有用的 一个标志。当运算产生的结果为 0 时被设置。
5) S 标志(符号标志)这个标志在运算结果为负时设置为 1。
6) C 标志进位标志(无符号运算的结果)在超过最大数值时 设置,可能是寄存器的值
未完待续

相关文章:

OllyDbgqaqazazzAcxsaZ

本文通过吾爱破解论坛上提供的OllyDbg版本为例,讲解该软件的使用方法 F2对鼠标所处的位置打下断点,一般表现为鼠标所属地址位置背景变红F3加载一个可执行程序,进行调试分析,表现为弹出打开文件框F4执行程序到光标处F5缩小还原当前…...

Elasticsearch7.8.0版本进阶——自定义分析器

目录一、自定义分析器的概述二、自定义的分析器的测试示例一、自定义分析器的概述 Elasticsearch 带有一些现成的分析器,然而在分析器上 Elasticsearch 真正的强大之 处在于,你可以通过在一个适合你的特定数据的设置之中组合字符过滤器、分词器、词汇单 …...

spring事务-创建代理对象

用来开启事务的注解EnableTransactionManagement上通过Import导入了TransactionManagementConfigurationSelector组件,TransactionManagementConfigurationSelector类的父类AdviceModeImportSelector实现了ImportSelector接口,因此会调用public final St…...

Linux 配置NFS与autofs自动挂载

目录 配置NFS服务器 安装nfs软件包 配置共享目录 防火墙放行相关服务 配置NFS客户端 autofs自动挂载 配置autofs 配置NFS服务器 nfs主配置文件参数(/etc/exports) 共享目录 允许地址1访问(选项1,选项2) 循序地…...

【编程入门】应用市场(Python版)

背景 前面已输出多个系列: 《十余种编程语言做个计算器》 《十余种编程语言写2048小游戏》 《17种编程语言10种排序算法》 《十余种编程语言写博客系统》 《十余种编程语言写云笔记》 《N种编程语言做个记事本》 目标 为编程初学者打造入门学习项目,使…...

异常信息记录入库

方案介绍 将异常信息放在日志里面,如果磁盘定期清理,会导致很久之前的日志丢失,因此考虑将日志中的异常信息存在表里,方便后期查看定位问题。 由于项目是基于SpringBoot构架的,所以采用AdviceControllerExceptionHand…...

Spring Batch 高级篇-分区步骤

目录 引言 概念 分区器 分区处理器 案例 转视频版 引言 接着上篇:Spring Batch 高级篇-并行步骤了解Spring Batch并行步骤后,接下来一起学习一下Spring Batch 高级功能-分区步骤 概念 分区:有划分,区分意思,在…...

ES数据迁移_snapshot(不需要安装其他软件)

参考文章: 三种常用的 Elasticsearch 数据迁移方案ES基于Snapshot(快照)的数据备份和还原CDH修改ElasticSearch配置文件不生效问题 目录1、更改老ES和新ES的config/elasticsearch.yml2、重启老ES,在老ES执行Postman中创建备份目录…...

【Vue3 第二十章】异步组件 代码分包 Suspense内置组件 顶层 await

异步组件 & 代码分包 & Suspense内置组件 & 顶层 await 一、概述 在大型项目中,我们可能需要拆分应用为更小的块,以减少主包的体积,并仅在需要时再从服务器加载相关组件。这时候就可以使用异步组件。 Vue 提供了 defineAsyncC…...

「媒体邀约」四川有哪些媒体,成都活动媒体邀约

传媒如春雨,润物细无声,四川省位于中国西南地区,是中国的一个省份。成都市是四川省的省会,成都市是中国西部地区的政治、经济、文化和交通中心,也是著名的旅游胜地。每年的文化交流活动很多,也有许多的大企…...

@Autowired和@Resource的区别

文章目录1. Autowired和Resource的区别2. 一个接口多个实现类的处理2.1 注入时候报错情况2.2 使用Primary注解处理2.3 使用Qualifer注解处理2.4 根据业务情况动态的决定注入哪个serviceImpl1. Autowired和Resource的区别 Aurowired是根据type来匹配;Resource可以根…...

Linux系列:glibc程序设计规范与内存管理思想

文章目录前言命名规范说明版式风格内存管理与智能指针关于UML前言 这是一个基于lightdm、glibc、gobject、gtk、qt、glibc、x11、wayland等多个高质量开源项目总结而来的规范。 glibc处于内核态与用户态的边界,承上启下,对用户的体验影响非常大。其在系…...

Redis 集群

文章目录一、集群简介二、Redis集群结构设计🍉2.1 数据存储设计🍉2.2 内部通信设计三、cluster 集群结构搭建🍓3-1 cluster配置 .conf🍓3-2 cluster 节点操作命令🍓3-3 redis-trib 命令🍓3-4 搭建 3主3从结…...

EF 框架的简介、发展历史;ORM框架概念

一、EF 框架简介EF 全称是 EntityFramework 。Entity Framework是ADO.NET 中的一套支持开发面向数据的软件应用程序的技术,是微软的一个ORM框架。ORM框架(Object Relational Mapping) 翻译过来就是对象关系映射。如果不用ORM框架,我们一般这样…...

注解原理剖析与实战

一、注解及其原理 1.注解的基本概念 注解,可以看作是对 一个类/方法的一个扩展的模版,每个类/方法按照注解类中的规则,来为类/方法注解不同的参数,在用到的地方可以得到不同的类/方法中注解的各种参数与值。 从JDK5开始&#xff…...

《STL源码剖析》理解之将类成员函数和for_each等算法结合

类成员函数可以通过函数适配器(function adapters)包装成一个仿函数(重载了operator()的类)&#xff0c;将其搭配于STL算法一起使用。#include <algorithm> #include <functional> #include <vector> #include <iostream>using namespace std;class In…...

如何构建应用标准化体系

标准化的过程实际上就是对运维对象的识别和建模过程。形成统一的对象模型后&#xff0c;各方在统一的认识下展开有效协作&#xff0c;然后针对不同的运维对象&#xff0c;再抽取出它们所对应的运维场景&#xff0c;接下来才是运维场景的自动化实现。 在标准化的过程中&#xf…...

【RabbitMQ笔记03】消息队列RabbitMQ七种模式之WorkQueues工作队列模式

这篇文章&#xff0c;主要介绍消息队列RabbitMQ七种模式之WorkQueues工作队列模式。 目录 一、工作队列模式 1.1、什么是Work Queues模式 1.2、工作队列模式的使用 &#xff08;1&#xff09;引入依赖 &#xff08;2&#xff09;编写生产者 &#xff08;3&#xff09;编写…...

认识html

1.html的特点先看一段简单的html代码<html><head></head><body>hello world</body> </html>如果将这段带有这段代码的.html文件拉进浏览器中,就会出现一个页面,内容就是hello world,如下图:由上面的代码,我们可以了解到一些html代码的特点…...

在外包公司熬了 3 年终于进了字节,竭尽全力....

其实两年前校招的时候就往字节投了一次简历&#xff0c;结果很明显凉了&#xff0c;随后这个理想就被暂时放下了&#xff0c;但是这个种子一直埋在心里这两年除了工作以外&#xff0c;也会坚持写博客&#xff0c;也因此结识了很多优秀的小伙伴&#xff0c;从他们身上学到了特别…...

谷歌浏览器插件

项目中有时候会用到插件 sync-cookie-extension1.0.0&#xff1a;开发环境同步测试 cookie 至 localhost&#xff0c;便于本地请求服务携带 cookie 参考地址&#xff1a;https://juejin.cn/post/7139354571712757767 里面有源码下载下来&#xff0c;加在到扩展即可使用FeHelp…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案

问题描述&#xff1a;iview使用table 中type: "index",分页之后 &#xff0c;索引还是从1开始&#xff0c;试过绑定后台返回数据的id, 这种方法可行&#xff0c;就是后台返回数据的每个页面id都不完全是按照从1开始的升序&#xff0c;因此百度了下&#xff0c;找到了…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现&#xff08;两者等价&#xff09;&#xff0c;用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例&#xff1a; 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...