martes, 17 de marzo de 2009

El anexo que debia...

Hola!,

Hace ya un tiempo, publique un tutorial sobre un sencillo Keygenme y me habia quedado pendiente el keygen asi que aca esta. Es un simple script en python muy mal hecho pero que cumple con su cometido!. Proximamente voy a estar subiendo un pequeño .doc o .pdf en el cual vamos a dejarlo un poco mas bonito programando una GUI en VisualWx!.


# little keygen to White Crackme (HMX0101) by NCR/CRC! [ReVeRsEr]
# 17/03/2009

import sys
import random

username = sys.stdin.readline().strip("\n")
namevalue = 0

# generate a name based value
for i in range(len(username)):
if ord(username[i]) >= 0x30 and ord(username[i]) <= 0x39:
namevalue += 2 * ord(username[i])
if ord(username[i]) >= 0x41 and ord(username[i]) <= 0x5a:
namevalue += ord(username[i]) + ord(username[i]) * 2
if ord(username[i]) >= 0x61 and ord(username[i]) <= 0x7a:
namevalue += ord(username[i]) << 2

namevalue = namevalue & 0xFFF

# generate a random number
randvalue = random.randint(1,9999)
if randvalue < 1000:
randvalue = str(0) + str(randvalue)
else:
randvalue = str(randvalue)

sp = str(((((int(randvalue[2]) << 4)) + namevalue) + (int(randvalue[3]) << 4)))

num1 = random.randint(0,9)
num11 = random.randint(0,9)
num13 = random.randint(0,9)

while 1:
if((num1 + int(randvalue[2]) + num11 + num13) != 0x18):
num1 = random.randint(0,9)
num11 = random.randint(0,9)
num13 = random.randint(0,9)
else:
break

num12 = random.randint(0,9)
num14 = random.randint(0,9)
num2 = random.randint(0,9)

while 1:
if(2 * (int(randvalue[3]) + num2 + num12 + num14) != 0x20):
num12 = random.randint(0,9)
num14 = random.randint(0,9)
num2 = random.randint(0,9)
else:
break

num16and17 = str(((ord(username[0]) >> 1) + num1) + 0x0a)
num18and19 = str(((ord(username[len(username) - 1]) >> 1) + num2) + 0x08)

print 'serial is: %s-%s-%s-%s' % (str(num1) + str(num2) + str(int(randvalue[2])) + str(int(randvalue[3])), sp, str(num11) + str(num12) + str(num13) + str(num14), str(num16and17) + str(num18and19))

Pueden bajar el script desde aca.

Hasta la proxima!.

pd. no se rian del codigo, son las 2:41 a.m!!!, tengan piedad! :P

No hay comentarios: