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-2017-16014 Vulnerability in npm package http-proxy
CVE-2023-24057 Vulnerability in maven package ca.uhn.hapi.fhir:org.hl7.fhir.r5
CVE-2020-6858 Vulnerability in maven package com.hotels.styx:styx-server
CVE-2023-23850 Vulnerability in maven package org.jenkins-ci.plugins:synopsys-coverity
CVE-2019-3795 Vulnerability in maven package org.springframework.security:spring-security-core