Entradas etiquetadas con reto
Solución al #FPR5: ¡Jackmi Amijo!
30 ene
Buenas a todos, acaba de finalizar el reto de Flu Project #FPR5: ¡Jackmi Amijo!, correspondiente al mes de Enero. Este reto era de dificultad media-baja y consistía en una pequeña intrusión en un portal programado en PHP. Contábais de inicio con el código fuente del programa, lo que facilitaba enormemente la labor para los usuarios que se están iniciando en las técnicas de penetración.
El reto se dividía en 2 fases. En la primera había que explotar una vulnerabilidad de Xpath Injection que padecía el formulario de autenticación del portal al interactuar con una base de datos XML donde almacenaba el usuario y contraseña del usuario administrador:
En la segunda fase había que descargar un archivo de tipo .run, que en realidad era un archivo docx con una imagen oculta:
Os dejamos con el solucionario que nos a enviado Danigargu, tercer clasificado del reto.
Mirando un poco el código de login.php vemos que es una autenticación
basada en XML, también vemos que las variables enviadas por
POST no están filtradas, por lo que puede haber un XPath Injection.
17: $resultado = $xml->xpath("//users/user[username/text()='" . $user . "' and password/text()='" . $pass . "']");
Al intentar bypassearlo vemos que la web solo deja introducir hasta
10 caracteres en cada campo por lo que tendremos que modificar la
pagina o modificar los datos durante el envio con TamperData o cualquier otro programa.
Bypass
------
usuario: abc' or 1=1 or 'a'='b
passwd: (blanco)
Tras ello, la web nos redirige a menuPrincipal.php donde nos descargamos un fichero llamado programa.zip. Su contenido es un fichero llamado 'programa.run'. Como no sabemos que tipo de fichero se trata, lo comprobamos con el comando file.
dani@debian:~/FPR5$ file programa.run
programa.run: Zip archive data, at least v2.0 to extract
Viendo que es otro fichero zip, lo descomprimimos:
dani@debian:~/FPR5$ unzip programa.run
Archive: programa.run
creating: docProps/
inflating: docProps/app.xml
inflating: docProps/core.xml
creating: word/
inflating: word/document.xml
inflating: word/fontTable.xml
creating: word/media/
extracting: word/media/image1.png
inflating: word/media/reto.png
inflating: word/settings.xml
inflating: word/styles.xml
creating: word/theme/
inflating: word/theme/theme1.xml
inflating: word/webSettings.xml
creating: word/_rels/
inflating: word/_rels/document.xml.rels
inflating: [Content_Types].xml
creating: _rels/
inflating: _rels/.rels
Al parecer es un fichero de Word. Si lo abrimos nos aparece una imagen que no nos dice nada, pero si miramos la carpeta word/media que hemos descomprimido,encontramos otra imagen llamada reto.png la cual nos dice:
!Enhorabuena!, has pasado el reto.
El reto era muy sencillo como podéis ver. Algunas inyecciones de ejemplo que podríais haber utilizado para saltar el formulario serían:
' or 1=1 or ''=' abc' or 1=1 or 'a'='b ' or '1'='1 admin' or '1'='1
No hemos dado por buenas las soluciones que nos habéis pasado en las que os saltábais el primer paso del reto, explotar la vulnerabilidad de Xpath Injection (o no nos lo habéis indicado claramente).
A continuación os dejamos con el listado de h4x0rs que han finalizado el reto correctamente:
- @sh4r3m4n [licenciaparahackear.wordpress.com] (4horas y 57 minutos)
- Alverid (7 horas y 15 minutos)
- Danigargu (14 horas y 22 minutos)
- zprian (15 horas y 19 minutos)
- Fuska (19 horas y 4 minutos)
- Jesus Gutierrez (19 horas y 19 minutos)
- –J4z– (19 horas y 32 minutos)
- Pedro Tunelko (20 horas y 16 minutos)
- Edwin Alberto (1 dia)
- Aneraka (1 dia)
- Palangui (5 dias)
- Oscar @dot_ike (6 dias)
Esperamos que os hayáis divertido con el reto
Para febrero, si el tiempo lo permite, lanzaremos un reto de mayor complejidad, podéis enviarnos ideas que se os ocurran para este reto por Twitter y correo electrónico.
Saludos!
#FPR5: ¡Jackmi Amijo!
23 ene
Buenas a todos, hoy os traemos el quinto reto de Flu Project al que hemos titulado con el nombre “¡Jackmi Amijo!”, y que se corresponde con el reto del mes de Enero (en Diciembre no tuvimos tiempo de montar ninguno, ¡lo sentimos!).
Como nos habéis ido pidiendo en las encuestas, este reto consiste en una pequeña intrusión en un Sitio Web. El reto es de nivel medio-bajo, y lo hemos puesto especialmente para todos aquellos que nos habéis comentado durante los últimos meses que no habíais podido pasaros los retos anteriores. Así que los que os lo paséis, os pedimos por favor que no comentéis la solución hasta que finalice el reto.
Una vez que paséis la primera prueba recibiréis instrucciones sobre como proceder a continuación.
El reto durará una semana, y el próximo lunes lo resolveremos, publicando un listado de los usuarios que hayan finalizado el reto correctamente.
El hashtag oficial en Twitter del reto es #FPR5, y a través de él os iremos dando pistas y haciendo comentarios a lo largo de la semana.
El sitio web donde tendréis que penetrar se encuentra desarrollado en PHP, os lo podréis descargar desde el siguiente link:
DESCARGAR RETO 5
Tendréis que alojar el sitio web en un apache, por ejemplo nosotros utilizamos WAMP, y visualizar desde un navegador la página principal, “index.php”. En dicha página encontraréis un formulario de autenticación, y en el cuál comenzará la primera prueba, que consistirá en saltaros dicha autenticación.
Al tener el sitio web vosotros en local, podéis lanzarle todos los escáneres de vulnerabilidades que queráis sin miedo, y romper otras cosas (y hasta aquí puedo leer…). Aprovecho para recordaros que estamos escribiendo ahora una cadena de artículos sobre esta temática, que quizás os sea útil.
Si véis que tenéis problemas para pasar el reto, siempre podéis ir viendo el código fuente de la aplicación en cualquier momento, ya que el objetivo de este reto es aprender. Si lo hacéis por el simple hecho de decir que os lo habéis pasado, os engañaréis vosotros mismos
Si el reto os gusta es probable que ampliemos este sitio web de pruebas para que lo tengáis junto con otros sitios como badstore para practicar ataques sin meteros en líos
Disfrutarlo, saludos!
.png)









