
POC per CVE-2026-32604 e CVE-2026-32613 che consentono RCE post-autenticazione e furto di credenziali in Spinnaker
Dimostrazioni proof-of-concept per CVE-2026-32604 e CVE-2026-32613, due vulnerabilità con gravità 10.0 in Spinnaker che consentono l'esecuzione di codice e il furto delle credenziali cloud di produzione.
L'endpoint di fetch degli artefatti di Clouddriver passa il nome del branch fornito dall'utente senza sanitizzazione in un comando sh -c quando si utilizza l'autenticazione git basata su HTTP. Qualsiasi utente autenticato può iniettare comandi shell tramite PUT /artifacts/fetch, ottenendo l'esecuzione arbitraria di codice sull'host Clouddriver — il servizio che detiene tutte le credenziali dei provider cloud. Non sono richiesti ruoli o permessi speciali oltre all'essere un utente autenticato.
Echo valuta le dichiarazioni di expectedArtifacts utilizzando Spring Expression Language (SpEL) con un StandardEvaluationContext senza restrizioni quando viene attivato un trigger di pipeline. Un attaccante con accesso in scrittura a qualsiasi applicazione può salvare una pipeline contenente un'espressione SpEL dannosa, quindi attivare un trigger webhook per ottenere l'esecuzione arbitraria di codice sul servizio Echo. Ogni altro punto di valutazione SpEL in Spinnaker utilizza un contesto indurito; questo è l'unico che non lo fa.
setup/ — Configurazione automatizzata dell'ambiente. Clona l'albero sorgente di Spinnaker, compila tutti i servizi dal sorgente e avvia un cluster completamente configurato (Gate, Orca, Clouddriver, Front50, Fiat, Echo) con infrastruttura di supporto (Redis, MySQL, Elasticsearch, Minio, OpenLDAP). Include dati seed con applicazioni di test, utenti e pipeline.
pocs/ — Script di exploit. Ogni POC si connette a Gate, imposta l'attacco e porta l'utente in una shell interattiva inversa sul container del servizio target.
clouddriver_rce_via_git_clone.py — Iniezione di shell tramite git cloneecho_rce_via_spel.py — RCE SpEL tramite expectedArtifactsPrerequisiti: Docker, Git, Python 3.10+ e uv.
cd setup
./setup.sh
La prima esecuzione clona il sorgente di Spinnaker e compila tutti i servizi (~20-30 minuti a seconda della macchina). Le esecuzioni successive riutilizzano la build in cache e si avviano in pochi minuti.
Al termine della configurazione, vengono stampati tutti i dettagli dell'ambiente (URL dei servizi, credenziali e comandi POC di esempio). Seguire queste istruzioni per eseguire i POC.
Per la rimozione:
cd setup
./teardown.sh