pre { background:#eeeeee; border:1px solid #A6B0BF; font-size:120%; line-height:100%; overflow:auto; padding:10px; color:#000000 } pre:hover { border:1px solid #efefef; } code { font-size:120%; text-align:left; margin:0;padding:0; color: #000000;} .clear { clear:both; overflow:hidden; }

Bienvenido al blog

Bienvenidos al blog de seguridad en sistemas

domingo, 31 de marzo de 2013

Reto Web WackoPicko (I)

Tal como comente en pasadas entradas, OWASP Web Applications Project es una distribución Linux con un gran número de retos Web de forma que permite, tanto a un programador como a un auditor, mejorar técnicamente mediante ejemplos prácticos en vez de únicamente teóricos.

Dentro de estos distintos retos se ofrece la posibilidad de realizar WackoPicko. A diferencia de la mayoría de los otros retos Web, WackoPicko es bastante más parecido a un entorno Web real al ofrecer un recurso Web completo sin proporcionar pistas (o casi ninguna) de que tipo de vulnerabilidad pueda haber en cierto recurso. En la siguiente entrada veremos los pasos que he seguido para reconocer ciertas vulnerabilidades del reto.

Teniendo en cuenta que no vamos a auditar el servicio, no existe protocolo HTTPS ni es necesario realizar una búsqueda de información externa preliminar, se va a comenzar directamente con el mapa de la web. 

Lo primero que hice fue navegar por la Web apuntado todos los nuevos recursos accesibles, creando una especie de diagrama inicial de la Web. Como manía personal, mientras voy realizando el mapa voy apuntado posibles vectores de ataque que puedan estar asociados a la funcionalidad de cada recurso (los escribo en color rojo). De la misma forma, cada bloque importante o recurso web que considero que su función es importante lo pinto con un cuadrado grande. Para finalizar, separo las zonas que no requieren autenticación de lo requieren mediante rallas discontinuas. Esto solo es posible si tenemos un usuario valido, y en el caso de la Web, se nos permite crearnos un usuario valido como usuario estandar pero no en el caso del administrador. 

Una vez creado el mapa inicial suelo comparar el mapa generado manualmente con los resultados almacenados en el proxy que empleo entre el navegador web y la página Web. En mi caso siempre uso Burp aunque se puede usar Zap. Para terminar empleo un fuzzer como DirBuster para buscar recursos existentes pero no accesibles directamente desde enlaces. Estos últimos los suelo pintar en color negro o verde en el diagrama. En el caso del reto, no encontré recursos ocultos aunque a raiz de vulnerabilidades encontradas posteriormente me di cuenta que sí que los había. 

Como resultado el mapa que me quedo fue el siguiente cuadro de Picasso. La zona superior representa la parte accesible sin estar autenticado, la parte inferior izquierda la parte de administración y la parte inferior derecha la de un usuario autenticado:


En la próxima entrada expondré los pasos que hice para descubrir la mayoría de las vulnerabilidades documentadas en el wiki del proyecto, e incluso algunas de ellas que llevadas al "extremo" permitían realizar cosas realmente interesantes ;-)

PD: ¡ya soy GOLD GCIA! Cuando SANS lo publiquen pondre una entrada expecifico dedicada a al herramienta del paper. 




Continuar...

domingo, 3 de marzo de 2013

Nuevos blogs añadidos

Hace un par de días tuve el placer de descubrir el blog de Daniel García Gutiérrez, que con solo dos entradas, ya me ha causado una muy grata impresión. Este enfocado a la explotación de vulnerabilidades en programas compilados en Linux y en especial en como saltar distintas restricciones como el NX, ASLR, Canario, etc.

La primera entrada se trata de tomar ventaja del ROP para poder saltarse las restricciones en un programa compilado estáticamente, es decir, que no hace uso de librerias externas para su ejecución. Su segunda entrada intenta aprovechar una vulnerabilidad, pero en este caso, de un programa compilado dinámicamente.

Gracias a este estupendo blog de Dani, y a raiz de un par de comentarios, descubrí el interesante blog de Adrian Bravo Navarro orientado principalmente al Pentesting y ensamblador (explotación y malware).

Ambos blogs van a la lista de blogs interesantes, y no comunes, que recomiendo leer diariamente. ¡Nos leemos!

Continuar...