Informazioni sul CVE-2023-29020

Cross site request forgery token fixation in fastify-passport

CWE ID: CWE-384

Base Score (CVSS): N/A

CVE: CVE-2023-29020

Descrizione: @fastify/passport is a port of passport authentication library for the Fastify ecosystem. The CSRF (Cross-Site Request Forger) protection enforced by the `@fastify/csrf-protection` library, when combined with `@fastify/passport` in affected versions, can be bypassed by network and same-site attackers. `fastify/csrf-protection` implements the synchronizer token pattern (using plugins `@fastify/session` and `@fastify/secure-session`) by storing a random value used for CSRF token generation in the `_csrf` attribute of a user’s session. The `@fastify/passport` library does not clear the session object upon authentication, preserving the `_csrf` attribute between pre-login and authenticated sessions. Consequently, CSRF tokens generated before authentication are still valid. Network and same-site attackers can thus obtain a CSRF token for their pre-session, fixate that pre-session in the victim’s browser via cookie tossing, and then perform a CSRF attack after the victim authenticates. As a solution, newer versions of `@fastify/passport` include the configuration options: `clearSessionOnLogin (default: true)` and `clearSessionIgnoreFields (default: [‘passport’, ‘session’])` to clear all the session attributes by default, preserving those explicitly defined in `clearSessionIgnoreFields`.

Vettore di attacco CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N

Punteggio CVSS

Il CVSS è un sistema di valutazione che misura la gravità di una vulnerabilità informatica considerando fattori come l’impatto potenziale, la probabilità di attacco e la facilità di esecuzione.

Punteggio Base (calcolato da AziendaSicura): 6.4 (Medium)

Riassunto: Accesso: Network, Privilegi: None, Interazione utente: Required, Confidenzialità: None, Integrità: High, Disponibilità: None.

Dettaglio del Vettore

Metrica Valore Significato Descrizione
Attack Vector (AV) N Network L’attacco può essere eseguito da remoto attraverso la rete.
Attack Complexity (AC) L Low L’attacco non richiede condizioni particolari.
Privileges Required (PR) N None Non sono richiesti privilegi.
User Interaction (UI) R Required È richiesta l’interazione di un utente.
Scope (S) U Unchanged Il raggio d’azione non cambia.
Confidentiality Impact (C) N None Nessun impatto sulla riservatezza.
Integrity Impact (I) H High Grave impatto sull’integrità.
Availability Impact (A) N None Nessun impatto sulla disponibilità.

Riferimenti esterni

Prodotti interessati

  • fastify – fastify-passport

Relazioni con altri prodotti

Produttore:fastify
Prodotto: fastify-passport
Anno: 2023
CWE: CWE-384
CVSS: 0.0