Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-54761-poc — Prova di concetto che dimostra un bypass di autorizzazione nel provider Kubernetes Gateway di Traefik (CVE-2026-54761) tramite una vulnerabilità crossProviderNamespaces, esponendo servizi interni come api@internal. | Kitploit
Strumenti/GitHubGitHub/saku0512/cve-2026-54761-poc
Sicurezza dei ContenitoriAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza CloudApprendimento e Formazione
GitHubsaku0512/cve-2026-54761-poc

CVE-2026-54761-poc

Prova di concetto che dimostra un bypass di autorizzazione nel provider Kubernetes Gateway di Traefik (CVE-2026-54761) tramite una vulnerabilità crossProviderNamespaces, esponendo servizi interni come api@internal.

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Vedi Repository
32 mesi faNon ancora revisionato

CVE-2026-54761: Traefik Kubernetes Gateway crossProviderNamespaces Bypass PoC

Versione in inglese

Panoramica

Questo repository è un Proof of Concept (PoC) per riprodurre in ambiente locale la vulnerabilità ad alta gravità CVE-2026-54761 presente nel provider Kubernetes Gateway di Traefik.

Questa vulnerabilità interessa la lista di autorizzazione di crossProviderNamespaces. Nelle regole HTTPRoute che dichiarano riferimenti multipli a backend pesati, Traefik verifica la lista di autorizzazione rispetto a backendRef.namespace del riferimento di destinazione, non rispetto al namespace della route stessa. Di conseguenza, anche un HTTPRoute in un namespace non autorizzato può esporre servizi interni di Traefik come api@internal, se il riferimento al backend punta a un namespace autorizzato ed esiste il corrispondente ReferenceGrant dell'API Gateway.

Segnalato da: saku0512 (https://github.com/Saku0512), vvvvvvvvvvel (https://github.com/vvvvvvvvvvel)


Dichiarazione di non responsabilità

Questo progetto ha esclusivamente scopi educativi e per test di sicurezza autorizzati.

Non eseguire questo PoC su sistemi che non possiedi o gestisci. Questo PoC è progettato per creare un cluster kind locale usa e getta e dimostrare il problema in un ambiente isolato.


Dettagli della vulnerabilità

  • CVE ID: CVE-2026-54761
  • Prodotto: Traefik
  • Componente: Kubernetes Gateway provider
  • Tipo: Bypass di autorizzazione / Esposizione di servizi interni
  • Impatto: I servizi interni di Traefik come api@internal potrebbero essere esposti tramite il dataplane normale.
  • Versioni interessate: Traefik precedenti alle versioni corrette indicate di seguito.
  • Versioni corrette: v3.6.21 e v3.7.5

Causa principale

L'opzione crossProviderNamespaces serve a limitare i namespace delle route dell'API Gateway che possono dichiarare riferimenti a backend TraefikService contenenti riferimenti ai servizi @internal.

Nel percorso di elaborazione vulnerabile dei backend pesati, Traefik controlla la lista di autorizzazione per backendRef.namespace. Tuttavia, poiché il confine di sicurezza è il namespace dell'HTTPRoute che dichiara il riferimento, questo controllo è errato.

Comportamento previsto:

root@kitploit:~
providers:
  kubernetesGateway:
    crossProviderNamespaces:
      - trusted

Solo le route il cui namespace è trusted dovrebbero poter dichiarare riferimenti cross-provider a backend TraefikService.

Comportamento vulnerabile:

root@kitploit:~
backendRefs:
  - group: traefik.io
    kind: TraefikService
    name: api@internal
    namespace: trusted

Se una route ha più riferimenti a backend e backendRef.namespace è impostato sul namespace trusted autorizzato, un HTTPRoute nel namespace attacker potrebbe essere accettato.


Proof of Concept

Questo PoC crea un cluster kind locale usa e getta con la seguente configurazione:

  • Traefik v3.7.1
  • Gateway API CRDs
  • providers.kubernetesGateway.crossProviderNamespaces=trusted
  • ReferenceGrant dell'API Gateway dal namespace trusted
  • Route di controllo positivo che dovrebbe essere rifiutata
  • Route mista con backend pesati che dimostra il bypass

Prerequisiti

  • Docker
  • kind
  • kubectl
  • curl

Esecuzione

root@kitploit:~
cd external-repro-kind
./run-kind-repro.sh

Lo script elimina automaticamente il cluster al termine.

Per mantenere il cluster per indagini manuali:

root@kitploit:~
KEEP_CLUSTER=1 ./run-kind-repro.sh

Output previsto

La route di controllo utilizza un singolo riferimento backend api@internal proibito dal namespace attacker. In questo caso, l'API non dovrebbe essere esposta.

root@kitploit:~
control status: 404

La route di exploit utilizza due riferimenti backend e fa sì che Traefik costruisca un servizio pesato. Nelle versioni vulnerabili, una richiesta a /api/http/services restituisce il JSON dell'API di Traefik.

root@kitploit:~
exploit returned Traefik API JSON
api@internal status: enabled
weighted members:
api@internal              1000000
attacker-whoami-http-80  1

È importante notare che entrambe le route sono create dallo stesso namespace attacker non fidato. La route di controllo con un singolo backend viene rifiutata, ma la route mista con backend pesati viene risolta con successo, esponendo api@internal.


File

  • external-repro-kind/kind-config.yaml - Configurazione del cluster kind locale che espone Traefik su 127.0.0.1:18080
  • external-repro-kind/traefik-v371.yaml - Deployment vulnerabile di Traefik e GatewayClass
  • external-repro-kind/gateway-exploit.yaml - Namespace, Gateway, ReferenceGrant, route di controllo e route di bypass
  • external-repro-kind/run-kind-repro.sh - Script di riproduzione end-to-end locale

Mitigazione

Aggiorna Traefik alla versione corretta.

  • Per la serie v3.6, v3.6.21 o successiva
  • Per la serie v3.7, v3.7.5 o successiva

Gli amministratori dovrebbero anche verificare le risorse ReferenceGrant esistenti dell'API Gateway. Non consentire l'accesso ai riferimenti cross-provider TraefikService da namespace non fidati, a meno che non si tratti di una delega esplicitamente intenzionale.


Riferimenti

  • Traefik Security Advisory GHSA-3g6v-2r68-prfc
  • Traefik v3.6.21 release
  • Traefik v3.7.5 release
Scarica lo strumento