Este proyecto fue el cual me hizo iniciar el brute force publicado recientemente, en un principio pensé en ponerlos los 2 juntos como un solo proyecto, pero creo que por separado sería mejor.

Imagen


Funcionalidad:
no es nada complicado básicamente a partir del reporte generado del havij lo que tenemos que haceres:
  • en el primer input poner el nombre de dicho archivo, le damos a 'ver campos' y saldran los nombres de las columnas obtenidas de la inyección sql con su identificador 0, 1, 2, etc.
    ahora colocamos en el segundo input el número de la columna a exportar
    y en el tercer input elegimos el nombre del archivo donde se van a extraer los campos de la columna elegida
    por ultimo solo faltaría darle a 'exportar'.

tener en cuenta alojar el archivo del havij junto con el exportador.php

opcional:
con los users a un lado y las passwords a otro, utilizamos el brute force que desarrolle en la entrada anterior.

Código Fuente:

Código: Seleccionar todo

< ?php
 
 
 
 
                /******************************\
                ****** * * * * RM * * * * ******
                ***** * Desarrollado por * *****
                ***** * * MichBukana * * * *****
                ***** * * * 04/01/12 * * * *****
                ******* * * * * * * * * * ******
                \******************************/
                /**--------------------------**\
                /**code-disaster.blogspot.com**/
                /**+++ indetectables.net ++++**/
                /**++++++ udtools.net +++++++**/
                /**--------------------------**\
                /*[email protected]*/
                /**__________________________**\
                /******************************/
                 
 
 
 
 
 
 
error_reporting(0);
 
