Ministero dello Sviluppo Economico

CERT Nazionale Italia - Computer Emergency Response Team

Vulnerabilità

Vulnerabilità del protocollo SAML in tecnologie Single Sign-On

SAML   mercoledì, 28 febbraio 2018

SAML (Security Assertion Markup Language) è uno standard per lo scambio di dati di autenticazione e autorizzazione, detti asserzioni, tra domini di sicurezza distinti, costituiti di norma da un Identity Provider (IdP), ossia l’entità che fornisce informazioni di identità, e un Service Provider (SP), ossia l’entità che fornisce i servizi. Il formato delle asserzioni SAML è basato su XML.

Come segnalato al CERT Nazionale dalla società Yoroi, sono state recentemente rilevate diverse vulnerabilità in implementazioni del protocollo SAML presenti all’interno di molteplici soluzioni Single Sign-On (SSO) utilizzate in ambiti aziendali per la gestione degli accessi a servizi di terze parti.

Le vulnerabilità solo legate ad un’errata gestione dei commenti XML all’interno degli identificativi utente SAML utilizzati da IdP e SP. Se sfruttate con successo, queste vulnerabilità possono consentire ad attaccanti di rete in possesso di account validi di aggirare i controlli di autenticazione ed accedere abusivamente a servizi Web utilizzati dall’organizzazione bersaglio, impersonandone le utenze.

Gli scenari di applicabilità di attacchi basati sullo sfruttamento di queste vulnerabilità sono variabili, tuttavia possono avere maggior rilevanza qualora le componenti  SP accettino identificativi utente arbitrari oppure nel caso in cui l’IdP permetta registrazioni aperte.

Le tecnologie SSO basate su SAML al momento coinvolte dalla problematica risultano essere:

Si raccomanda alle aziende che utilizzano una delle tecnologie affette dalle vulnerabilità elencate di installare gli eventuali aggiornamenti di sicurezza messi a disposizione dai relativi produttori non appena possibile.

Per informazioni più dettagliate sulle vulnerabilità, sui prodotti affetti e sugli aggiornamenti disponibili si suggerisce di consultare le fonti seguenti (in Inglese):

Aggiornamento (2 marzo 2018)

La libreria SimpleSAMLphp è stata aggiornata alla versione 1.15.3 per risolvere la problematica descritta.