CrackMe —— 015

160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序

CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破。

CrackMe简称CM。
程序下载地址:点击我

来源 <-点击查看

编号 作者 保护方式
015 blaster99 Nag,Serial(VB5)

工具

x32dbg

开始破解之旅

ON.1

首先我们打开程序,发现NAG窗口

我们要想办法先去掉这个窗口

使用x32dbg打开015号程序,右键搜索字符串

我们看到了00402C85这个地址是NAG的提示字符串地址,点击进入该地址

我们向上翻看来到段首处

00402C12 | 5B                       | pop ebx                                 |
00402C13 | C9 | leave |
00402C14 | C2 | ret |
00402C17 | | push ebp | NAG 段首处
00402C18 | 8BEC | mov ebp,esp |
00402C1A | 83EC 0C | sub esp,C |
00402C1D | | push <JMP.&__vbaExceptHandler> |

我们将00402C17改为ret意思是进入NAG处直接返回,即可跳过NAG

我们将其修改为ret运行

bingo ~程序直接运行,去除NAG窗口成功

ON.2

爆破方式

根据我们之前搜索到的字符串00402A69地址处,该地址是错误字符串地址

004028F5处按照汉意是正确字符串

地址=004028F5
反汇编=mov dword ptr ss:[ebp-],.401E08
字符串=L"Danke, das Passwort ist richtig !" 地址=00402C85
反汇编=mov dword ptr ss:[ebp-7C],.401EF0
字符串=L"Entferne diesen Nag, oder bekomme das richtige Passwort heraus !"

我们双击进入004028F5地址处,向上翻看来到最近的一个跳转出

004028B5 | E8 84E8FFFF              | call <JMP.&__vbaHresultCheckObj>        |
004028BA | FF75 A8 | push dword ptr ss:[ebp-] |
004028BD | DC1D4000 | push .401DDC | 401DDC:L"2G83G35Hs2"
004028C2 | E8 83E8FFFF | call <JMP.&__vbaStrCmp> |
004028C7 | 8BF8 | mov edi,eax |
004028C9 | 8D4D A8 | lea ecx,dword ptr ss:[ebp-] |
004028CC | F7DF | neg edi |
004028CE | 1BFF | sbb edi,edi |
004028D0 | | inc edi |
004028D1 | F7DF | neg edi |
004028D3 | E8 60E8FFFF | call <JMP.&__vbaFreeStr> |
004028D8 | 8D4D A4 | lea ecx,dword ptr ss:[ebp-5C] |
004028DB | E8 52E8FFFF | call <JMP.&__vbaFreeObj> |
004028E0 | :3BFE | cmp di,si |
004028E3 | 0F84 F3000000 | je .4029DC |
004028E9 | 6A | push |
004028EB | 8D95 74FFFFFF | lea edx,dword ptr ss:[ebp-8C] | edx:EntryPoint
004028F1 | 5E | pop esi |
004028F2 | 8D4D AC | lea ecx,dword ptr ss:[ebp-] |
004028F5 | C785 7CFFFFFF 081E4000 | mov dword ptr ss:[ebp-],.401E08 | 401E08:L"Danke, das Passwort ist richtig !"
004028FF | 89B5 74FFFFFF | mov dword ptr ss:[ebp-8C],esi |

我们将004028E3地址处修改为NOP,在输入框内输入任意数据,点击Registeren按钮

bingo ~破解成功

追码方式

我们继续向上翻看,发现004028BD处有可疑字符串,我们将“2G83G35Hs2”输入到输入框内,点击注册按钮

bingo~ 追码成功

逆向破解之160个CrackMe —— 015的更多相关文章

  1. 逆向破解之160个CrackMe —— 001

    CrackMe —— 001 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  2. 逆向破解之160个CrackMe —— 002-003

    CrackMe —— 002 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  3. 逆向破解之160个CrackMe —— 004-005

    CrackMe —— 004 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  4. 逆向破解之160个CrackMe —— 013

    CrackMe —— 013 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  5. 逆向破解之160个CrackMe —— 014

    CrackMe —— 014 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  6. 逆向破解之160个CrackMe —— 016

    CrackMe —— 016 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  7. 逆向破解之160个CrackMe —— 017

    CrackMe —— 017 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  8. 逆向破解之160个CrackMe —— 018

    CrackMe —— 018 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

  9. 逆向破解之160个CrackMe —— 025

    CrackMe —— 025 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...

随机推荐

  1. 将行数据转换成Java(POJO)对象

    工作中经常会遇到将行数据转换成Java(POJO)对象的场景,其中关于字段校验和类型转换的处理繁琐而冗余,对于有代码洁癖的人着实不能忍.这里分享下自己封装的工具代码,也许能够帮助你更简单地完成此类任务 ...

  2. nginx设置防盗链

    1.一般的防盗链设置: location ~* \.(gif|jpg|png|jpeg)$ { expires 30d; valid_referers none blocke *.julyy.site ...

  3. STRING Cytoscape 网络互作图

    网络图(Network)看似复杂,其实构成非常简单,网络图是一种图解模型,形状如同网络,故称网络图,由节点(node)和连线(edge)两个因素组成的.其中 node 又分为 source node( ...

  4. Computer-Hunters——团队展示

    Computer-Hunters--团队展示 这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/2019FZUSEZ 这个作业要求在哪里 https://ed ...

  5. Unity开发:5.0+版本标准资源包无内置问题

    一.问题如下: 在Unity中,一般都会内置有基础的资源包,可以在Assets->Import Package中,点击其下的子项进行导入: 但是我发现,5.0版本与之前的4.x版本相比,安装包变 ...

  6. 一个web请求的全过程

    参考文档:http://www.mamicode.com/info-detail-1357508.html 名词解释DNS: DNS(Domain Name System,域名系统),因特网上作为域名 ...

  7. 基于GPU的算法并行化

    GPU计算的目的即是计算加速.相比于CPU,其具有以下三个方面的优势: l  并行度高:GPU的Core数远远多于CPU(如G100 GPU有240个Cores),从而GPU的任务并发度也远高于CPU ...

  8. Elasticsearch运维经验总结

    Elasticsearch运维经验总结 2018年12月10日 16:38:41 运小白 阅读数 3811   版本说明:5.6.4(要严格注意ES及其插件.第三方工具的版本匹配关系) 系统负载:(日 ...

  9. HashTable源码

    1. 为什么无法创建更大的数组? Attempts to allocate larger arrays may result in OutOfMemoryError 如果数组长度过大,可能出现的两种错 ...

  10. 扫描工具Nikto-安全牛课堂网络安全之Web渗透测试练习记录

    web扫描工具大都支持两种模式:代理扫描和主动扫描 Nikto 扫描内容 扫描软件版本.存在安全隐患的文件.服务器配置漏洞.服务器配置漏洞.web应用安全隐患 常用命令 nikto -list-plu ...