Ambiente di Laboratorio SAMLStorm (CVE-2025-29775)

Questo è un ambiente di laboratorio per dimostrare la vulnerabilità SAMLStorm (CVE-2025-29775) che colpisce la libreria xml-crypto e le implementazioni SAML in Node.js. (Nota: non si tratta di un vero sfruttamento della vulnerabilità, ma di una ricostruzione per dimostrare come potrebbe funzionare.)
Componenti
- Service Provider: un provider di servizi SAML vulnerabile che utilizza @node-saml/node-saml
- Identity Provider: un semplice identity provider SAML simulato
- Exploit Tool: un'interfaccia web per dimostrare la vulnerabilità
Configurazione
- Assicurati di avere Node.js installato
- Esegui lo script di configurazione:
Questo script:
- Genererà i certificati necessari
- Installerà le dipendenze
- Avvierà tutti e tre i componenti in terminali separati
Utilizzo
- Vai al Service Provider: http://localhost:3000
- Fai clic su "Login with SAML"
- Inserisci le credenziali presso l'Identity Provider
- Intercetta la risposta SAML utilizzando gli strumenti di sviluppo del browser o un proxy
- Usa l'Exploit Tool all'indirizzo http://localhost:8000 per modificare la risposta
- Invia la risposta modificata per dimostrare la vulnerabilità
Dettagli della Vulnerabilità
La vulnerabilità SAMLStorm (CVE-2025-29775) colpisce la libreria xml-crypto, utilizzata da molte implementazioni SAML nell'ecosistema Node.js. La vulnerabilità consente agli attaccanti di bypassare la verifica della firma inserendo commenti all'interno dell'elemento DigestValue di una risposta SAML.
Per maggiori informazioni: