RootedCon CTF writeup nivel 4

Reto 4 Accedemos ahora a la shell de este usuario (pownme) con un su, o simplemente haciendo otra conexión por ssh: Y vemos lo que tiene en su directorio y a lo que no teníamos acceso: El fichero comprimido, que descargamos con un scp desde nuestra máquina, parece tener una imagen de un disco que ha sido cifrada con LUKS usando SHA256. Esto lo vemos haciendo un head del fichero o abriéndolo con un editor hexadecimal. Según la Wikipedia (http://es.wikipedia.org/wiki/LUKS): ——————– LUKS (de las siglas en inglés, Linux Unified Key Setup) es una especificación de cifrado de disco creado por

Sigue leyendo

RootedCon CTF writeup nivel 3

Reto 3 Como vimos en el reto anterior, tenemos corriendo un knockd que nos abre un ssh en el puerto 22. Si no sabes lo que es el port knocking puedes ver cómo funciona aquí: http://es.wikipedia.org/wiki/Golpeo_de_puertos Como resumen, diré que se trata de un mecanismo de seguridad que oculta ciertos servicios y los abre recibiendo una secuencia mágica de números. En este caso, todos los puertos que espera knockd son TCP, por lo que para que nos de acceso, le mandaremos la secuencia mágica, para posteriormente conectarnos por ssh: Accedemos con nuestro usuario y contraseña: Y analizamos un poco el

Sigue leyendo

RootedCon CTF writeup niveles 1 y 2

A petición de Pablo Catalina (@xkill), voy a ir poniendo la solución del CTF por partes. Ahora voy a publicar la solución de los niveles 1 y 2 (en este último es donde más gente ha quedado atascada), y cada semana publicaré un nuevo nivel. Ahí vamos … 🙂 Reto 1 Al validarse en el reto, a cada participante le aparecía una URL de acceso diferente, ya que cada uno debíamos atacar a una máquina virtual distinta. En mi caso, la URL era http://172.23.23.24 y tras acceder por web, únicamente aparecía la siguiente imagen: Mirando el código fuente de la

Sigue leyendo

HP Data Protector Manager v6.11 (DoS en el servicio RDS)

Continuamos con la saga de servicios de HP Data Protector Manager v6.11, en el que ya subí a mi web dos denegaciones de servicios en OmniInet y MMD (que por cierto, está la misma vulnerabilidad también en el servicio KMS, que usa la mismoa DLL) …  y todas ellas debido a un fallo en la DLL MSVCR71.dll que provocaba un NULL Pointer Dereference. Esta vez se trata del servicio RDS y la DLL afectada es otra diferente, así como la causa de la denegación de servicio. Antes de nada, decir que cuando estuve mirando este programa de HP, hace unos

Sigue leyendo

Fuzzeando con Sulley algunos activex

En el anterior post puse un código en python para fuzzear activex con Sulley. Bien, pues como comenté, el código estaba casi sin probar y necesitaba algunos retoques. He cambiado algunas cosas y he probado un par de exploits que aparece en exploit-db y los resultados han sido muy buenos. Vamos a ver algunas capturas: Ecava IntegraXor Remote ActiveX Buffer Overflow PoC (http://www.exploit-db.com/exploits/15767/) WMITools ActiveX Remote Command Execution Exploit 0day (http://www.exploit-db.com/exploits/15809/) ¡¡¡ Felices Fiestas a todos !!!

Sigue leyendo

Fuzzeando activex con Sulley

Hace poco escribí acerca de como hacer un script para fuzzear aplicaciones locales con Sulley. Aprovechando esta base, he creado, junto con mi amigo Roi, otro script orientado a fuzzear activex. Está sin probar bien por lo que posiblemente requiera de algunos retoques, pero puede servir como base. Las diferentes opciones son: -l -> lista todos los activex instalados en Windows. -n -> tiene en cuenta los que hay en exclude.txt y muestra los que no están ahí. Esta opción es bueno para tener ahí metidos todos los que aparezcan en tu máquina virtual y luego, localizar rápidamente los que

Sigue leyendo

Usando Sulley para fuzzear aplicaciones locales

Como comenté en el anterior post, Sulley es una herramienta impresionante para fuzzear aplicaciones, pero viene más preparada para atacar servidores y no para aplicaciones locales. Como la generación de mutaciones funciona muy bien, he creado un script que usa esta funcionalidad, para atacar aplicaciones locales que cargan ficheros por línea de parámetros, es decir, ficheros de tipo DOC, XLS, PDF, TXT, SWF, etc. Esto unido a pydbg de PaiMei para controlar las excepciones. La verdad es que el script no tiene ningún misterio. Lo que hace básicamente es: Genera una mutación con Sulley Crea un fichero con el resultado

Sigue leyendo

Sulley Fuzzing Framework

Hace unos años que apareció pero la verdad es que lo descubrí hace poco, gracias a mi amigo Roi (http://elotrolad0.blogspot.com/) que siempre anda como loco probando herramientas :). Sulley es un framework para fuzzear aplicaciones. Lo bueno es que es muy potente y te permite crear tus scripts en pocas líneas y con total independencia de la herramienta de fuzzeo. Además, si tenías algún reparo en aprender python, con esto ya es algo totalmente obligatorio. Al final, me rindo ante la evidencia de que para estas cosas, entre python y perl no hay color. Lo ‘malo’ (entre comillas) es que

Sigue leyendo

TPlus 5.0 disponible

Bueno, al fin está lista la versión 5.0 de TPlus. Espero que no le saqueis muchos fallos 😛 Los cambios que hay, a parte de pegarle un repaso de arriba a abajo, son: Nuevo diseño agrupando por pestañas las diferentes funciones, para optimizar el espacio. Cambiar ‘mis fotos’ a una pestaña. Cambiar ‘mensajes’ a una pestaña. Cambiar ‘estados’ a una pestaña. Solucionar problemas al incrementar visitas. Solucionar problemas en envío y recepción de mensajes. También añadir la imagen del usuario. Solucionar problemas en el cambio de estados. Añadir boton ‘responder mensajes’ en ‘mis mensajes’. Añadir boton ‘cambiar ahora el estado’.

Sigue leyendo

Solucionario reto hacking enise

Como han quitado el reto no me acuerdo muy bien de algunas pruebas pero algunas soluciones serían: Nivel 1-A Había que saltarse la siguiente expresión regular: ^\-(?=.*d)(?=.*[a-z])(?=.*[A-Z]).{6,} Una posible solución es: -o=o o=oo o=oO66 Para resolverlo yo cogí y lo dividí en 3 apartados (en una copia en local) y fui saltando uno a uno los filtros: (?=.*d) -> se pasa con o=0 (?=.*[a-z]) -> se pasa con o=00 (?=.*[A-Z]).{6,} -> se pasa con o=oO66 Esta es una posible solución, pero hay muchísimas. Nivel 1-B Editando el fuente de la página vemos al final un comentario con un texto en

Sigue leyendo