PROVAVELMENTE SEUS WEB SERVICES NÃO ESTÃO PREPARADOS!
Veja o motivo pelo qual você deveria se preocupar com o XML-RPC Blowup
Venho falar sobre o ataque XML-RPC Blowup DDoS, para alguns, o nome é sugestivo, para outros pode ser uma novidade aterrorizante. Imagine um de seus serviços - ou todos eles - saindo do ar de uma hora para outra! É ruim até pensar não é mesmo? Com a técnica que vou apresentar abaixo é possível “derrubar” dentro de alguns segundos sites inteiros dependendo das arquiteturas/engenhos e/ou frameworks utilizados.
1. Efeitos
- Inoperabilidade;
- Vazamento de dados (Alguns bancos de dados ficarão vulneráveis devido ao ataque).
Reportado ainda como CVE-XXXXX o autor Nir Goldshlager publicou através de salesforce.com sua identificação zero day para sistemas que utilizam a interface de comunicação XML-RPC.
This is a Proof of Concept Exploit, Please use responsibly. Nir Goldshlager.
2. Refatoração antes da publicação
Para utilização do script apliquei rafatoração para melhoria do script nos seguintes pontos que veremos a seguir.
- passagem de URL completa por parâmetro;
- passagem da última página por parâmetro (opcional);
- mudança do web agente para mozilla mais recente.
3. Tecnologia e utilização
Baixe o script em meu repositório aqui no github: Downlaod Script.
O script foi escrito em python, totalmente livre e documentado, funciona através de threads, no qual cada requisição envia para o serviço web uma enorme quantidade de informações, fazendo assim a sobrecarga do serviço, podendo afetar todos os serviços do sistema operacional.
4. Erro 503
O servidor Web não consegue no momento lidar com o pedido de HTTP devido a uma sobrecarga temporária ou manutenção do servidor. http://www.checkupdown.com/status/E503_pt.html
5. Prevenção (Parte técnica)
Atenção: Caso não tenha experiência/confiança nos processos a seguir,
não prossiga com as possíveis soluções e procure o administrador
do seu portal/conteúdo online para as demais prevenções, pois
quaisquer alterações incorretas poderão causar problemas irreversíveis.
5.1 Possíveis soluções:
- Bloquear acesso ao xmlrpc.php
- Editar wp-config.php (Para casos de WordPress) Adicionar depois de encontrada “ABSPATH” adicione ao final da linha: add_filter(‘xmlrpc_enabled’, ‘__return_false’);
- Adicionar no arquivo .htaccess (caso possua em seu serviço)
<Files xmlrpc.php\>
Order Deny,Allow
Deny from all
</Files\>
5.2 Auxílio de frameworks
Hospedagens mais maduras no mercado já estão tratando a vulnerabilidade, como por exemplo a hostinger. Procure sempre utilizar hospedagens confiáveis ou se tratando de VPS não esqueça de implementar regras de firewall para evitar DDoS.
6. Gestão de incidente
Você pode utilizar também ferramentas como por exemplo o maltrail para gerir a segurança, controlando os acessos maliciosos com mais eficácia em seu serviço online.
7. Não se preocupe
Sistemas caem a todo momento, caso você tenha curiosidade visite o DownDetector antigo “caiutudo” para conhecer as estatísticas de falhas dos sistemas mais conhecidos e utilizados do mundo.