MAQUINA WALKINGCMS
Last updated
Last updated
MAQUINA WALKINGCMS
Con nmap hacemos un escaneo de puertos para ver los puertos que se encuentras abiertos.
En este caso nmap nos reporto que el puerto 80 esta abierto solamente, aquí donde corre un servicio http.
Utilizamos unos scripts propios de nmap para enumerar el puerto 80. Unos de los scripts detecto que estamos frente a un wordpress y encontró una ruta llamada wp-login.php.
Entramos a la directorio wordpress, ya que si solo entramos con la ip nos muestra la pagina de apache por default.
Con gobuster hacemos un escaneo de directorio para encontrar rutas ocultas dentro del sitio web.
Como solo hay una ruta debemos buscar otros subdirectorios, así que ahora vamos a hacer el escaneo a la ruta wordpress.
Nos vamos a centrar en la ruta /xmlrpc.php y /wp-login.php. Con whatweb vemos la versión del WorddPress 6.5.3
Bien ahora vamos a usar la herramienta wpscan para enumerar algunos plugins, usuarios y algún que otra vulnerabilidad.
El resultado:
WPSCAN nos muestras mas cosas, en este caso tenemos un usuarios llamado Mario, un directorio llamado /upload, un archivo llamado xml-rpc (igual al que encontró gobuster) y los temas que usa el wordpress.
Ahora buscando un poco de información vemos que el xmlrpc.php es vulnerable a una (external entity injection) o XXE.
DESCRIPCION RAPIDA:
Una vulnerabilidad que permite a un atacante incluir una entidad externa en un documento XML procesado por una aplicación.
El atacante inserta una entidad externa en el XML, que luego es procesada por el parser XML de la aplicación.
Para ello vamos a ingresar a la ruta donde se encontraba el xmlrpc.php
Nos dice que solo acepta peticiones POST, lo que vamos hacer ahora es realizar una petición POST pero con cURL.
curl -X POST 'http://172.17.0.2/wordpress/xmlrpc.php'
La opción -X se utiliza para llamar o cambiar al método que se quiere utilizar.
Nos copiamos el contenido y lo guardamos. Seguido de eso buscamos información de como poder hacer la inyección XXE.
Colocamos estos parámetros dentro de un archivo llamado exploit.xml.
EXPLICACION DE LO QUE HACE:
La línea `<value><string>system.listMethods</string></value>`:
Es parte de una estructura XML que especifica un valor de tipo cadena de texto.
En el contexto de XML-RPC, es probable que represente una llamada al método `syste
Como resultado nos vuelve una lista de métodos que soporta XML-RPC en el servidor.
Buscamos el siguiente apartado wp.getUsersBlogs para hacerle fuerza bruta haciendo lo siguiente:
En un archivo xml vamos a ingresar esto:
<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
<methodName>wp.getUsersBlogs</methodName>
<params>
<param><value>\{\{your username\}\}</value></param>
<param><value>\{\{your password\}\}</value></param>
</params>
</methodCall>
Como tenemos un usuario llamado vamos a suplantar el "your username por Mario" y la contraseña cualquiera porque no tenemos.
Lo guardamos en un archivo llamado cred.xml y volvemos a usar el comando curl.
El resultado nos dice que es incorrecto, pero como podemos hacer fuerza bruta ya que tenemos disponible el método "wp.getUsersBlogs", usamos wpscan para hacerlo.
Esperamos y tenemos la contraseña.
Vamos al directorio /wp-login.php y entramos con estas credenciales.
Una vez adentro vamos a realizar estos pasos.
1 Vamos a plugins
2 vamos a plugins code editor
3 Cambiamos el tema a theme editor
4 Seleccionamos theme_editor.php
5 Borramos el contenido de theme_editor y lo suplantamos por nuestra RV.php de pestestmokey.
6 Guardamos el cambio en "Update file"
7 Nos ponemos en escucha con netcat
8 Y actualizamos la pagina, esto nos devuelve la conexión al netcat
Una vez adentro somo el usuario www-data, hacemos el tratamiento de la tty. Ahora buscamos la manera de poder tener los máximos privilegios dentro de la maquina.
Buscamos binarios SUID y encontramos uno interesante llamado /env
En gtfobins encontramos la manera de poder explotar este binario, colocando el siguiente comando.
Así que vamos al directorio donde se encuentra /env y lo ejecutamos
SOMOS ROOT.
wpscan --url
--enumerate vp,u
INFORMACION:
Con el comando curl vamos a enviar el archivo exploit.xml, usamos la misma linea solo que le agregamos el parámetro ""