{"id":"CVE-2017-16570","aliases":["EUVD-2017-0351","GHSA-q43c-g2g7-6gxj"],"status":"published","title":"Cross-Site Request Forgery (CSRF) in keystone","description":"KeystoneJS before 4.0.0-beta.7 allows application-wide CSRF bypass by removing the CSRF parameter and value, aka SecureLayer7 issue number SL7_KEYJS_03. In other words, it fails to reject requests that lack an x-csrf-token header.","severity":{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.02213,"percentile":0.82735,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":true},"cwes":["CWE-352"],"published":"2017-11-06T08:00:00Z","modified":"2026-10-20T10:49:50Z","exploits":[{"source":"exploitdb","id":"EDB-43922","title":"KeystoneJS \u003c 4.0.0-beta.7 - Cross-Site Request Forgery","type":"webapps","platform":"nodejs","date":"2018-01-28","url":"https://www.exploit-db.com/exploits/43922"}],"fixes":[{"ecosystem":"npm","package":"keystone","fixed_in":["4.0.0-beta.7"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"keystone","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"4.0.0-beta.6"},{"fixed":"4.0.0-beta.7"}]}]},{"source":"osv","ecosystem":"npm","package":"keystone","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"4.0.0-beta.7"}]}]}],"products":[{"vendor":"keystonejs","product":"keystone"}],"references":[{"url":"http://blog.securelayer7.net/keystonejs-open-source-penetration-testing-report/","tags":["x_refsource_MISC","x_transferred","Issue Tracking","Third Party Advisory","report"]},{"url":"https://github.com/keystonejs/keystone/issues/4437","tags":["x_refsource_MISC","x_transferred","Issue Tracking","Third Party Advisory","report","web"]},{"url":"https://github.com/keystonejs/keystone/pull/4478","tags":["x_refsource_MISC","x_transferred","Issue Tracking","Third Party Advisory","report","web"]},{"url":"https://www.exploit-db.com/exploits/43922/","tags":["exploit","x_refsource_EXPLOIT-DB","x_transferred","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-16570","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-q43c-g2g7-6gxj","tags":["advisory"]},{"url":"https://securelayer7.net/download/pdf/KeystoneJS-Pentest-Report-SecureLayer7.pdf","tags":["web"]},{"url":"https://snyk.io/vuln/SNYK-JS-KEYSTONE-449663","tags":["web"]},{"url":"https://www.npmjs.com/advisories/979","tags":["web"]},{"url":"https://www.exploit-db.com/exploits/43922","tags":["web"]},{"url":"http://blog.securelayer7.net/keystonejs-open-source-penetration-testing-report","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2017-16570","description":"KeystoneJS before 4.0.0-beta.7 allows application-wide CSRF bypass by removing the CSRF parameter and value, aka SecureLayer7 issue number SL7_KEYJS_03. In other words, it fails to reject requests that lack an x-csrf-token header.","status":"published","published":"2017-11-06T08:00:00Z","modified":"2024-08-05T20:27:03.997Z","updated_at":"2026-11-02T14:33:21.142987Z"}],"euvd":[{"id":"EUVD-2017-0351","description":"KeystoneJS before 4.0.0-beta.7 allows application-wide CSRF bypass by removing the CSRF parameter and value, aka SecureLayer7 issue number SL7_KEYJS_03. In other words, it fails to reject requests that lack an x-csrf-token header.","status":"published","published":"2017-11-06T08:00:00Z","modified":"2024-08-05T20:27:03Z","updated_at":"2026-11-03T02:23:12.50701Z"}],"ghsa":[{"id":"GHSA-q43c-g2g7-6gxj","title":"Cross-Site Request Forgery (CSRF) in keystone","description":"Versions of `keystone` prior to 4.0.0 are vulnerable to Cross-Site Request Forgery (CSRF). The package fails to validate the presence of the `X-CSRF-Token` header, which may allow attackers to carry actions on behalf of other users on all endpoints.\n\n\n## Recommendation\n\nUpdate to version 4.0.0 or later.","status":"published","published":"2017-11-30T23:14:47Z","modified":"2023-01-09T05:03:23Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-352"],"updated_at":"2026-11-02T14:36:05.071174Z"}],"nvd":[{"id":"CVE-2017-16570","description":"KeystoneJS before 4.0.0-beta.7 allows application-wide CSRF bypass by removing the CSRF parameter and value, aka SecureLayer7 issue number SL7_KEYJS_03. In other words, it fails to reject requests that lack an x-csrf-token header.","status":"published","published":"2017-11-06T08:29:00.377Z","modified":"2026-06-17T01:09:29.643Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-352"],"updated_at":"2026-11-02T14:04:08.01771Z"}],"osv":[{"id":"CVE-2017-16570","description":"KeystoneJS before 4.0.0-beta.7 allows application-wide CSRF bypass by removing the CSRF parameter and value, aka SecureLayer7 issue number SL7_KEYJS_03. In other words, it fails to reject requests that lack an x-csrf-token header.","status":"published","published":"2017-11-06T08:29:00.377Z","modified":"2026-10-20T10:49:50.581659142Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:04.853379Z"},{"id":"GHSA-q43c-g2g7-6gxj","title":"Cross-Site Request Forgery (CSRF) in keystone","description":"Versions of `keystone` prior to 4.0.0 are vulnerable to Cross-Site Request Forgery (CSRF). The package fails to validate the presence of the `X-CSRF-Token` header, which may allow attackers to carry actions on behalf of other users on all endpoints.\n\n\n## Recommendation\n\nUpdate to version 4.0.0 or later.","status":"published","published":"2017-11-30T23:14:47Z","modified":"2023-11-08T03:59:12.93766Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-352"],"updated_at":"2026-11-02T15:46:54.055966Z"}]}}
