Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
ats-realip-plugin-acl — Apache Traffic Server 10.2.0 - Alta - Remota - Privilegios residuales - fallo abierto de ACL en el PLUGIN realip | Kitploit
Herramientas/GitHubGitHub/abraxas/ats-realip-plugin-acl
Autenticación y AutorizaciónAnálisis de VulnerabilidadesProxies Web e InterceptaciónSeguridad WebPruebas de PenetraciónMala ConfiguraciónLabs y Práctica
GitHubabraxas/ats-realip-plugin-acl

ats-realip-plugin-acl

Apache Traffic Server 10.2.0 - Alta - Remota - Privilegios residuales - fallo abierto de ACL en el PLUGIN realip

Ver Repositorio
4hace 14 díasAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Abraxas Labs - ats-realip-plugin-acl

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

ats-realip-plugin-acl

Clase: Privilegio residual Alcance: Remoto

Apache Traffic Server 10.2.0 (b1df7334) - Apache Software Foundation

realip experimental más el acl.subjects: PLUGIN documentado abre por defecto (fail-open) el remapeo de @src_ip. Si realip no llama a TSHttpTxnVerifiedAddrSet, _verified_addr permanece en AF_UNSPEC. El sujeto PLUGIN nunca es nullptr, por lo que el respaldo PEER nunca se ejecuta. ats_is_ip es falso, se omite @src_ip, ip_matches permanece verdadero. Una lista de permitidos de remapeo coincide con el cliente no confiable.

El valor predeterminado de acl.subjects es PEER. realip no está en el plugin.config estándar. El ip_allow.yaml de sesión nunca lee PLUGIN. El clásico X-Forwarded-For-de-cualquiera está cerrado (se requiere trustedAddress; el encabezado debe ser una única dirección inet_pton).

IDaún sin CVE
ClasePrivilegio residual (fail-open de ACL de remapeo)
AlcanceRemoto (HTTP no autenticado desde fuera 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
ProductoApache Traffic Server
Afectado10.2.0 (b1df7334b39a878971c376da849e8da4984918b6) realip experimental + sujetos PLUGIN
Autenticaciónninguna. El cliente no está en trustedAddress.
LicenciaGNU Affero GPL v3.0
Laboratoriosolo 127.0.0.1:18770

Fijé la etiqueta pública 10.2.0 y el commit b1df7334. El laboratorio es un proxy inverso ats-10.2.0-lab:local compilado desde el código fuente en loopback. CONTROL PEER 403. PLUGIN 200. La sesión PURGE sigue siendo 403.

Qué puede hacer un atacante

Alcanzar ATS con el realip.so experimental cargado y proxy.config.acl.subjects: PLUGIN (o PLUGIN,PEER). Remapear la lista de permitidos @src_ip=10.0.0.0/8. Conectarse desde una dirección fuera de trustedAddress.

MétodoDestinoPrivilegio
HTTP desde 172.x fuera de trustedAddress hacia el remapeo @src_ip=10.0.0.0/8realip omite TSHttpTxnVerifiedAddrSet (address_setter.cc:29-38); el sujeto PLUGIN siempre está presente (UrlRewrite.cc:462-473); omite @src_ip cuando !ats_is_ip (:495-514)Integridad (probado en laboratorio): la ACL de remapeo coincide. Origen 200 ATS-REALIP-PLUGIN-ACL-WITNESS. CONTROL acl.subjects=PEER es 403.
Lo mismo más Client-IP: 10.1.2.3 desde el par no confiablesimple.cc verify falso; encabezado ignoradoIntegridad (probado en laboratorio): sigue siendo fail-open 200. No es una suplantación de la dirección verificada.
Mismo cliente PURGEip_allow.yaml de sesión PEERCerrado (probado en laboratorio): 403. PLUGIN nunca reescribe la ACL de conexión.
Host sin @src_ipmapa predeterminadoCerrado (probado en laboratorio): cuerpo DENIED, sin testigo.

Probado en laboratorio vs inferido: PLUGIN 200, PEER 403, PURGE 403, mapa denegado, fail-open de encabezado no confiable son de laboratorio. Lo que el origen concede después se infiere del remapeo que se suponía era solo 10/8.

Requiere: realip.so experimental más acl.subjects=PLUGIN (o PLUGIN,PEER). Reasigna la lista de permitidos @src_ip. No es predeterminado.

Superficie adyacente que permanece cerrada

SuperficieLaboratorio
CONTROL acl.subjects=PEER403 en el mismo mapa @src_ip
Sesión ip_allow.yamlPURGE del atacante 403
Mapa sin @src_ipDENIED
trustedAddress vacíonunca verifica; aún así fail-open solo cuando subjects es PLUGIN
XFF clásico desde cualquieracerrado. El encabezado debe ser una única dirección inet_pton de un par confiable
SNI ip_allowsolo PEER/PROXY; el handshake es antes de los encabezados HTTP
Subjects predeterminados PEERel remanente no aplica

No es el clásico remanente de "confiar en X-Forwarded-For desde cualquiera". El remanente es la ruta ACL de remapeo PLUGIN documentada.

Laboratorio

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

o

cd lab
./run.sh

Loopback 127.0.0.1:18770 (origen 18771). Proyecto de Compose ats-realip-plugin-acl. Imagen ats-10.2.0-lab:local. Sidecar atacante 172.x. Testigo ATS-REALIP-PLUGIN-ACL-WITNESS. Última línea:

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

La solución

Trata PLUGIN como no disponible cuando get_verified_client_addr es AF_UNSPEC (o haz que el getter devuelva nullptr, coincidiendo con TSHttpTxnVerifiedAddrGet). Entonces se ejecuta el fallback a PEER. No omitas @src_ip cuando el puntero del sujeto no es nulo pero no es una IP. Falla de forma cerrada ante una lista de permitidos.

Hasta entonces, deja acl.subjects en PEER si cargas realip solo para el registro. No establezcas PLUGIN a menos que cada cliente que pueda alcanzar el remap ya sea un proxy de confianza.

Referencias

  • github.com/apache/trafficserver etiqueta 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
  • guía de administración de realip
  • CWE-863
Descargar herramienta