growuphappily 发表于 2020-2-16 11:57

python写的简单的crackme(反编译就行)

本帖最后由 growuphappily 于 2020-2-16 13:26 编辑

语言:python
无壳
蓝奏云:https://www.lanzouj.com/i9eak0d
我就是想让你们反编译然后更改
成功图片:




JunDaYi 发表于 2020-2-16 13:17

#!/usr/bin/env python
# encoding: utf-8

def fuck0x(a):
    tmp1=[]
    tmp2=''
    for i in a:
      tmp2=''
      for ii in range(len(i)):
            if ii in (0, 1):
                continue
            tmp2+=i

      tmp1.append(tmp2)

    return tmp1


def toupper(a):
    for i in range(len(a)):
      a=a.upper()

    return a


username=input('请输入账号:')
userkey=input('请输入注册码:')

try:
    number=int(username)
except Exception:
    None
    None
    None
    print('账号必须是整数')

keys=[]
keys.append(str(hex(number * 234863)))
keys.append(str(hex(number)))
keys.append(str(hex(int(number / 6668648))))
keys.append(str(hex(number * 18584564)))
keys.append(str(hex(number * 5556546)))
keys=fuck0x(keys)
keys=toupper(keys)
for i in range(5):
    if len(keys)<=5:
      continue
    keys=keys

key='{0}-{1}-{2}-{3}-{4}'.format(keys, keys, keys, keys, keys)
if key==userkey:
    print('注册成功')
else:
    print('注册失败')
input()


def fuck0x(a):
    tmp1=[]
    tmp2=''
    for i in a:
      tmp2=''
      for ii in range(len(i)):
            if ii in (0, 1):
                continue
            tmp2+=i

      tmp1.append(tmp2)

    return tmp1


def toupper(a):
    for i in range(len(a)):
      a=a.upper()

    return a


username=input('请输入账号:')
userkey=input('请输入注册码:')

try:
    number=int(username)
except Exception:
    None
    None
    None
    print('账号必须是整数')

keys=[]
keys.append(str(hex(number * 234863)))
keys.append(str(hex(number)))
keys.append(str(hex(int(number / 6668648))))
keys.append(str(hex(number * 18584564)))
keys.append(str(hex(number * 5556546)))
keys=fuck0x(keys)
keys=toupper(keys)
for i in range(5):
    if len(keys)<=5:
      continue
    keys=keys

key='{0}-{1}-{2}-{3}-{4}'.format(keys, keys, keys, keys, keys)
if key==userkey:
    print('注册成功')
else:
    print('注册失败')
input()

Culaccino 发表于 2020-2-16 13:13

把你的软件解出py文件就可以了,都不用爆破

涛之雨 发表于 2020-2-16 13:19

py。。。。如果不是自己改了编译器,都能反编译出来源码。。。。
可以参考https://www.cnblogs.com/QKSword/p/10540431.html
等一下尝试用od或是ida试试

growuphappily 发表于 2020-2-16 13:20

Culaccino 发表于 2020-2-16 13:13
把你的软件解出py文件就可以了,都不用爆破

就是想让你这样啊。。。。

growuphappily 发表于 2020-2-16 13:21

1476200850 发表于 2020-2-16 13:17
#!/usr/bin/env python
# encoding: utf-8



你把源码暴露在大庭广众之下真的好吗。。。。

growuphappily 发表于 2020-2-16 13:25

涛之雨 发表于 2020-2-16 13:19
py。。。。如果不是自己改了编译器,都能反编译出来源码。。。。
可以参考https://www.cnblogs.com/QKSwor ...

我记得之前用OD破了一个python
但是现在不行了

涛之雨 发表于 2020-2-16 13:27

growuphappily 发表于 2020-2-16 13:25
我记得之前用OD破了一个python
但是现在不行了

唔可是我py环境貌似没配置23333333
刚重装电脑。。。

growuphappily 发表于 2020-2-16 13:28

涛之雨 发表于 2020-2-16 13:27
唔可是我py环境貌似没配置23333333
刚重装电脑。。。
。。。。。。。。。。
不麻烦,再装一个
装的什么系统?

聪明的栋栋 发表于 2020-2-16 14:01

# uncompyle6 version 3.6.2
# Python bytecode 3.4 (3310)
# Decompiled from: Python 3.6.6 (v3.6.6:4cf1f54eb7, Jun 27 2018, 03:37:03)
# Embedded file name: CrackMe.py
# Compiled at: 1995-09-28 00:18:56
# Size of source mod 2**32: 272 bytes


def fuck0x(a):
    tmp1 = []
    tmp2 = ''
    for i in a:
      tmp2 = ''
      for ii in range(len(i)):
            if ii in (0, 1):
                continue
            tmp2 += i

      tmp1.append(tmp2)

    return tmp1


def toupper(a):
    for i in range(len(a)):
      a = a.upper()

    return a


username = input('请输入账号:')
userkey = input('请输入注册码:')
try:
    number = int(username)
except Exception:
    print('账号必须是整数')
else:
    keys = []
    keys.append(str(hex(number * 234863)))
    keys.append(str(hex(number)))
    keys.append(str(hex(int(number / 6668648))))
    keys.append(str(hex(number * 18584564)))
    keys.append(str(hex(number * 5556546)))
    keys = fuck0x(keys)
    keys = toupper(keys)
    for i in range(5):
      if len(keys) <= 5:
            continue
      keys = keys

    key = '{0}-{1}-{2}-{3}-{4}'.format(keys, keys, keys, keys, keys)
    if key == userkey:
      print('注册成功')
    else:
      print('注册失败')
    input()
# okay decompiling CrackMe.pyc
页: [1] 2 3
查看完整版本: python写的简单的crackme(反编译就行)