[Cramel] AdminFinder by 79137913 [Aplicación + Source]

Iniciado por BlackBlex, Junio 25, 2017, 07:01:43 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Junio 25, 2017, 07:01:43 PM Ultima modificación: Junio 26, 2017, 01:19:29 AM por BlackBlex
Les traigo el siguiente Port de una aplicación echa por @No tienes permitido ver los links. Registrarse o Entrar a mi cuenta en el post de No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Esta aplicación por el momento esta realizada en modo Consola, en los siguientes días les traeré el modo gráfico.




Descarga: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta



Para funcionar la aplicación necesita de un diccionario(paths.txt) donde contendrá todas las posibles carpetas de admins o archivos de login





Código fuente

Información

Aquí les traigo el source del AdminFinder, como verán usa el mismo método de detección (cargar una lista, e ir comprobando cada una)

Archivo AdminFinder.cml
Código: Cramel
'/**
' * AdminFinder
' *
' * @by         @79137913
' * @Ported by  Jovani Pérez Damián (@BlackBlex)
' *
' * ==============Information==============
' *      Filename: AdminFinder.cml
' * ---------------------------------------
'*/

Importar "Cramel.cml"
Importar "MSVBVM60\MSVBVM60.cml"
Importar "Constantes.cml"
Importar "APIS.cml"
Importar "Archivo.cml"
Importar "Consola.cml"
Importar "HTTPRequest.cml"

Var cmd:Consola
Var archivoC:ArchivoC

Var controlArchivo:Booleano

Var paths[], pathsFound:Cadena
Var contenido, salida:Cadena

Crear archivoC
    archivoC.abrir("paths.txt", GENERIC_READ, OPEN_EXISTING)
    Si ( archivoC.conseguirPtr <> INVALID_HANDLE ) Entonces
        contenido = archivoC.leer()
        paths = Separar(contenido, CRLF)
        controlArchivo = Verdad
    SiNo
        Mensaje("El archivo paths.txt no existe, favor de crearlo y poner su lista separada por linea")
        controlArchivo = Falso
    FinSi
    archivoC.cerrar()
Destruir archivoC

Var objetivo:Cadena
Var correcto:Booleano
correcto = Falso

Si ( controlArchivo ) Entonces
    Crear cmd
        cmd.establecerTitulo("AdminFinder by 79137913 ~ Ported to Cramel Console by BlackBlex")
        cmd.escribirLinea(CRLF + "    /=======================\\")
        cmd.escribirLinea("      Paths encontrados:" + EntCad(&paths))
        cmd.escribirLinea("    \\=======================/" + CRLF)
        Mientras correcto = Falso
            cmd.escribir("(No incluya el http:// al inicio, ni el / al final)" + CRLF + "Ingrese el destino: ")
            objetivo = cmd.leer
            Si ( Buscar(objetivo, "http://") = Falso ) Entonces
                correcto = Verdad
            FinSi
        FinMientras
        Si ( correcto ) Entonces       
            Si ( buscarObjetivos ) Entonces
                cmd.limpiarConsola()
                cmd.escribirLinea(CRLF)
                cmd.escribirLinea("  URLS encontradas: ")
                cmd.escribir(pathsFound + CRLF)
                cmd.pausarConsola()
            SiNo
                cmd.limpiarConsola()
                cmd.escribirLinea(CRLF)
                cmd.escribirLinea("  No se encontro ninguna url" + CRLF)
                cmd.pausarConsola()
            FinSi
        FinSi
    Destruir cmd
FinSi

Proc buscarObjetivos:Booleano
    cmd.escribirLinea("  Examinando...")
    Var request:HTTP
    Var text:Cadena
    Var id:Entero
    Resultado = Falso
    Crear request
        id = 0
        Contar id a &paths Paso 1
            request.Metodo = "GET"
            request.Puerto = INTERNET_DEFAULT_HTTP_PORT
            request.Servidor = objetivo
            request.Dirección = "/" + paths[id]
            request.Agente = "RequestTest [GET]"

            Si ( request.Conectar ) Entonces
                Si ( request.Enviar ) Entonces
                    cmd.escribir("    http://" + request.Servidor + request.Dirección + " ~ Estado: ")
                    Si ( request.StatusCode = HTTP_STATUS_OK ) Entonces
                        cmd.escribirLinea("[OK]")
                        pathsFound = pathsFound + "    http://" + request.Servidor + request.Dirección + CRLF
                        Resultado = Verdad
                    SiNo
                        cmd.escribirLinea("[FAILED]")
                    FinSi
                FinSi
            FinSi
        Seguir
    Destruir request
    Pausar(2500)
FinProc





Muy copada la aplicación, yo también estaba pensando en traducir los códigos de numéritos.

Me interesa ver el código fuente, espero con ansias la publicación!

salu2

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Muy copada la aplicación, yo también estaba pensando en traducir los códigos de numéritos.

Me interesa ver el código fuente, espero con ansias la publicación!

salu2

Listo, acabo de agregar el source en el mismo post, iba a hacer uno aparte, pero lo vi innecesario, jeje.

Cualquier sugerencia, o error, comentame.