吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2424|回复: 14
收起左侧

[CrackMe] 新手第二次的CM 无壳无花指令

[复制链接]
crack5 发表于 2020-2-25 23:24
CM是什么?Crackme是什么?这是什么东西?楼主发的什么?
他们都是一些公开给别人尝试破解的小程序,制作 Crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 Cracker,想挑战一下其它 Cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破解,KeyGenMe是要求别人做出它的 keygen (序号产生器), ReverseMe 要求别人把它的算法做出逆向分析, UnpackMe 是要求别人把它成功脱壳,本版块禁止回复非技术无关水贴。

CM是什么?Crackme是什么?这是什么东西?楼主发的什么?
他们都是一些公开给别人尝试破解的小程序,制作 Crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 Cracker,想挑战一下其它 Cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破解,KeyGenMe是要求别人做出它的 keygen (序号产生器), ReverseMe 要求别人把它的算法做出逆向分析, UnpackMe 是要求别人把它成功脱壳,本版块禁止回复非技术无关水贴。


大佬随便秒破的


新手可以玩玩








一组可用KEY



NTUxNTg3Mzc=

4585-5247-6137-6588


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册[Register]

x

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| crack5 发表于 2020-2-26 11:58
好啦   不注意写的取机器码 源码密码Crack 新手可以参考一下 简单算法

注册机

[Asm] 纯文本查看 复制代码
.版本 2
.支持库 spec
.支持库 eAPI

.子程序 _按钮1_被单击
.局部变量 hwid, 文本型
.局部变量 运算, 整数型, , "4"

hwid = 编码_BASE64编码 (到字节集 (编辑框1.内容))
调试输出 (hwid, 取文本左边 (hwid, 1), 取文本中间 (hwid, 2, 1), 取文本中间 (hwid, 3, 1), 取文本中间 (hwid, 4, 1))

运算 [1] = 位异或 (4541, 取代码 (取文本左边 (hwid, 1), 1))
运算 [2] = 位异或 (5139, 取代码 (取文本中间 (hwid, 2, 1), 1))
运算 [3] = 位异或 (6059, 取代码 (取文本中间 (hwid, 3, 1), 1))
运算 [4] = 位异或 (6634, 取代码 (取文本中间 (hwid, 4, 1), 1))
编辑框2.内容 = 格式化文本 (“%d-%d-%d-%d”, 运算 [1], 运算 [2], 运算 [3], 运算 [4])


.子程序 编码_BASE64编码, 文本型, , BASE64编码处理;成功返回编码后的文本;
.参数 待编码数据, 字节集, , 待编码字节集
.局部变量 余数, 整数型
.局部变量 临时, 字节型, , "3"
.局部变量 变量, 整数型
.局部变量 集合, 字节集
.局部变量 长度, 整数型
.局部变量 字符, 字节集
.局部变量 i, 整数型

长度 = 取字节集长度 (待编码数据)
.如果真 (长度 < 1)
    返回 (“”)
.如果真结束
余数 = 长度 % 3
.如果真 (余数 > 0)
    待编码数据 = 待编码数据 + 取空白字节集 (3 - 余数)
.如果真结束
长度 = 取字节集长度 (待编码数据)
字符 = 取空白字节集 (长度 × 4 ÷ 3)
i = 1
集合 = 到字节集 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 /”)
.变量循环首 (1, 长度, 3, 变量)
    临时 [1] = 待编码数据 [变量]
    临时 [2] = 待编码数据 [变量 + 1]
    临时 [3] = 待编码数据 [变量 + 2]
    字符 [i] = 集合 [右移 (临时 [1], 2) + 1]
    字符 [i + 1] = 集合 [左移 (位与 (临时 [1], 3), 4) + 右移 (临时 [2], 4) + 1]
    字符 [i + 2] = 集合 [左移 (位与 (临时 [2], 15), 2) + 右移 (临时 [3], 6) + 1]
    字符 [i + 3] = 集合 [位与 (临时 [3], 63) + 1]
    i = i + 4
.变量循环尾 ()
.如果真 (余数 > 0)
    长度 = 取字节集长度 (字符)
    .如果 (余数 = 1)
        字符 [长度 - 1] = 到字节 (取代码 (“=”, ))
        字符 [长度] = 到字节 (取代码 (“=”, ))
    .否则
        字符 [长度] = 到字节 (取代码 (“=”, ))
    .如果结束

.如果真结束
返回 (到文本 (字符))
涛之雨 发表于 2020-2-26 12:15
crack5 发表于 2020-2-26 12:03
没错 只不过 算出来 机器码后 就两次 BASE64 编码 新手会摸不透的 只不过这次玩脱了 哈哈哈哈 {:301_972: ...

唔密码的话。。。你提供的直接扔进去就能出来。
大概看了一下算法,(ida不能自动识别函数差评)

好多“差一点”的提示啊
不过算法和爆破的话还是搞不出来

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册[Register]

x
 楼主| crack5 发表于 2020-2-25 23:25
爱飞的猫 发表于 2020-2-26 05:56
虚拟机的机器码和你给的一毛一样,直接输入进去拿到密码看源码了。

t00t00 发表于 2020-2-26 07:53
本帖最后由 t00t00 于 2020-2-26 07:55 编辑



貌似校验不到位(NTUxNTg开头的机器码KEY都可过?),后面可能没有参与运算。把部分函数转换为汇编值得学习
xiaoyxf 发表于 2020-2-26 08:27
载入od后大概看了下,貌似用了很多循环,暂时没搞定,长时间没玩以前掌握的技能都忘记了
huzpsb 发表于 2020-2-26 09:36
燃鹅我为什么看到了一大堆想得美...哭了
涛之雨 发表于 2020-2-26 11:59
感觉像是用注册码算机器码然后比较。。。。
 楼主| crack5 发表于 2020-2-26 12:00
jixun66 发表于 2020-2-26 05:56
虚拟机的机器码和你给的一毛一样,直接输入进去拿到密码看源码了。

应该取CPU序列号的 失策失策
 楼主| crack5 发表于 2020-2-26 12:03
涛之雨 发表于 2020-2-26 11:59
感觉像是用注册码算机器码然后比较。。。。

没错 只不过 算出来 机器码后 就两次 BASE64 编码 新手会摸不透的 只不过这次玩脱了 哈哈哈哈
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 14:44

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表