Skip to content

Lack of protection against cookie tossing attacks in fastify-csrf

Moderate severity GitHub Reviewed Published May 14, 2021 in fastify/csrf-protection • Updated Jan 28, 2023

Package

npm fastify-csrf (npm)

Affected versions

< 3.1.0

Patched versions

3.1.0

Description

Impact

Users that used fastify-csrf with the "double submit" mechanism using cookies with an application deployed across multiple subdomains, e.g. "heroku"-style platform as a service.

Patches

Version 3.1.0 of the fastify-csrf fixes it.
See fastify/csrf-protection#51 and fastify/csrf#2.

The user of the module would need to supply a userInfo when generating the CSRF token to fully implement the protection on their end. This is needed only for applications hosted on different subdomains.

Workarounds

None available.

References

  1. https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html
  2. https://owasp.org/www-pdf-archive/David_Johansson-Double_Defeat_of_Double-Submit_Cookie.pdf

Credits

This vulnerability was found by Xhelal Likaj xhelallikaj20@gmail.com.

For more information

If you have any questions or comments about this advisory:

References

@mcollina mcollina published to fastify/csrf-protection May 14, 2021
Reviewed May 17, 2021
Published to the GitHub Advisory Database May 17, 2021
Published by the National Vulnerability Database May 19, 2021
Last updated Jan 28, 2023

Severity

Moderate
6.5
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
None
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N

EPSS score

0.135%
(50th percentile)

CVE ID

CVE-2021-29624

GHSA ID

GHSA-rc4q-9m69-gqp8

Source code

No known source code
Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.