0x1追踪[EBP-4]

介绍

找到按钮事件特征码的位置,可以发现call调用的是[ebp-4]的值的位置,若找到[ebp-4]的值是从哪里来的,就算别人把按钮事件特征码整个给vm掉了,也能追踪到按钮事件特征码

实例

在按钮事件特征码附近有个beginprocessevent函数,在它下面有一个汇编是给将eax的值赋值给[ebp-4],而eax的值是从beginprocessevent函数返回的,当触发按钮操作后,eax的值是不等于0的,所以在下个条件断点

运行程序点击按钮,断点断下来后按enter进入call test.krnln_?BeginProcessEvent@CKrnl>,里面有许多个retn,在每个retn处都下断

点击运行程序,如果不触发按钮事件还能断下来的断点我们直接取消掉,直至找到按钮触发的断点

程序在retn处断下来后查看OD右边的寄存器窗口的eax值,此处eax的值为4010D8

eax的值就是[epb-4]的值,ctrl+G搜eax的值跳转到按钮事件特征码的函数头位置

提取retn断点处的特征码用于以后可直接追踪按钮事件特征码

8B 70 04 85 F6 74 4C 8B 54 24 18 85 ED 89 93 E4 01 00 00 74 12 8B C5 5F 89 83 E8 01 00 00 8B C6
5E 5D 5B 59 C2 10 00

0X2重载内核Dll

介绍

通常写易语言软件的作者都会将按钮事件特征码整段都给vm掉,但是他们忽略了一个点, 没有把按钮事件特征码其外层的call进行vm, 而这个外层call走的是易语言的内核函数

在按钮事件特征码的call下断点,查看右下角的堆栈窗口可找到外层call

鼠标右键反汇编窗口跟随,找到外层call test.krnln_?Notify@CKrnlApp@@QAEHHK>

进入这个call找到函数头部并提取特征码:64 A1 00 00 00 00 6A FF 68 ?? ?? ?? ?? 50 64 89 25 00 00 00 00 83 EC 10 53 55 8B 6C 24 28

实例

首先准备好易语言的dll文件来用作后续的dll注入,为了识别是否注入成功,这里写了一个信息框

将要破解的软件的按钮事件特征码给vm掉

将加完vm后的软件拖入OD,使用StrongOD插件注入dll,这里选择远程注入

在代码节搜索前面所记述的特征码,发现有两处,第一个地址为40ee20,第二个地址为9c19a4040ee20是程序本身的,9c19a40是注入的dll的

ctrl+G转到对应的地址,修改其汇编代码,将call 40ee20修改为call 9c19a40

通过查询模块窗口,发现这个9c19a40是在注入的dll的代码段的范围之内,然后双击这个dll进入它的代码段

搜索按钮事件特征码并下断点(其实就是在注入的dll下按钮事件特征码断点)

运行程序点击按钮,发现程序在刚刚下的断点断下了

F7单步步入这个call,这个call的地址就是真正的按钮事件函数,并没有任何的vm痕迹

0X3偏移量追踪按钮事件

介绍

新建一个易语言程序并将其拖入OD打开,二进制搜索FF 25转到易语言体处的第三个jmp下断

然后一路往下跟,跟到calltest.krnln_?LibInitUserProgram,F7进如此call

走到mov eax,dword ptr ds:[___eapp_info],并提取其特征: 55 8B EC 6A FF 68 ?? ?? ?? ?? 64 A1 00 00 00 00 50 64 89 25 00 00 00 00 81 EC AC 01 00 00

将此处的内存地址复制下来,到内存窗口里搜索此地址

在内存窗口找到第二行第四列所对应的地址550370,然后转到此地址处


在内存窗口里往下拉,直至可以看到左边的ascii窗口处有“按钮”字样,其实这是一个结构体,里面有些成员是用于追踪按钮事件的偏移量

怎么知道哪个是偏移量呢?有一个规律05…01…43,这个43就是偏移量,也就是说05…01再往后的值就是偏移量

回到反汇编窗口的易语言体处然后往上拉,找到nop下面的反汇编地址,此处地址是4010ac

注意:此处的反汇编代码是不固定的,不一定是pop esi,有时候是push ebp

计算4010ac + 43(偏移量) = 4010EF, 计算出的这个地址就是按钮事件的函数头部

实例

准备好一个vm好了的易语言程序,这里就不演示VM过程了

在OD搜索createwindow然后下断,这一步的操作是为了让vm把壳吐出来

内存中搜索前文所准备好的特征码:55 8B EC 6A FF 68 ?? ?? ?? ?? 64 A1 00 00 00 00 50 64 89 25 00 00 00 00 81 EC AC 01 00 00,找到关键函数地址0x437600

