第3次做CrackMe,C++ QT,有一点反调试
本帖最后由 2370177068 于 2023-9-18 19:12 编辑第三次玩CrackMe,大佬们看看!
1、编写语言:C++QT 6.5.2
2、联网行为:无
3、是否加壳:主程序不加壳 DLL加壳
4、是否为单文件:否
5、编译器:MSVC2019 64bit Release
6、错误提示:无
7、其他信息:
有一点点反调试保护,可能会出现while true sleep的情况
文件较大主要是Qt的库比较多,解压下来100MB左右
激活码算法固定,巨佬可以写注册机:lol
下载链接:
https://lxgz.lanzouy.com/iFmej18vfh0d
nop了4个跳转,然后随便输入9个字符
本帖最后由 solly 于 2023-9-23 11:22 编辑
算法是 sha3_512:
str = sha3_512(机器码)
str.replace('a', '61')
str.replace('b', '62')
str.replace('c', '63')
str.replace('d', '64')
str.replace('e', '65')
str.replace('f', '66')
str1 = "0123456789"
激活码 = itoa(str.countOfChar(str1)) + itoa(str.countOfChar(str1)) + itoa(str.countOfChar(str1))+ ... + itoa(str.countOfChar(str1))
我的机器码是:YAt9ehttEn9mCWxldxV3e3QfaRYOZHIbaQJmCw4OYWo
我的激活码是:12818161814699105
本帖最后由 solly 于 2023-9-20 11:52 编辑
在dll中检查的:
.text:00000001400021EF 90 nop
.text:00000001400021F0 48 8B D3 mov rdx, rbx
.text:00000001400021F3 48 8B C8 mov rcx, rax
.text:00000001400021F6 FF 15 1C 2E 00 00 call cs:?CPW@CrackMe03DLL@@SA_NVQString@@0@Z ; CrackMe03DLL::CPW(QString,QString)
.text:00000001400021F6
.text:00000001400021FC 84 C0 test al, al
.text:00000001400021FE 74 14 jz short loc_140002214
.text:00000001400021FE
.text:0000000140002200 49 8D 4D 30 lea rcx,
.text:0000000140002204 FF 15 FE 34 00 00 call cs:?show@QWidget@@QEAAXXZ ; QWidget::show(void)
.text:0000000140002204
.text:000000014000220A 49 8B CD mov rcx, r13
.text:000000014000220D FF 15 AD 34 00 00 call cs:?hide@QWidget@@QEAAXXZ ; QWidget::hide(void)
.text:000000014000220D
.text:0000000140002213 90 nop
.text:0000000140002213
.text:0000000140002214
.text:0000000140002214 loc_140002214:
改3个字节即可:
正在比较文件 CrackMe03_0000.exe 和 CRACKME03.EXE
00001599: EB 90
0000159A: 79 90
000015FF: 14 00
2370177068 发表于 2023-9-19 18:37
奇怪了,为什么反调试在你那没起作用,在我这就会弹窗提示检测到调试器或直接闪退?
有作用,只是我提前把IsDebuggerPresent hook了 windeployqt会打包一些用不上的组件,我用qt5打包出来最后只保留Core + Gui + Widgets三个核心dll和platform + style文件夹,用到额外库再加,这样能压缩不少
qt6应该也能做类似的事情(我猜 jjjzw 发表于 2023-9-18 09:00
windeployqt会打包一些用不上的组件,我用qt5打包出来最后只保留Core + Gui + Widgets三个核心dll和platfor ...
我知道有的dll可以删除,但是我还是选择保留这些文件 大佬们怎么没有消息了{:1_937:},是我的程序解密太容易没意思还是太难了解不开呀{:1_885:} 目前在学习Qt但没什么效果,可以向你学习一下开发CrackMe吗? theRavensea 发表于 2023-9-18 17:50
目前在学习Qt但没什么效果,可以向你学习一下开发CrackMe吗?
我也是新手,是我刷视频的时候想到个激活码生成的思路,然后就过来做一个CrackMe来玩玩,也用到了AI 3.5。
学Qt我觉得还是要多做些不同的程序,我是属于不喜欢看教程的人,一些教程差劲浪费时间,不如直接上手写,哪里不会学哪里,有问题问AI和群友就行了,当然也可以去某宝找人在线指导。 可以试试使用enigmavb进行打包,能够压缩三分之一左右。 2370177068 发表于 2023-9-18 19:11
我也是新手,是我刷视频的时候想到个激活码生成的思路,然后就过来做一个CrackMe来玩玩,也用到了AI 3.5 ...
那我先上手试试看效果怎么样,有疑问再向你咨询