Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
ats-realip-plugin-acl — Apache Traffic Server 10.2.0 - Alta - Remoto - Privilégio residual - falha de ACL fail-open no PLUGIN realip | Kitploit
Ferramentas/GitHubGitHub/abraxas/ats-realip-plugin-acl
Autenticação e AutorizaçãoAnálise de VulnerabilidadesProxies Web e InterceptaçãoSegurança WebTestes de PenetraçãoConfiguração IncorretaLabs e Prática
GitHubabraxas/ats-realip-plugin-acl

ats-realip-plugin-acl

Apache Traffic Server 10.2.0 - Alta - Remoto - Privilégio residual - falha de ACL fail-open no PLUGIN realip

Ver Repositório
4há 14 diasAinda não revisado

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 →
Compartilhar

Abraxas Labs - ats-realip-plugin-acl

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  ats-realip-plugin-acl

ats-realip-plugin-acl

Classe: Privilégio remanescente Alcance: Remoto

Apache Traffic Server 10.2.0 (b1df7334) - Apache Software Foundation

realip experimental mais o acl.subjects: PLUGIN documentado falha-aberto no remap @src_ip. Se o realip não chamar TSHttpTxnVerifiedAddrSet, _verified_addr permanece AF_UNSPEC. O sujeito PLUGIN nunca é nullptr, então o fallback PEER nunca é executado. ats_is_ip é falso, @src_ip é ignorado, ip_matches permanece verdadeiro. Uma lista de permissões de remap corresponde ao cliente não confiável.

O acl.subjects padrão é PEER. O realip não está no plugin.config padrão. O ip_allow.yaml da sessão nunca lê PLUGIN. O clássico X-Forwarded-For-de-qualquer-um está fechado (trustedAddress obrigatório; o cabeçalho deve ser um único endereço inet_pton).

IDainda sem CVE
ClassePrivilégio remanescente (falha-aberto da ACL de remap)
AlcanceRemoto (HTTP não autenticado de fora de trustedAddress)
CWECWE-863
CVSSAlto: 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
ProdutoApache Traffic Server
Afetado10.2.0 (b1df7334b39a878971c376da849e8da4984918b6) realip experimental + sujeitos PLUGIN
Autenticaçãonenhuma. O cliente não está em trustedAddress.
LicençaGNU Affero GPL v3.0
Laboratórioapenas 127.0.0.1:18770

Fixe a tag pública 10.2.0 e extraia b1df7334. O laboratório é um proxy reverso ats-10.2.0-lab:local compilado a partir do código-fonte em loopback. CONTROL PEER 403. PLUGIN 200. PURGE de sessão ainda 403.

O que um atacante pode fazer

Alcance o ATS com o realip.so experimental carregado e proxy.config.acl.subjects: PLUGIN (ou PLUGIN,PEER). Remapeie @src_ip=10.0.0.0/8 para permitir. Conecte-se de um endereço fora de trustedAddress.

MétodoDestinoPrivilégio
HTTP de 172.x fora de trustedAddress para remap @src_ip=10.0.0.0/8realip ignora TSHttpTxnVerifiedAddrSet (address_setter.cc:29-38); sujeito PLUGIN sempre presente (UrlRewrite.cc:462-473); ignora @src_ip quando !ats_is_ip (:495-514)Integridade (comprovada em laboratório): a ACL de remap corresponde. Origem 200 ATS-REALIP-PLUGIN-ACL-WITNESS. CONTROL acl.subjects=PEER é 403.
O mesmo mais Client-IP: 10.1.2.3 do par não confiávelsimple.cc verify falso; cabeçalho ignoradoIntegridade (comprovada em laboratório): ainda falha-aberto 200. Não é uma falsificação do endereço verificado.
Mesmo cliente PURGEsessão ip_allow.yaml PEERFechado (comprovado em laboratório): 403. PLUGIN nunca reescreve a ACL de conexão.
Host sem @src_ipmapa padrãoFechado (comprovado em laboratório): corpo DENIED, sem testemunha.

Comprovado em laboratório vs inferido: PLUGIN 200, PEER 403, PURGE 403, mapa negado, falha-aberto de cabeçalho não confiável são de laboratório. O que a origem então concede é inferido a partir do remap que deveria ser apenas 10/8.

Requer: realip.so experimental mais acl.subjects=PLUGIN (ou PLUGIN,PEER). Remapeia a lista de permissões @src_ip. Não é padrão.

Superfície adjacente que permanece fechada

SuperfícieLab
CONTROL acl.subjects=PEER403 no mesmo mapa @src_ip
Sessão ip_allow.yamlPURGE do atacante 403
Mapa sem @src_ipDENIED
trustedAddress vazionunca verifica; ainda fail-open apenas quando subjects é PLUGIN
XFF clássico de qualquer origemfechado. O cabeçalho deve ser um único endereço inet_pton de um peer confiável
SNI ip_allowapenas PEER/PROXY; o handshake ocorre antes dos cabeçalhos HTTP
Subjects padrão PEERo resquício não se aplica

Não é o resquício clássico de "confiar em X-Forwarded-For de qualquer origem". O resquício é o caminho documentado de ACL de remapeamento PLUGIN.

Lab

python3 ats-realip-plugin-acl-Abraxas-Labs.py

ou

cd lab
./run.sh

Loopback 127.0.0.1:18770 (origem 18771). Projeto Compose ats-realip-plugin-acl. Imagem ats-10.2.0-lab:local. Sidecar do atacante 172.x. Testemunha ATS-REALIP-PLUGIN-ACL-WITNESS. Última linha:

SUCCESS ats-realip-plugin-acl control-http=403 poc-http=200 purge-http=403 denied-http=200 spoof-http=200 trusted-http=200 ATS-REALIP-PLUGIN-ACL-WITNESS

A correção

Trate PLUGIN como indisponível quando get_verified_client_addr for AF_UNSPEC (ou faça o getter retornar nullptr, correspondendo a TSHttpTxnVerifiedAddrGet). Então o fallback para PEER é executado. Não ignore @src_ip quando o ponteiro do sujeito for não nulo mas não for um IP. Falhe de forma segura (fail closed) em uma lista de permissões.

Até então, deixe acl.subjects em PEER se você carrega o realip apenas para logging. Não defina PLUGIN a menos que todo cliente que possa atingir o remap já seja um proxy confiável.

Referências

  • github.com/apache/trafficserver tag 10.2.0 (b1df7334b39a878971c376da849e8da4984918b6)
  • plugins/experimental/realip/address_setter.cc
  • src/proxy/http/remap/UrlRewrite.cc PerformACLFiltering
  • include/proxy/ProxyTransaction.h get_verified_client_addr
  • guia de administração do realip
  • CWE-863
Baixar ferramenta