根据前文的讲过的操作寻找到偏移量(过程不演示了),偏移量是B0

转到易语言体的反汇编处往上拉,nop下面的地址是401004,然后加上偏移量等于4010b4,这个地址就是按钮事件函数地址

易语言破解之绕VM思路相关推荐

  1. 易语言高级表格写入MYSQL_易语言数据库与高级表格思路分析.doc

    易语言数据库与高级表格思路分析 篇一:易语言数据库操作指南 易语言数据库操作指南 一.易语言操作Access数据库 前面我们已经对比分析过易语言所支持的几种常见数据库,在这几种数据库中,我们先来学习一 ...

  2. 易语言破解之PUSH窗体

    简介 PUSH窗体大法可以绕过大部分易语言程序的登录和注册界面 但是有一个缺点,由于不知道哪个窗体地址才是载入真正代码的窗体,所以要一个个窗体去测试载入,若某个窗体写了暗桩,那么直接凉凉 所用工具 O ...

  3. 第十课 讲解易语言的网络验证

                             讲解易语言的网络验证 易语言就是一种脚本语言,他是采用的封装形式去完成 他在5.0以下版本时,都是采用的易语言开发环境的编译模式,同时是采用C++编译 ...

  4. 易语言免费版 绿色软件

    ##易语言600多太贵了,穷限制了我们的学习编程的前途?是这样的吗.不是. 我来分享一个易语言破解版的下载地址. 本人买的正版(及时帮助里有电子书可以自己学.)而破解的及时帮助没有电子书(破解版只有编 ...

  5. 易语言不能创建临时文件

    易语言破解版运行项目时提示 不能创建临时文件 解决方法: 右键易语言.exe 图标 ---->查看属性->兼容性->特权等级->以管理员身份运行此程序

  6. 逆向破解之易语言按钮事件特征码

    什么是按钮事件特征码 破解的一个用易语言编写的软件,通常先要搜索到按钮事件特征码,但是并不是说你按钮事件特征码处下断点就一定能精准的捕获按钮事件.例如易语言时钟控件或启动窗口事件都会通过消息派遣至按钮 ...

  7. 易语言源码 VX多开 思路+源码

    介绍: 易语言源码 VX多开 思路+源码 网盘下载地址: http://kekewangLuo.cc/aOqsvkyTX0g 图片:

  8. 三天快速制作易语言防破解网络验证注册码系统

      百宝云介绍 百宝云是一款云服务器产品,专为快速打造个人云端服务器的云应用产品.开发者无需关心服务器开发,维护乃至性能扩展,APP管理,百宝云提供完善的全套服务.强大的第三方接口可以和任何开发语言对 ...

  9. 易语言5.9破解方法

    step1:到官方下载最新版的5.9易语言软件,并安装 . step2:下载破解补丁 链接: https://pan.baidu.com/s/1MB5hHuSams-ufhcVR2EQTA 提取码: ...

最新文章

  1. python手机版下载3.7.3-Python 3.7.0 来了!
  2. Ubuntu18 的日常
  3. Jackson、JSON-lib、Gson性能对比
  4. hadoop 2.7.3伪分布式安装
  5. arcgis api for js入门开发系列十八风向流动图
  6. Python_大众点评网站数据爬虫
  7. 都这麽大了还不快了解防病毒网关?
  8. jsp为什么被淘汰了?
  9. ZipEntry的使用
  10. 【日常计算机问题】装系统的烧录的U盘恢复方法
  11. 第20节 简单密码破解—基于windows系统
  12. 软件评测师——安全性基础知识
  13. dvr服务器系统,DVR监控软件 V1.0
  14. VR全景智慧城市虚拟现实三维的发展
  15. Ubuntu系统shipyard安装
  16. C语言舞伴问题 PTA
  17. 微信有趣的“隐身”功能!关掉这几个开关,别人怎么都搜不到你
  18. 2019年暑期集训总结
  19. 九宫山自驾露营二日游
  20. 代码整洁之道-读书笔记之整洁的代码

热门文章

  1. 【解决】农行在win7中不能支付解决办法
  2. ssm学生综合素质评价系统、
  3. Linux中ps -u和ps u的区别
  4. GASD描述子介绍——Globally Aligned Spatial Distribution (GASD) descriptors
  5. 制作我的世界启动器[重制版] 第一期
  6. 大话2服务器维护,《大话西游2》3月26日维护公告
  7. 三、键盘检测原理及应用实现
  8. CSDN博客给我带来的一些诱惑和选择机会(二):HR“邀请于我”,猎头“有求于我”...
  9. 研发管理和绩效考核还可以同步进行?
  10. 致微软利润下滑的七宗罪:Vista失败Xbox失守