Cross-site Request Forgery (CSRF) Affecting @fastify/passport package, versions <1.1.0>=2.0.0 <2.3.0


Severity

Recommended
0.0
medium
0
10

CVSS assessment made by Snyk's Security Team. Learn more

Threat Intelligence

EPSS
0.08% (35th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Cross-site Request Forgery (CSRF) vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-JS-FASTIFYPASSPORT-5457849
  • published23 Apr 2023
  • disclosed23 Apr 2023
  • creditpedromigueladao,lavish

Introduced: 23 Apr 2023

CVE-2023-29020  (opens in a new tab)
CWE-352  (opens in a new tab)

How to fix?

Upgrade @fastify/passport to version 1.1.0, 2.3.0 or higher.

Overview

@fastify/passport is a Simple, unobtrusive authentication for Fastify.

Affected versions of this package are vulnerable to Cross-site Request Forgery (CSRF). CSRF protection is implemented using a synchronizer token pattern, 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.

References

CVSS Scores

version 3.1