Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-72815-poc — PoC local em Go que demonstra o CVE-2026-72815, uma falha de spoofing de IP via X-Forwarded-For no middleware RealIP do go-chi/chi que contorna ACLs baseadas em IP, com uma comparação corrigida na v5.3.0. | Kitploit
Ferramentas/GitHubGitHub/saku0512/cve-2026-72815-poc
Ferramentas DefensivasAnálise de VulnerabilidadesAnálise de CódigoExploraçãoSegurança WebAutenticaçãoPapers e PesquisaAprendizado e Educação

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
GitHub
saku0512/cve-2026-72815-poc

CVE-2026-72815-poc

PoC local em Go que demonstra o CVE-2026-72815, uma falha de spoofing de IP via X-Forwarded-For no middleware RealIP do go-chi/chi que contorna ACLs baseadas em IP, com uma comparação corrigida na v5.3.0.

Ver Repositório
há 21h 57mAinda não revisado
Compartilhar

CVE-2026-72815: PoC de IP Spoofing no middleware.RealIP do go-chi/chi

Versão em inglês

Visão geral

Este repositório é uma Prova de Conceito (PoC) local da vulnerabilidade de IP spoofing CVE-2026-72815 (GHSA-3fxj-6jh8-hvhx) presente no middleware.RealIP do go-chi/chi.

O middleware RealIP vulnerável confia incondicionalmente no primeiro valor (mais à esquerda) do X-Forwarded-For e sobrescreve o http.Request.RemoteAddr com esse valor. Em configurações onde o cliente pode especificar o X-Forwarded-For, um atacante pode falsificar um endereço IP de origem arbitrário, potencialmente contornando ou contaminando ACLs baseadas em IP, rate limits, logs de auditoria, etc.

Esta PoC utiliza apenas e não realiza comunicação com hosts externos.

httptest

Aviso legal

Use apenas para fins educacionais e para testes de segurança autorizados. Não use sem autorização contra ambientes de terceiros.

Detalhes da vulnerabilidade

  • CVE ID: CVE-2026-72815
  • GitHub Advisory: GHSA-3fxj-6jh8-hvhx
  • Produto: github.com/go-chi/chi/v5
  • API vulnerável: middleware.RealIP
  • Tipo: Authentication Bypass by Spoofing (CWE-290)
  • CVSS v4.0: 6.9 (Moderate)
  • Versões afetadas no registro CVE: >= 5.2.1, < 5.3.0
  • Versão corrigida: 5.3.0

Causa raiz

O middleware.RealIP, quando o X-Forwarded-For está presente, obtém o primeiro valor separado por vírgula e o define em RemoteAddr.

Conceitualmente, o processamento é o seguinte.

root@kitploit:~
if xff := r.Header.Get("X-Forwarded-For"); xff != "" {
    ip, _, _ = strings.Cut(xff, ",")
}

r.RemoteAddr = ip

Normalmente, um reverse proxy adiciona o IP de origem real ao final do X-Forwarded-For existente. Portanto, se um atacante puder especificar previamente um valor como o seguinte, o valor mais à esquerda não é confiável.

root@kitploit:~
X-Forwarded-For: 127.0.0.1, 203.0.113.50

O RealIP vulnerável adota 127.0.0.1 como o IP do cliente.

PoC

Requisitos

  • Go 1.23 ou superior (o caso vulnerável isolado do v5.2.1 requer Go 1.20 ou superior)
  • Conexão de rede necessária para o download inicial do módulo

1. Reprodução da versão vulnerável v5.2.1

root@kitploit:~
cd vulnerable
GOWORK=off go run .

A PoC assume que o cliente real é 203.0.113.50 e que o IP permitido como administrador é 127.0.0.1.

Uma requisição normal resulta em HTTP 403, mas uma requisição com o seguinte cabeçalho faz com que o RealIP reescreva o RemoteAddr para 127.0.0.1, resultando em HTTP 200.

root@kitploit:~
X-Forwarded-For: 127.0.0.1, 203.0.113.50

Saída principal esperada:

root@kitploit:~
=== CVE-2026-72815 vulnerable case ===
[*] go-chi/chi version: v5.2.1
[*] normal request status: 403
[*] spoofed request status: 200
[!] VULNERABLE: attacker-controlled X-Forwarded-For bypassed the IP ACL.

2. Ao usar a API segura do v5.3.0

root@kitploit:~
cd fixed
GOWORK=off go run .

No v5.3.0, foram adicionados ClientIPFromHeader, ClientIPFromXFF, ClientIPFromXFFTrustedProxies e ClientIPFromRemoteAddr como alternativas ao RealIP.

O caso corrigido desta PoC usa ClientIPFromXFF() assumindo uma configuração em que "há um proxy confiável imediatamente à frente do servidor, e esse proxy adiciona o IP real do cliente ao final do XFF". Mesmo enviando o mesmo cabeçalho falsificado, o valor mais à direita 203.0.113.50 é adotado, portanto a ACL não pode ser contornada.

Saída principal esperada:

root@kitploit:~
=== CVE-2026-72815 safe replacement case ===
[*] go-chi/chi version: v5.3.0
[*] normal request status: 403
[*] spoofed request status: 403
[+] SAFE: the spoofed leftmost X-Forwarded-For value did not bypass the IP ACL.

3. Verificar ambos de uma vez

root@kitploit:~
bash scripts/run-version-matrix.sh

Observações sobre o v5.3.0

Mesmo no v5.3.0, o comportamento do antigo middleware.RealIP em si é mantido por compatibilidade retroativa. Uma nota de deprecated foi adicionada ao RealIP, e a migração para as APIs seguras ClientIPFrom* é recomendada.

Portanto, não basta simplesmente atualizar a dependência para o v5.3.0 e continuar usando o middleware.RealIP; é necessário migrar para o middleware ClientIPFrom* adequado à configuração real de rede / reverse proxy.

Escopo da PoC

Este repositório verifica apenas o seguinte.

  1. Que o middleware.RealIP reflete o valor XFF mais à esquerda controlado pelo atacante no RemoteAddr
  2. Que, como resultado, é possível contornar uma ACL simples baseada em IP
  3. Que, ao usar o ClientIPFromXFF() do v5.3.0 com uma configuração de proxy adequada, a mesma entrada pode ser rejeitada

Não realiza varredura em redes reais, requisições a serviços de terceiros, DoS, persistência, etc.

Mitigação

  • Atualizar o go-chi/chi para v5.3.0 ou superior
  • Migrar do middleware.RealIP para o middleware ClientIPFrom* adequado à infraestrutura real
  • No lado do reverse proxy, também sobrescrever ou remover adequadamente os cabeçalhos de forwarding enviados pelo cliente
  • Não basear autenticação ou autorização críticas apenas no endereço IP

Referências

  • CVE-2026-72815
  • GHSA-3fxj-6jh8-hvhx
  • go-chi/chi PR #967: middleware.ClientIP
  • go-chi/chi v5.3.0
Baixar ferramenta