第一次制作CrackMe,QT6写的,各位大佬看看怎么样!
本帖最后由 2370177068 于 2023-1-18 10:26 编辑1、我第一次制作CrackMe,我是用QT6写的,无壳,请各位大佬看看我写的怎么样。
2、因为是QT写的,所以上传的是压缩包,解压后56MB,主程序65KB
3、每个人的激活码不一样。
4、编译器:MSVC2019 X64 Release
5、下载链接:
https://lxgz.lanzouo.com/iYYEJ0l95pof
```python
#!/usr/bin/env python3
from base64 import b64decode, b64encode
def vigenere(msg: bytearray, key):
for i in range(len(msg)):
msg ^= key
def decode_str(s):
try:
s = s.encode()
except:
pass
if len(s) % 4 != 0:
s += b'=' * (4 - len(s) % 4)
s = bytearray(b64decode(s))
vigenere(s, )
if len(s) % 4 != 0:
s += b'=' * (4 - len(s) % 4)
s = b64decode(s)
try:
s = s.decode()
except:
pass
return s
def encode_str(s):
try:
s = s.encode()
except:
pass
s = bytearray(b64encode(s).strip(b'='))
vigenere(s, )
return b64encode(s).strip(b'=').decode()
def keygen(machine_code):
issue_to = 'Ichild'
time = '2077-12-31 23:59:59'
machine_code = decode_str(machine_code)
computer_name, computer_uid = machine_code.split('|')
data = {'code': 1, '电脑名称': computer_name, '电脑UID': computer_uid, '到期时间': time, '颁发者': issue_to}
return encode_str(str(data).replace('\'', '"'))
print(keygen('UUdXUVU1WldcQDNKV0BBf1ZcN3VnQVc2RUNhRU1VSDVIXGBzTFdUcUhAQTJYejNDV0NRPEtdRURPUFN9WVNbQU1FTDRWWQ'))
'''
248: ZzAwdV9z # wmic
272: WjFPcmVpMWxtVEwx # csproduct
296: WTBXNQ # get
320: VVRXT1RF # UUID
344: NnAqRDN2WzA8YlF5M0pXZDA+ekA # 激活失败!
368: WjA4blxV # code
392: NjdSNDBNW1U8WUFPMDBhfw # 电脑名称
416: NjdSNDBNW1VfVm5E # 电脑UID
440: NltocjN0cWE8c2czM1xhOA # 到期时间
464: ZlptMGNXOUldUDNqX0VGZ2ZNc3ZjUXZ+a3A # yyyy-MM-dd hh:mm:ss
488: NWNKRzNdI1U/SkFH # 颁发者
512: NnN4bDBII0g8TzBmMjF9RQ # 欢迎你,
536: NltocjN0cWE8c2dtMHZ9bjA+emM # 到期日期:
560: T2s4NWVpTnJqMXppYUFofmVnTnRiXVRiUVBqdmFWNQ # ./translations/qt_ag.qm
'''
``` Ichild 发表于 2023-1-18 12:58
```python
#!/usr/bin/env python3
卧槽好厉害,从哪里突破的?:eee 新人,看了2小时基本没啥头绪,先插个眼,等了解下QT之后再来试试。另外看大佬写的算法,感觉见过几个密码类的都是这个套路,区别可能是加个校验位之类的,请问这个套路在密码类里面算什么水平,业余玩家有必要学学吗
没看懂,先收藏以后再看
页:
[1]