General > Programación

Generador de contraseñas (solo para chile)

(1/3) > >>

bort:
Buenas tardes, este es mi primer post (sean cariñositos conmigo  ;) )

Como todo buen chileno, tengo contratado internet (seguro xD), he visto como funciona movistar, claro, entel, y vtr (entre otros) y me he dado cuenta que la gran mayoría usan el RUT (numero de identidad nacional chileno, para que lo entiendan los extranjeros) como contraseña para las redes wifi.

Soy programador especializado en PHP, yo me ubicaría en un nivel medio. y he creado un script que imprime todos los numeros del rut con su respectivo digito verificador.

Les será muy util para todos los chilenos que quieran usar diccionario al testear redes con algun S.O (yo ocupo Wifislax y la suite de Aircrack)

yo lo probé 4 veces (dejando el pc en la noche prendido) y encontré 2 contraseñas que eran rut en unas redes con cifrado WPA y WPA2.

el codigo php es el siguiente (es similar en C++ por si les gusta otro lenguaje):


--- Código: ---<?php$my_file = 'ruts.txt';$handle = fopen($my_file, 'w');for ($rut=5000000; $rut < 10000000; $rut++) { if (is_numeric($rut)){       $digitos = strlen($rut);             // como funciona esta cosa: primero separamos los numeros         switch ($digitos){             case 7:                   $num = 0;                 $num1 = substr ("$rut", 0, 1);                 $num2 = substr ("$rut", 1, 1);                 $num3 = substr ("$rut", 2, 1);                 $num4 = substr ("$rut", 3, 1);                 $num5 = substr ("$rut", 4, 1);                 $num6 = substr ("$rut", 5, 1);                 $num7 = substr ("$rut", 6, 1);             break;               case 8:                 $num = substr("$rut", 0, 1);                     $num1 = substr ("$rut", 1, 1);                 $num2 = substr ("$rut", 2, 1);                 $num3 = substr ("$rut", 3, 1);                 $num4 = substr ("$rut", 4, 1);                 $num5 = substr ("$rut", 5, 1);                 $num6 = substr ("$rut", 6, 1);                 $num7 = substr ("$rut", 7, 1);              break;         }                      //ahora empieza la multiplicacion                       $nu = $num*3;                       $nu1 = $num1*2;                       $nu2 = $num2*7;                       $nu3 = $num3*6;                       $nu4 = $num4*5;                       $nu5 = $num5*4;                       $nu6 = $num6*3;                       $nu7 = $num7*2;                            //ahora empieza la suma                       $totalsum = $nu + $nu1 + $nu2 + $nu3 + $nu4 + $nu5 + $nu6 + $nu7;                                // la division                       $totaldiv = $totalsum / 11;                         //sacamos el sobrante de la division                       $totalresu = $totalsum % 11;                         //ahora empieza la resta                       $totalres = 11 - $totalresu;                                                                     //mostramos el digito                                              switch ($totalres){                               case 10:                               $digito = "K";                               break;                                            case 11:                               $digito = "0";                               break;                                    default:                                  $digito = $totalres;                               break;                        }    // y finalmente se imprime el bucle for con el digito verificador                    // si quieres agregarle el guión reemplaza por esto $handle, $rut."-".$digito."\n"                        fwrite($handle, $rut.$digito."\n");                    }                    }fclose($my_file);//mas es ruido que las nueces... decía mi abuelo xD?>
--- Fin del código ---

Ahora, para simplificarles el trabajo, yo tengo creado desde los 10 a 18 millones sin puntos ni guión en un archivo comprimido, escribanme un mensaje privado y se los enviaré con gusto.

Este fue mi humilde y principiante post.
(perdón si no va aquí)

Hasta Luego!!
ATTE: BORT

pcman:
Hola , podrias enviarme el documento con los rut generados.

Gracias

cisc0:
tenia algo parecido compatriota... pero en python saludos a todos. ;).


--- Código: ---
def crear(t, nametxt):
    rute = open(nametxt + ".txt", "a")
    rute.write(t + "\n")
    rute.close()


def generarut(desde, hasta):

    arreglo = []

    for i in range(desde, hasta):
        total = 0
        multiplo = 2
        rut = str(i)
        for rinverso in reversed(rut):
            total += int(rinverso) * multiplo

            if multiplo == 7:
                multiplo = 2
            else:
                multiplo += 1

            modulus = total % 11
            verificador = 11 - modulus

            if verificador == 10:
                div = "k"
            elif verificador == 11:
                div = "0"
            elif verificador < 10:
                div = verificador

        arreglo.append(rut + str(div))

    return arreglo

if "__main__" == __name__:

   desde = input("ingresa rut inicial ej:12345678 =>> ")
    hasta = input("ingresa rut final")
    nametxt = raw_input("ingresa nombre para archivo txt")

    for runs in generarut(desde, hasta):
        print (runs)
        crear(runs, nametxt)

--- Fin del código ---

les dejo scrpt...
http://www.mediafire.com/file/ps6e66t648123nc/genrut.py

pcman:
Gracias Cisc0 por tu ayuda, con que software podria trabajar ese Python? y asi generar el archivo con los rut.

Gracias de nuevo

cisc0:

--- Cita de: PcMan en 27-01-2017, 03:40 (Viernes) ---Gracias Cisc0 por tu ayuda, con que software podria trabajar ese Python? y asi generar el archivo con los rut.

Gracias de nuevo

--- Fin de la cita ---

si usas windows primero debes instalar python https://www.python.org/downloads/release/python-2713/ luego ejecutas una cmd de windows y te diriges con la consola a la carpeta donde hallas dejado el script y ejecutas.... python genrut.py 

si usas linux solo abre una consola dale permisos de ejecucion chmod +x al script luego ejecutas  ;)

saludos

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa