e3.exe的逆向分析
e3.exe的逆向分析
运行截图
逆向思路
提示如下:
使用IDR加载Delphi程序,导出Map文件,将Map文件导入OD。
使用Delphi逆向工具Darkde4
可以看到,Panel1有两个方法,单击和双击,是一个按钮
FromCreate 窗体的创建事件
chkcode 校验代码
KeyUp 响应的键盘的弹起
DbClick 按钮的双击事件
Click 按钮的单击事件
通过1得到了几个事件的RVA,接下来进行分析,首先是Click事件:
拖入OD
右键复制Click的RVA
打开OD,ctrl + G 粘贴点击OK
F2设置断点
运行测试
输入一组用户名和注册码,双击之后单步调试
出现用户名:
此处getText为获取用户名。
获取用户名长度,用户名长度+0x1E(30)
出现“32”
字符串拼接:
循环0x13次:
关键跳转:
获取用户名
获取用户名长度 将长度加上0x1E
将长度转为字符串
字符串拼接 拼接为长度+用户名+循环次数
整个算法循环18次 最后的结果如上图
[esi+0x30C]的值必须是0x85
分析双击事件
获取长度
长度+0x9
长度转str
循环:
字符串拼接:长度+用户名+循环次数
[esi+0x30C]和0x3E作比较,如果成立,就把[esi+0x30C]赋值为0x85,也就满足了单击事件的条件
[esi+0x30C]的值必须为0x3E
有一个地方是把0x3E赋值给了[esi+0x30C]。
OD中,右键->查找所有常量,输入3E,看看能不能找到mov [esi+0x30C],0x3E这样一条指令。如果能,那么这个就是真正校验的地方。
跟进:
开头:
注释显示这个是chkcode的校验事件下断点
运行
注册码刚输入1就停住了,分析
发现可疑字符串:
直接拦截读取edx,使用keymake制作内存注册机:
成功,接着分析算法·,尝试制作算法注册机
分析0x951C68 位置处何时写入,设置硬件断点
keyup中统计输入字符:
首先获取用户名长度 然后将用户名长度+5,接着进行字符串拼接 拼接方式为黑头Sun Bird(用户名长度+5)dseloffc-012-OK(用户名),拼接好的字符串就是密码。
结果:
接方式为黑头Sun Bird(用户名长度+5)dseloffc-012-OK(用户名),拼接好的字符串就是密码。
- 结果:
e3.exe的逆向分析相关推荐
- CRC原理及其逆向分析方法
CRC原理及其逆向破解方法: 介绍: 这篇短文包含CRC原理介绍和其逆向分析方法,很多程序员和破解者不是很清楚了解 CRC的工作原理,而且几乎没人知道如何逆向分析它的方法,事实上它是非常有用的. 首先 ...
- Android 逆向分析大全
转载:Android 逆向分析大全:https://www.jianshu.com/p/a12d04fc748f 1. 概述 1.1 分析步骤 通用逆向分析步骤 1. 了解该模块正向编程相关方法 2. ...
- TI(德州仪器) TMS320C674x逆向分析之一
一.声明 作者并不懂嵌入式开发,整个逆向流程都是根据自身逆向经验,一步一步摸索出来,有什么错误请批评指正,或者有更好的方法请不吝赐教.个人写作水平有限,文中会尽量把过程写清楚,有问题或是写的不清楚的地 ...
- 安卓 sharedpreferences可以被其它activity读取_【安卓逆向】“一份礼物”之我要o泡逆向分析...
最近安卓手机有个恶搞程序"一份礼物"登上热搜. 该app的效果是打开之后手机便会以最大音量循环播放"我要o泡"音乐,并且无法调小音量,无法退出程序,甚至无法关机 ...
- 第二届360杯全国大学生信息安全技术大赛部分解题思路(逆向分析)
/* 逆向分析第一题解题攻略: 已限定为用户名为:strawberry 分析该程序算法,得出该用户名所对应的Key 正确答案:K$q*a_+@Xt 逆向分析第二题解题攻略: 已在压缩包中给定了一个用R ...
- [系统安全] 二十四.逆向分析之OllyDbg调试INT3断点、反调试、硬件断点与内存断点
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- [系统安全] 二十三.逆向分析之OllyDbg动态调试复习及TraceMe案例分析
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- [系统安全] 六.逆向分析之条件语句和循环语句源码还原及流程控制
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- [安全攻防进阶篇] 六.逆向分析之OllyDbg逆向CrackMe01-02及加壳判断
前文作者讲解了OllyDbg和在线沙箱的逆向分析过程,分享了恶意软件如何通过宏脚本发送勒索信息或密码至用户邮箱.这篇文件将带领大家逆向分析两个CrackMe程序,包括逆向分析和源码还原,基础性文章,希 ...
最新文章
- servlet基础知识
- sap-通过定义物料组的评估类-设置无物料号的费用采购
- Leet Code OJ 118. Pascal's Triangle [Difficulty: Easy]
- Python高级——正则表达式与re模块
- 手动处理MNIST手写数据集的逻辑斯蒂回归算法实践
- 达芬奇剪辑调色软件:DaVinci Resolve Studio 17.3.2 for Mac中文版
- Node.js使用jszip实现文件夹操作
- 虚拟机安装win10教程(详细版)
- 基于SAML2.0单点登录的实现(JAVA)
- Linux沙箱技术介绍
- Linux关闭swap
- 【PBL项目实战】户外智慧农场项目实战系列——5.天气预报API接口对接
- 460.LFU 缓存
- [ CTF ] WriteUp- 2022年第三届“网鼎杯”网络安全大赛(白虎组)
- 【RTX操作系统教程】第6章 RTX操作系统源码方式移植
- DeDeCMS v5.7 SP2 前台任意用户密码修改漏洞复现
- 【贪心算法】poj 2431: Expedition(最优加油方法)
- “高精尖”智慧钢厂轻松打造!图扑软件数字孪生yyds
- php职教云答案,智慧职教云作业答案,智慧职教期末考试幼儿园课程答案,智慧职教mooc测验答案...
- Android课程设计(健康管理软件开发)
热门文章
- 【C语言】可变参数列表
- mac启动台图标重置
- 扫码登录(uniappvue)
- 微信自动跳转到app下载页面(安卓跳转默认浏览器 苹果跳转苹果商店App Store)
- web图书管理系统(HTML+CSS+JS+PHP)
- Jetson Orin NX上手使用(Linux系统的配置Jetpack的烧录镜像的备份恢复)
- 【flowable】十、flowable网关
- Reggie外卖项目 —— 分类管理模块之新增分类功能
- tars框架 php,tars框架安装
- java web动态菜单设计_spring-boot与模板引擎:使用metisMenu实现动态多级菜单