CVE-2026-55735 in guardianinformazioni

Riassunto

di VulDB • 02/08/2026

Verifica errata della firma crittografica in ueberauth guardian consente a un attaccante non autenticato di revocare la sessione di una vittima mediante un token falsificato.

La funzione `Guardian.revoke/3` nel file `lib/guardian.ex` decodifica il token fornito utilizzando `peek/1`, che non esegue alcuna verifica della firma (si limita a decodificare in base64 l'intestazione e il payload del JWT). I claim risultanti, non verificati, vengono inoltrati direttamente alla callback di revoca del modulo dei token configurato e alla callback `on_revoke` dell'implementazione, che costituiscono un sink mutatore dello stato. Le operazioni correlate `refresh/2` ed `exchange/4` chiamano entrambe prima `decode_and_verify`, verificando così la firma prima di agire sui claim; `revoke/3` è l'unica via mutatrice dello stato che agisce sui claim senza verificarne la firma.

Un attaccante che conosca o indovini i valori dei claim identificativi della vittima (jti, sub) può falsificare un JWT contenente tali claim, firmarlo con una chiave arbitraria e inviarlo a qualsiasi endpoint che instrada un token fornito dall'utente verso `Guardian.revoke/3` (il pattern standard di logout / revoca della sessione). Quando il modulo dei token modifica lo stato basato sui claim (ad esempio eliminazione dalla whitelist o inserimento nella blacklist, come in uno store stile GuardianDb), la sessione legittima della vittima viene rimossa. Si tratta di un denial of service per la revoca non autenticata delle sessioni; l'attaccante non ha mai bisogno del segreto di firma.

Questo problema interessa guardian: dalla versione 1.0.0 alla 2.4.1 (esclusa).

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Responsabile

EEF

Prenotare

17/06/2026

Divulgazione

01/08/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!