CrackMe —— 004
CrackMe —— 004
160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序
CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破。
CrackMe简称CM。
来源
编号 作者 保护方式
004 ajj Name/Serial(Delphi)
005 ajj Serial(Delphi)
工具
x32dbg
DelphiDecompiler
peid
LordPE
ImportREC
开始破解之旅
ON.1
使用x32dbg打开004号程序,和程序一起的还有一个帮助文件,从文件中我们得知程序是Delphi
打开程序,我们发现没有一个确认按钮,这下应该怎么来操作呢?
地址=004580A9
反汇编=mov edx,ckme.458114
字符串="恭喜恭喜!注册成功"
双击,在这个地址向上翻看
第二个跳转跳过了注册成功,该跳转为注册码判断跳转将其NOP,输入框被输入数据????怎么没有任何反应
我们使用DelphiDecompiler 来打开004号程序,该程序是一个Delphi反编译程序,点击Procedures,在Events窗口下发现单击,双击事件和一个chkcode,chkcode汉意疑似检测code
回到程序,我们单击bingo~,结果出现了,美丽的朱茵小姐出现了
接下来我们使用追码的方式来尝试破解
记录两个地址 00457E7C ,00457FB8和00457C40 在x32dbg 中设置断点,来到程序在输入框内输入数据,单击
停在了断点处
单步向下开始走
到达00457C88处时出现dseloffc-012-OK 疑似注册码,继续单步向下
00457C50 | 51 | push ecx |
00457C51 | 874D FC | xchg dword ptr ss:[ebp-4],ecx |
00457C54 | 53 | push ebx | ebx:"紋E"
00457C55 |www.jujinyule.com 56 | push esi |
00457C56 | 8BD8 | mov ebx,eax | ebx:"紋E", eax:&"10""
00457C58 | 33C0 | xor eax,eax | eax:&"10"
00457C5A | 55 | push ebp |
00457C5B | 68 3D7E4500 | push ckme.457E3D |
00457C60 | 64:FF30 | push dword ptr fs:[eax] |
00457C63 | 64:8920 | mov dword ptr fs:[eax],esp |
00457C66 | 8BB3 F8020000 | mov esi,dword ptr ds:[ebx+2F8] |
00457C6C | 83C6 05 | add esi,5 |
00457C6F | FFB3 10030000 | push dword ptr ds:[ebx+310] | [ebx+310]:"黑头Sun Bird"
00457C75 | 8D55 F8 | lea edx,dword ptr ss:[ebp-8] | [ebp-8]:"10"
00457C78 | 8BC6 | mov eax,esi | eax:&"10"
00457C7A | E8 85FEFAFF www.yuchengyule.com| call ckme.407B04 |
00457C7F | FF75 F8 | push dword ptr ss:[ebp-8] | [ebp-8]:"10"
00457C82 | FFB3 14030000 | push dword ptr ds:[ebx+314] | [ebx+314]:"dseloffc-012-OK" 疑似注册码
00457C88 | 8D55 F4 | lea edx,dword ptr ss:[ebp-C] |
00457C8B | 8B83 D4020000 | mov eax,dword ptr ds:[www.huichengtxgw.com ebx+2D4] | eax:&"10", [ebx+2D4]:"聪A"
00457C91 | E8 B2B6FCFF | call ckme.423348 |
00457C96 | FF75 F4 | push dword ptr ss:[ebp-C] |
00457C99 | 8D83 18030000 | lea eax,dword ptr ds:[ebx+318] | eax:&"10", [ebx+318]:"黑头Sun Bird10dseloffc-012-OK12345"
00457C9F | BA 04000000 | mov www.yishengyule158.com edx,4 |
00457CA4 | E8 93BFFAFF | call ckme.403C3C |
00457CA9 | 33D2 | xor edx,edx |
00457CAB | 8B83 F4020000 | mov eax,dword ptr ds:[ebx+2F4] | eax:&"10", [ebx+2F4]:&"HPB"
00457CB1 | E8 AAB5FCFF | call ckme.423260 |
00457CB6 | 8B93 18030000 | mov edx,www.yuechaoyule.com dword ptr ds:[ebx+318] | [ebx+318]:"黑头Sun Bird10dseloffc-012-OK12345"
00457CBC | 8B83 F4020000 | mov eax,dword ptr ds:[ebx+2F4] | eax:&"10", [ebx+2F4]:&"HPB"
00457CC2 | E8 B1B6FCFF | call ckme.423378 |
00457CC7 | 33F6 | xor esi,esi |
00457CC9 | 8D55 EC | lea edx,dword ptr ss:[ebp-14] |
继续单步向下发现00457CBC处[ebx+318]堆栈处出现一串更长的字符串,疑似注册码也在里面,难道这个才是真正的注册码吗,记录下来
在注册码内输入“黑头Sun Bird10dseloffc-012-OK12345”双击窗口,图片显示成功
我们换个账号765 发现注册码变了“黑头Sun Bird8dseloffc-012-OK765” 中间10变为了8 ,最后12345变为了765,观察发现最后应该是账号
中间应该是计算所得
发现8在00457C7F压入栈内
1
00457C7F | FF75 F8 | push dword ptr ss:[ebp-8] | [ebp-8]:L"8"
向上翻看,发现00457C44和00457C4E为计算8的方式
00457C44 | B9 05000000 | mov ecx,5 |
00457C49 | 6A 00 | push 0 |
00457C4B | 6A 00 | push 0 |
00457C4D | 49 | dec ecx |
00457C4E | 75 F9 | jne ckme.457C49 |
固定变量5,5+用户名长度
注册码计算方式为“黑头Sun Bird”+用户名长度+“dseloffc-012-OK”+用户名
CrackMe —— 005
NO.1
用PEID查壳,发现存在UPX
我们脱壳,在程序入口处停下来,单步一次,发现寄存器窗口ESP变为红色
在ESP处右键内存窗口转到,在该位置下硬件断点,F9运行
0044768C 55 push ebp
0044768D 8BEC mov ebp,esp
0044768F 83C4 F4 add esp,-0xC
00447692 B8 2C754400 mov eax,CKme002.0044752C ; UNICODE "+"
00447697 E8 20EAFBFF call CKme002.004060BC
0044769C A1 D88C4400 mov eax,dword ptr ds:[0x448CD8]
004476A1 8B00 mov eax,dword ptr ds:[www.seocelve.com eax]
004476A3 E8 64A4FFFF call CKme002.00441B0C
打开LordPE
找到我们的进程,右键修复镜像大小,再次右键完整转存
接下来使用ImportRec修复IAT
输入OEP地址4768C 查找IAT,获取输入表,点击无效函数,在无效函数处删除指针->转储到文件
提示:此处不要选择剪切指针,否则会程序会异常
脱壳成功
ON.2
搜索字符串发现“注册了”字符串,进入地址向上翻看发现多个跳转
发现跳转全部跳过注册成功,将其全部NOP
运行,发现界面发生变化,破解成功
转载于:https://my.oschina.net/u/3386278/blog/3086274
CrackMe —— 004相关推荐
- [反汇编练习] 160个CrackMe之004
[反汇编练习] 160个CrackMe之004. 本系列文章的目的是从一个没有任何经验的新手的角度(其实就是我自己),一步步尝试将160个CrackMe全部破解,如果可以,通过任何方式写出一个类似于注 ...
- 吾爱破解160个crackme之004
这个crackme我做了一阵子,一直没有出结果,所以看了一下 http://blog.csdn.net/liwz11/article/details/50717038 的帖子,根据dede的作用其实已 ...
- 004/160 CrackMe ajj CKme
分析 可以通过搜索字符串的方式找到 "恭喜恭喜!注册成功" 的提示 在关键跳转上面打断点,输入一组假的 Name Serial 测试 发现点击图片框时程序会停在断点,说明图片框和按 ...
- 基础004:R语言数据处理和变换——dplyr
dplyr 背景简介 安装和数据准备 常用函数 变量筛选select 数据筛选filter 排序arrange 创建新变量mutate 本文"植物微生物组"公众号原创,ID: pl ...
- 某CrackMe算法分析
平时看了一些CrackMe,算法都比较简单,这次拿到的这个算法自己觉得还是比较有难度,首先自己分析时并没有完全分析出算法的结论,后来参照答案才得到较完整的分析: 1.OD载入,F9运行,输入序列号,点 ...
- 【LeetCode】004 Median of Two Sorted Arrays 两个排序数组合并后的中位数
题目:LeetCode 004 Median of Two Sorted Arrays There are two sorted arrays nums1 and nums2 of size m an ...
- crackme算法分析---CRC32算法的妙用
loveasm的crackme算法分析-----CRC32算法的妙用 [作者]:onlyu[FCG][DFCG] [软件介绍]:loveasm[YCG][DFCG]兄弟的crackme,主要锻炼算法分 ...
- 004 Android之其他控件
文章目录 ListView ListView常用属性 ListView基本使用 ListView动态插入数据 ListView实现图文混排 Adapter Adapter(适配器种类) 自定义Adap ...
- 004 两种方法找寻路call
文章目录 关于寻路call 通过参数找寻路call CE搜索寻路目的地坐标 通过参数定位寻路call 寻路call参数分析 寻路call代码测试 寻路状态找寻路call 搜索寻路标志位 通过寻路标志位 ...
- 004 .NetReactor 3.6.0.0之另类脱壳法
文章目录 前言 查壳 脱壳 修复目标程序 前言 最近一直在看脱壳的相关资料,看到了Tuts4you社区脱壳脚本的教程,这个壳我感觉很不错挺有意思的,于是打算将内容整理下分享出来. 查壳 这个壳是.Ne ...
最新文章
- Objective-c——UI基础开发第十二天(相册展示)
- mysql中group concat_mysql中group_concat()函数的使用方法总结
- 利用霍夫梯度法进行圆检测的原理概要及OpenCV代码实现
- ContentProvider再探——Document Provider
- 了不起的 Unicode!
- 终止正在运行的VBS脚本
- springboot基于javaweb的课堂考勤系统设计与实现毕业设计源码142335
- Linux Redh9 下LumaQQ 2005的安装
- ps怎么更改背景图层大小_PS怎么修改图片尺寸大小?ps修改图片大小方法图解
- R7-7735HS和i5-13500H 差距 锐龙R77735HS和酷睿i513500H对比
- matlab求两向量夹角_【求精干货】高中数学知识点总结归纳高一学生必须掌握
- RPA:让电商财务拥有“分身术”
- 计算机网络ospf流程图,计算机网络7-OSPF祥解.ppt
- flowable 查询完成的流程_flowable流程引擎初体验,完成一个请假流程
- 从源头解决问题,而不是曲线救国
- 联合利华投资10亿欧元,致力到2030年淘汰清洁产品中的化石燃料
- 有感而发:中国十大最黑心的职业排行榜
- 海信电视power android,海信智能电视投屏之安卓手机miracast投屏教程
- 光猫机顶盒有路由鸿蒙吗,科普:为何网络机顶盒只能连接光猫端,不能连接路由器?...
- 电脑无法登陆百度知道和百度文库解决办法
热门文章
- 可控硅失效现象_可控硅常见心理问题损坏社会经济现象的介绍和分析
- ps4html5播放器,PS4迎来全新媒体播放器 支持多种视频音频格式
- SolidWorks2008破解版及安装方法
- mysql 查找入职时间最早_(2)查找入职员工时间排名倒数第三的员工所有信息...
- 交换机vlan划分实验
- 端口扫描工具Zenmap超详细使用方法+使用案例(windows)
- 极客日报第 35 期:国外运营商拒为小米 10T Pro 启用双卡;苹果明年 9 月或发布电动汽车;谷歌被指与 Facebook 密谋垄断
- 破解无线网络密码-BT3如何使用3
- 纯windows下制作变色龙引导安装U盘教程
- ember controller内调用save修改model数据时出现null的解决方案