Exploit baseado em Python para CVE-2014-6287 no HTTP File Server 2.3.x, entregando um reverse shell via payload PowerShell codificado em Base64 para testes de penetração autorizados.
Este repositório contém uma ferramenta de exploração baseada em Python projetada para tirar proveito da vulnerabilidade CVE-2014-6287 no HTTP File Server (HFS) versões 2.3.x. Esta vulnerabilidade permite que um atacante execute comandos arbitrários no servidor, potencialmente levando a acesso e controle não autorizados.
⚠️ Aviso Legal:
Esta ferramenta é destinada exclusivamente para fins educacionais e de teste de penetração autorizados. O uso não autorizado desta ferramenta contra sistemas que você não possui ou não tem permissão explícita para testar é ilegal e antiético. O autor e os contribuidores não são responsáveis por qualquer uso indevido ou dano causado por esta ferramenta.
nc) instalado na máquina do atacante.Clone o Repositório:
git clone https://github.com/francescobrina/hfs-cve-2014-6287-exploit.git
cd hfs-cve-2014-6287-exploit
Instale as Dependências:
Este script depende das bibliotecas padrão do Python. Certifique-se de ter o Python 3.6 ou superior instalado.
python3 --version
Se você não tiver o Python instalado, baixe-o do site oficial ou use seu gerenciador de pacotes.
Configure o Script:
Abra o arquivo exploit.py em um editor de texto e configure as seguintes variáveis:
lhost = "YOUR_LOCAL_IP" # Endereço IP do atacante
lport = 1111 # Porta para escutar
rhost = "TARGET_IP" # Endereço IP do servidor HFS alvo
rport = 80 # Porta do servidor HFS alvo (padrão é 80)
Inicie o Listener Netcat:
Na máquina do atacante, inicie um listener Netcat para receber a shell reversa:
nc -nlvp 1111
Execute o Script de Exploração:
Execute o script de exploração Python:
python3 exploit.py
O script codificará o comando PowerShell em Base64, enviará uma solicitação HTTP GET para o servidor HFS alvo e aguardará uma conexão de shell reversa.
Estabeleça a Conexão:
Se a exploração for bem-sucedida, você deverá receber uma shell reversa no seu listener Netcat.
Criação do Comando PowerShell:
O script constrói um comando PowerShell que inicia uma conexão TCP de volta para a máquina do atacante (lhost:lport). Uma vez conectado, cria um fluxo para enviar e receber dados, estabelecendo efetivamente uma shell reversa.
Codificação do Comando:
O comando PowerShell é codificado em Base64 usando codificação UTF-16LE para ofuscá-lo e contornar possíveis filtros de segurança.
Elaboração do Payload:
O comando codificado é incorporado a um payload que é enviado como parte de uma solicitação HTTP GET para o endpoint vulnerável do servidor HFS alvo.
Execução do Payload:
Quando o servidor HFS processa a solicitação, ele decodifica e executa o comando PowerShell, estabelecendo uma shell reversa de volta para o atacante.
Certifique-se de que as seguintes configurações estejam corretamente definidas antes de executar a exploração:
lhost: Endereço IP da sua máquina onde o Netcat está escutando.lport: Número da porta onde o Netcat está escutando.rhost: Endereço IP da máquina alvo executando o servidor HFS vulnerável.rport: Número da porta do servidor HFS alvo (padrão é 80).Exemplo de configuração:
lhost = "192.168.1.100"
lport = 1111
rhost = "192.168.1.105"
rport = 80
Sem Conexão de Shell Reversa:
lhost e rhost estão configurados corretamente e são acessíveis.Erros no Script:
Problemas com Netcat:
-nlvp) para iniciar o listener.Contribuições são bem-vindas! Se você encontrar algum problema ou tiver sugestões de melhorias, por favor abra uma issue ou envie um pull request.
Faça um Fork do Repositório
Crie uma Branch de Funcionalidade
git checkout -b feature/SuaFuncionalidade
Faça Commit das Suas Alterações
git commit -m "Adicionar Sua Funcionalidade"
Faça Push para a Branch
git push origin feature/SuaFuncionalidade
Abra um Pull Request
Desenvolvido por Francesco Brina.
Email: [email protected]
Este projeto está licenciado sob a Licença MIT.
Aviso Legal:
Use esta ferramenta com responsabilidade e apenas em sistemas onde você tenha permissão explícita para testar. O autor não se responsabiliza por qualquer uso indevido ou dano causado por esta ferramenta.
Sinta-se à vontade para me avisar se quiser mais ajustes!