Description
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.
Remediation
References
https://codeburst.io/missing-the-point-in-securing-oauth-2-0-83968708b467
https://github.com/oauthjs/node-oauth2-server/issues/637
https://github.com/oauthjs/node-oauth2-server/pull/452
https://tools.ietf.org/html/draft-ietf-oauth-security-topics-15
https://tools.ietf.org/html/rfc7636
Related Vulnerabilities
CVE-2018-1002202 Vulnerability in maven package net.lingala.zip4j:zip4j
CVE-2015-5377 Vulnerability in maven package org.elasticsearch:elasticsearch
CVE-2018-19056 Vulnerability in maven package org.webjars.npm:editor.md
CVE-2016-10614 Vulnerability in npm package httpsync
CVE-2023-25827 Vulnerability in maven package net.opentsdb:opentsdb