CVE-2023-29020
Last modified
CVE-2023-29020 is a medium-severity vulnerability rated 6.5/10 on the CVSS scale. @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. EPSS estimates a 0.38% chance of exploitation in the next 30 days.
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`.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Weakness Enumeration
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| Fastify | Passport | < 1.1.0 |
| Fastify | Passport | >= 2.0.0, < 2.3.0 |
References
- https://owasp.org/www-community/attacks/csrfTechnical Description
- https://owasp.org/www-community/attacks/csrfTechnical Description
Timeline
- Published
- Last Modified
- Status
- Modified
Frequently Asked Questions
What is CVE-2023-29020?
How severe is CVE-2023-29020?
How do I fix CVE-2023-29020?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2023
- CVE-2023-29015The Goobi viewer is a web application that allows digitised …6.1
- CVE-2023-29016The Goobi viewer is a web application that allows digitised …6.1
- CVE-2023-29017vm2 is a sandbox that can run untrusted code with whiteliste…9.8
- CVE-2023-29018The OpenFeature Operator allows users to expose feature flag…8.8
- CVE-2023-29019@fastify/passport is a port of passport authentication libra…8.1
- CVE-2023-2902A vulnerability was found in NFine Rapid Development Platfor…6.5
- CVE-2023-29022 A cross site scripting vulnerability was discovered in Rock…5.9
- CVE-2023-29023 A cross site scripting vulnerability was discovered in Rock…6.1
- CVE-2023-29024 A cross site scripting vulnerability was discovered in Rock…6.5
- CVE-2023-29025 A cross site scripting vulnerability was discovered in Rock…5.9
- CVE-2023-29026 A cross site scripting vulnerability was discovered in Rock…5.9
- CVE-2023-29027 A cross site scripting vulnerability was discovered in Rock…5.9
Are you affected by CVE-2023-29020?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
