jueves, 13 de agosto de 2009

Web del proyecto EEW

Hola a todos.

Debido a la cantidad de información y post que iremos creando para explicar y comentar las nuevas funcionalidades y el estado del proyecto, en adelante todos los post relacionados con la herramienta, tanto Boken como yo las iremos publicando en el blog que hemos creado expresamente para el mismo.

El blog lo podéis visitar pinchando aquí:

En breve os daremos la direccion de sourceforge, para que podais ver el proyecto y descargaroslo.

Un cordial saludo a todos !!!!

lunes, 10 de agosto de 2009

Del crash al Exploit a golpe de click (III)

Hola a todos.

En esta ocasion os muestro la versatilidad de la tool 'Exper Exploit Writer' (EEW).

Os pongo un video en el que explotamos dos veces el mismo proceso, pero variamos la longitud de la POC, de esta forma el core de la tool, analizara las distintas maneras de llegar a dar el exploit funcional ...

/* AMPLIA TAMAÑO DEL VIDEO, JE JE JE */



Como podeis ver con la len = 200, detecta la excepcion y comprueba que se pisa SEH. De esta forma, intenta explotar el proceso por ese camino, y la segunda vez con la len = 150, registra de nuevo la primera excepcion, comprueba que no se pisa SEH por lo que como la excepcion que da es on write, localiza la instruccion que la produce, analiza las expresiones de la instruccion, los registros implicados y se salta la excepcion, guardando la informacion para crear el evilbuffer.

A continuacion, prosigue con el analisis y detecta que se produce una nueva excepcion esta vez on execute, por lo que busca trampolines para explotarlo, cosa que al final consigue ... .

Bueno, como ya sabeis, nuestra tool funciona en formato GUI (el video), por consola y como API, y solo os doy una pista, imaginaros EEW en modo API, junto a algun fuzzer (SULLEY, je je je) en python ....

Bueno espero que os guste y os vaya picando la curiosidad y las ganas de tener ya la Pre-Release en vuestras manos ... solo python y vuestra imaginacion ...

Un abrazo a todos.

sábado, 8 de agosto de 2009

Del crash al Exploit a golpe de click (II)

Hola a todos.

Ayer por la noche mi amigo y socio Boken, puso en su blog el resultado final de una explotacion por nuestra tool. (Pincha aqui)

Yo hoy os dejo un video, de como nustra tool (en su modo GUI) llega a ese resultado.

Como podreis ver, saca tantos exploits como trampolines localiza.

El analisis lo realiza, viendo si se pisa por el pattern introducido (y controlado) posiciones de memoria, registros, etc.

Una vez localizado donde pisa el 'pattern', busca instrucciones que nos apunten ahi, de esta forma monta las tuplas (address, offset) .

Con estas tuplas, mas la informacion de las excpciones producidas y la forma de introducir el evilbuffer, crea un script, con el exploit funcional, aunque como podreis ver en el video saca muchos mas ... jejejeje.

Bueno aqui os dejo el video ...


/*OS RECOMIENDO AMPLIAR TAMAÑO DEL VIDEO CON UN CLICK SOBRE EL*/

Como podeis ver en el video, podemos introducir el evilbufer por argumento, como fichero por argumento, de manera manual, por sockets o como argumento de una funcion (en una dll, por ejemplo).

En breve sacaremos la pre-release ....

Espero que os guste, esperamos comentarios ..

miércoles, 5 de agosto de 2009

Del crash al Exploit a golpe de click

Hola a todos!!

Hace ya mucho tiempo que no escribía nada y no era ni por falta de ganas ni de cosas que contar ;D

Así que voy a comenzar esta nueva etapa a lo grande!!! Hace unos cuatro meses, que Boken y yo venimos desarrollando al hilo del concurso 15 de CrackSLatinoS, una herramienta capaz de generar exploits funcionales en forma de ficheros script en Python, a partir de un PoC (Prueba de concepto) proporcionada por el usuario.

El usuario indicaría la longitud de la cadena que provoca el Buffer Overflow, la via por la cual el software vulnerable es capaz de recibir dicha cadena. Por linea de comandos, en forma de fichero interpretables por el software vulnerable, por conexión de red (socket), como argumento de una función de una libreria .dll, etc... Y la herramienta comienza todo el proceso de análisis.

El análisis automático que realiza la herramienta, consiste en montar la PoC y lanzarlo contra el software vulnerable para provocar el crash de Access Violation. Debido a la infinidad de casos, la herramienta va salvando los diferentes obstáculos (AntiDEP, SafeSEH, excepciones de escritura o lectura de ciertas direcciones, localización de direcciones validas para hacer un trampolin valido, etc...) hasta llegar a sobreescribir EIP y con toda esa información, crear un script .py que al lanzarlo de manera independiente, sea capaz de ejecutar una shellcode explotando el fallo indicado por la PoC en el software vulnerable.

Para que podáis haceros una pequeña idea, os adjunto una imagen, de la herramienta en plena faena, mientras esta analizando un crash producido en busca de posibles trampolines con los que saltar a la Shellcode.

Como podéis ver en la ventana de la derecha, ha encontrado un trampolin respecto al registro ECX.

El desarrollo esta aun en fases preliminares, en breve liberaremos un pre-release para que podáis verla y testearla a vuestro gusto ;D

Pero aun hay mas.... La herramienta esta pensada como API en Python para que cada uno pueda utilizarla y hacer sus propios exploits. La imagen anterior es un entorno de ventanas con wxPython hecho posteriormente al desarrollo de todas sus funcionalidades, es decir solo como frontend. La herramienta puede ser utilizada como módulos Python para que cada uno la adapte a sus necesidades y pueda crear sus propias aplicaciones con los beneficios que esta aporta.

Espero que este nuevo proyecto que estamos afrontando, os resulte tan interesante como a nosotros. Nos vemos en la inminente pre-release!!!

domingo, 17 de mayo de 2009

Construye tu debugger. Parte 1.

Hola a todos.

Os empezare contando, que otra cosa, totalmente necesaria para un buen estudioso del cracking, exploit writer o newbie de la seguridad, ahi es donde yo me incluyo, es conocer Python, ya que es un lenguaje muy facil de utilizar y sobre el, estan montadas grandes librerias, que nos haran la vida mucho mas facil.

Bueno y de esas librerias, he descubierto a Pedram Amini y su PyDbg, un muy interesante debugger script (libreria que nos monta un debugger para trabajar con el en Python).

Su link es: http://pedram.redhive.com/PaiMei/docs/PyDbg/

Como me interesa ver como funciona todo, indage un poco mas en el API windows debugging y el libro Gray Hat Python de Justin Seitz, libro que te explica como utilizar Python en todos estos temas de reversing, y aqui os dejo la primera parte de esta serie de dos.

La primera parte incluye:

Ctypes.
Abrir o attachar un proceso.
Gestion del debugger.
Gestion de los eventos del Debugger.

En la segunda parte montare, los siguientes puntos:

Control de los registros y el contexto de los threads. Enumeración de
Threads.
Software Breakpoint.
Hardware Breakpoint.
Memory Breakpoint.
Compara nuestro mini debugger con Pydbg.

Lo dicho espero que os guste ...

Vulnerabilidad Format String

Hola a todos.

Aquí os dejo el primer exploit/tutorial que realice. Este tutorial nació para resolver el Concurso 15 de exploits de la lista de Crackslatinos.

Estos concursos los monta mensualmente, Ricardo Narvaja, el alma mater de la lista y una persona que de manera altruista ha escrito cientos de tutoriales, desde su archifamoso INTRODUCCIÓN AL CRACKING CON OLLYDBG DESDE CERO, pasando por cualquier cosa referente al cracking, programación, etc, etc., tan solo pasaros por su pagina y divertios meses leyendo, je je je.

Por ultimo comentaros que este tutorial explica las vulnerabilidades causadas por los format string de manera Teorica, para al final del mismo, ver de manera practica todo lo estudiado, explotando el VLC 0.8.6, a la hora de meterle un tag corrupto en los ficheros ogg.

Espero que os guste.

Por fin me atrevo ...

Hola a todos.

Bueno, después de un año estudiando o mas bien leyendo todo lo que caía en mis manos sobre seguridad en Windows, vulnerabilidades del software y explotación de las mismas, me atrevo a montar un Blog para empezar a plasmar las cosas que poco a poco voy conociendo sobre este apasionante tema.

Esto lo hago porque hace aproximadamente 5 meses descubrí un grupo de personas que llevan mucho tiempo en este tema y tienen una lista en Google llamada Crackslatinos. Es lo mejor que me ha podido pasar, ya que han sido el empuje que me faltaba para lanzarme de lleno en estos temas.

Bueno, pues ya os iré escribiendo ...