CVE-2017-16570: Keystone Cross-Site Request Forgery (CSRF)

CVE-2017-16570 · Severity: low · CVSS 3 · Published 2017-11-30

Keystone is a Node.js-based content management and API platform. Versions prior to 4.0.0-beta.7 fail to validate CSRF tokens on API endpoints, allowing attackers to perform unauthorized actions (create, modify, or delete content) by tricking authenticated users into visiting malicious websites. This could lead to data corruption or unauthorized changes to critical business data.

Technologies: keystone (npm). Vendors: npm.

Quick answers

Is CVE-2017-16570 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2017-16570 being exploited in the wild.
How severe is CVE-2017-16570?
Low severity, with a CVSS score of 3, published 30 November 2017.
Which products and versions are affected?
keystone (npm) SEMVER:introduced=0,fixed=4.0.0-beta.7.
Is there a fix for CVE-2017-16570?
Yes. keystone (npm): upgrade to 4.0.0-beta.7 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2017-16570 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2017-16570?
Check whether you run keystone (npm) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • keystone (npm): upgrade to 4.0.0-beta.7 or later
    npm install keystone@4.0.0-beta.7

Technical details

The vulnerability is a Cross-Site Request Forgery (CSRF) weakness in Keystone's API endpoints. The application does not properly validate the presence of the X-CSRF-Token header on requests, allowing attackers to craft malicious requests that execute with the privileges of an authenticated user. The attack vector is network-based and requires user interaction (victim must visit attacker-controlled page while logged into Keystone). An authenticated attacker can perform any action the victim is authorized to perform across all endpoints. The fix is available in version 4.0.0-beta.7 and later.

Affected products

  • Keystone Keystone < 4.0.0-beta.7

Identifiers

  • CVE-2017-16570
  • GHSA-q43c-g2g7-6gxj

Timeline

  • 2017-11-30: disclosed
  • 2017: patched: Version 4.0.0-beta.7 fixes the vulnerability

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.