CVE-2017-18924: Vulnerability Analysis & Exploit Details

Status: Modified - Last modified: 05-08-2024 Published: 04-10-2020

CVE-2017-18924
Vulnerability Scoring

7.5
/10

Attack Complexity Details

  • Attack Complexity: Low Impact
  • Attack Vector: NETWORK
  • Privileges Required: None
  • Scope: UNCHANGED
  • User Interaction: NONE

CIA Impact Definition

  • Confidentiality: HIGH IMPACT
  • Integrity:
  • Availability:

CVE-2017-18924 Vulnerability Summary

oauth2-server (aka node-oauth2-server) through 3.1.1 implements OAuth 2.0 without PKCE. It does not prevent authorization code injection. This is similar to CVE-2020-7692. NOTE: the vendor states 'As RFC7636 is an extension, I think the claim in the Readme of "RFC 6749 compliant" is valid and not misleading and I also therefore wouldn't describe this as a "vulnerability" with the library per se.

Access Complexity Graph for CVE-2017-18924

Impact Analysis for CVE-2017-18924

CVE-2017-18924: Detailed Information and External References

EPSS

0.00332

EPSS %

0.71098

References

0.00332

CWE

CWE-94

CAPEC

0.00332

  • Code Injection: An adversary exploits a weakness in input validation on the target to inject new code into that which is currently executing. This differs from code inclusion in that code inclusion involves the addition or replacement of a reference to a code file, which is subsequently loaded by the target and used as part of the code of some application.
  • Leverage Executable Code in Non-Executable Files: An attack of this type exploits a system's trust in configuration and resource files. When the executable loads the resource (such as an image file or configuration file) the attacker has modified the file to either execute malicious code directly or manipulate the target process (e.g. application server) to execute based on the malicious configuration parameters. Since systems are increasingly interrelated mashing up resources from local and remote sources the possibility of this attack occurring is high.
  • Manipulating User-Controlled Variables: This attack targets user controlled variables (DEBUG=1, PHP Globals, and So Forth). An adversary can override variables leveraging user-supplied, untrusted query variables directly used on the application server without any data sanitization. In extreme cases, the adversary can change variables controlling the business logic of the application. For instance, in languages like PHP, a number of poorly set default configurations may allow the user to override variables.

Vulnerable Configurations

  • cpe:2.3:a:oauth2-server_project:oauth2-server:-:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:-:*:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:2.2.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:2.2.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:2.3.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:2.3.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:2.4.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:2.4.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:2.4.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:2.4.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:-:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:-:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b1:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b1:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b2:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b2:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b3:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b3:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b4:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b4:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b3.1:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.0:b3.1:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.0.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.0:-:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.0:-:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.0:rc1:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.0:rc1:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.0:beta1:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.0:beta1:*:*:*:node.js:*:*
  • cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:oauth2-server_project:oauth2-server:3.1.1:*:*:*:*:node.js:*:*

CVSS3 Source

nvd@nist.gov

CVSS3 Type

Primary

CVSS3 Vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Protect Your Infrastructure: Combat Critical CVE Threats

Stay updated with real-time CVE vulnerabilities and take action to secure your systems. Enhance your cybersecurity posture with the latest threat intelligence and mitigation techniques. Develop the skills necessary to defend against CVEs and secure critical infrastructures. Join the top cybersecurity professionals safeguarding today's infrastructures.

Recently Published CVEs