echo base64_decode('CjxodG1sPgo8aGVhZD4KICAgIDxzdHlsZT4KICAgIGJvZHl7Y29sb3I6Z3JlZW47YmFja2dyb3VuZC1jb2xvcjpi
bGFjazt9CiAgICBoMXtjb2xvcjpyZWQ7fQogICAgPC9zdHlsZT4KCjwvaGVhZD4KPGJvZHk+Cgo8YnIgLz4KPGNlbnRlcj4KICAgI
DxiciAvPjxoMT5FeHBvcnRhZG9yIEhhdmlqPC9oMT48YnIgLz48YnIgLz4KICAgIDxmb3JtIG5hbWU9Zm9ybXUgbWV0aG9kPSJ
QT1NUIiBhY3Rpb249IiI+CiAgICAgICAgRWxpZ2UgZWwgbm9tYnJlIGRlbCBhcmNoaXZvIGRlbCBjdWFsIHNlIGV4dHJhZXJhbi
Bsb3MgY2FtcG9zIGRlIGxhIGNvbHVtbmEgZXNjb2dpZGEKICAgICAgICA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9UmVzdWx0I
HZhbHVlPXd3dy5yZW50aW5nd2ViLmVzLmh0bWwgc2l6ZT0zMCA+PC9pbnB1dD48YnIgLz4KICAgICAgICA8aW5wdXQgdH
lwZT1zdWJtaXQgdmFsdWU9JyAgICAgIFZlciBDYW1wb3MgICAgICAnID48L2lucHV0PgogICAgPC9mb3JtPgogICAgPGZvcm0
gbmFtZT1mb3JtdTIgbWV0aG9kPSJQT1NUIiBhY3Rpb249IiI+CiAgICAgICAgRXNjb2dlIGVsIG51bWVybyBkZSBsYSBjb2x1bW5
hIGEgZXhwb3J0YXIKICAgICAgICA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9Y29sdW1uYUUgdmFsdWU9MSBzaXplPTEgPjwva
W5wdXQ+PGJyIC8+CiAgICAgICAgRWxpZ2UgZWwgbm9tYnJlIGRlbCByZXBvcnRlIGRlbCBoYXZpagogICAgICAgIDxpbnB1dC
B0eXBlPXRleHQgbmFtZT1BcmNoaXZvQUUgdmFsdWU9dXN1YXJpby50eHQgPjwvaW5wdXQ+PGJyIC8+CiAgICAgICAgRWx
pZ2UgZWwgbm9tYnJlIGRlbCBhcmNoaXZvIGRlbCBjdWFsIHNlIGV4dHJhZXJhbiBsb3MgY2FtcG9zIGRlIGxhIGNvbHVtbmEgZX
Njb2dpZGEKICAgICAgICA8aW5wdXQgdHlwZT10ZXh0IG5hbWU9UmVzdWx0IHZhbHVlPSI=');
echo @$_POST['Result']; 
 
echo base64_decode('IiBzaXplPTMwID48L2lucHV0PjxiciAvPgogICAgICAgIDxpbnB1dCB0eXBlPWhpZGRlbiBuYW1lPWVqZWN1Y
2lvbiB2YWx1ZT0xID48L2lucHV0PjxiciAvPgogICAgICAgIDxpbnB1dCB0eXBlPXN1Ym1pdCB2YWx1ZT0nICAgICAgRXhwb3J0
YXIgICAgICAnPjwvaW5wdXQ+CiAgICA8L2Zvcm0+CjxiciAvPgo=');
 
 
 
//columnaEscogida: columna que vamos a exportar ejemplo usuario o password
//ArchivoAExportar: nombre del archivo generado por el havij
//Resultados: nombre del archivo a crear para los de la columnaEscogida
 
/*---------------------------------------------------------------------------------*/
$columnaEscogida                = $_POST['columnaE'];
$Resultados                     = $_POST['ArchivoAE'];
$ArchivoAExportar               = $_POST['Result'];
 
$ejecucion                      = $_POST['ejecucion'];
/*---------------------------------------------------------------------------------*/
 
 
//$ejecucion                      =1;
 
$page0 = file_get_contents($ArchivoAExportar);
$NumeroDeColumnaTitulos = substr_count($page0, '#FFFFCE');
 
    preg_match_all('|<[font color="#DC883D"]+>(.*)|U',$page0,$salida, PREG_SET_ORDER);
     
    $i=0;
    while($i<$NumeroDeColumnaTitulos){
        echo "<span style="color: red;">".$i." ".$salida[$i][1]. "\n</span>
";
        $i++;
    }
     
     
    if($ejecucion==1){
     
        echo "\n\n";
         
        $page1 = file_get_contents($ArchivoAExportar);
        $NumeroDeColumnaCampos = substr_count($page1, 'td bgcolor');    
         
        preg_match_all('|<[td bgcolor="#FFF7F2"]+>(.*)|U',$page1,$salida1, PREG_SET_ORDER);
 
         
        $i=3;$j=$columnaEscogida+3;
         
        while($i<($NumeroDeColumnaCampos)){
             
                    $p=fopen($Resultados, 'a+');
                    fwrite($p, $salida1[$j][1]. "\n");
                    fclose($p);
 
            $j=$j+$NumeroDeColumnaTitulos;
             
            $i++;
        }
         
 
        $todo = file_get_contents($Resultados);
        $todo = trim($todo);
 
        $p=fopen($Resultados, 'w+');
        fwrite($p, $todo."\n");
        fclose($p);
         
        echo "
 
<span style="color: red;">...Exportacion finalizada</span>";
    }
?>
 
Salu2!
Imagen

(cuanto más sabes, más cuenta te das de lo poco que sabes).

Mostrar/Ocultar

Esta bien si señor, si unes los dos tampoco estaría mal..Buen trabajo.

Una preguntilla, si las pw están en md5, no se podría hacer un script que valla intentando descifrarlas una a una, por ejemplo usando el motor de búsqueda que tiene el havij en varias webs y tal, o algo por el estilo?
ya seria cuestion de obtener las passwd 1 a 1 del archivo donde estaran las passwd extraidas y ir haciendo peticiones a los server donde puede que se encuentre la passwd desencriptada en su DB y obtener el resultado.

aunque no se si funcionaria bien ya que estos server cada vez que mandas a buscar la passwd desencriptada tienes que esperar un tiempo
asi que, 100 passwd con un intervalo de 5min seria bastante largo el proceso.

Salu2!
Imagen

(cuanto más sabes, más cuenta te das de lo poco que sabes).

Mostrar/Ocultar

Pero no están mal algunas de las comillas? O es el foro que las ha pasado todas a " ?

Buen aporte :)

Estaría bien cambiar:

Código: Seleccionar todo

$page0 = file_get_contents($ArchivoAExportar);
Por:

Código: Seleccionar todo

if($ArchivoAExportar!=''){
	$page0 = file_get_contents($ArchivoAExportar);
	if ($page0 === false)
	die('Imposible cargar el archivo. No encontrado.');
}
Así eliminamos un error y además indicamos por qué no va, que con error_reporting a 0 ya ves tu xD
Responder

Volver a “Auditoria Web”