Unknown
CVE-2023-29020
CVE ID
AttackerKB requires a CVE ID in order to pull vulnerability data and references from the CVE list and the National Vulnerability Database. If available, please supply below:
Add References:
CVE-2023-29020
MITRE ATT&CK
Collection
Command and Control
Credential Access
Defense Evasion
Discovery
Execution
Exfiltration
Impact
Initial Access
Lateral Movement
Persistence
Privilege Escalation
Topic Tags
Description
@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
.
Add Assessment
No one has assessed this topic. Be the first to add your voice to the community.
CVSS V3 Severity and Metrics
General Information
References
Miscellaneous
Additional Info
Technical Analysis
Report as Emergent Threat Response
Report as Zero-day Exploit
Report as Exploited in the Wild
CVE ID
AttackerKB requires a CVE ID in order to pull vulnerability data and references from the CVE list and the National Vulnerability Database. If available, please supply below: