CVE-2026-27192

Feathersjs is a framework for creating web APIs and real-time applications with TypeScript or JavaScript. In versions 5.0.39 and below, origin validation uses startsWith() for comparison, allowing attackers to bypass the check by registering a domain that shares a common prefix with an allowed origin.The getAllowedOrigin() function checks if the Referer header starts with any allowed origin, and this comparison is insufficient as it only validates the prefix. This is exploitable when the origins array is configured and an attacker registers a domain starting with an allowed origin string (e.g., https://target.com.attacker.com bypasses https://target.com). On its own, tokens are still redirected to a configured origin. However, in specific scenarios an attacker can initiate the OAuth flow from an unauthorized origin and exfiltrate tokens, achieving full account takeover. This issue has bee fixed in version 5.0.40.
Configurations

Configuration 1 (hide)

cpe:2.3:a:feathersjs:feathers:*:*:*:*:*:node.js:*:*

History

25 Feb 2026, 15:12

Type Values Removed Values Added
Summary
  • (es) Feathersjs es un framework para crear APIs web y aplicaciones en tiempo real con TypeScript o JavaScript. En las versiones 5.0.39 e inferiores, la validación de origen utiliza startsWith() para la comparación, lo que permite a los atacantes eludir la verificación al registrar un dominio que comparte un prefijo común con un origen permitido. La función getAllowedOrigin() comprueba si el encabezado Referer comienza con cualquier origen permitido, y esta comparación es insuficiente ya que solo valida el prefijo. Esto es explotable cuando el array de orígenes está configurado y un atacante registra un dominio que comienza con una cadena de origen permitida (p. ej., https://target.com.attacker.com elude https://target.com). Por sí solos, los tokens siguen siendo redirigidos a un origen configurado. Sin embargo, en escenarios específicos un atacante puede iniciar el flujo de OAuth desde un origen no autorizado y exfiltrar tokens, logrando una toma de control total de la cuenta. Este problema ha sido solucionado en la versión 5.0.40.
CPE cpe:2.3:a:feathersjs:feathers:*:*:*:*:*:node.js:*:*
First Time Feathersjs feathers
Feathersjs
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 8.1
References () https://github.com/feathersjs/feathers/commit/ee19a0ae9bc2ebf23b1fe598a1f7361981b65401 - () https://github.com/feathersjs/feathers/commit/ee19a0ae9bc2ebf23b1fe598a1f7361981b65401 - Patch
References () https://github.com/feathersjs/feathers/releases/tag/v5.0.40 - () https://github.com/feathersjs/feathers/releases/tag/v5.0.40 - Product, Release Notes
References () https://github.com/feathersjs/feathers/security/advisories/GHSA-mp4x-c34x-wv3x - () https://github.com/feathersjs/feathers/security/advisories/GHSA-mp4x-c34x-wv3x - Third Party Advisory

21 Feb 2026, 04:15

Type Values Removed Values Added
New CVE

Information

Published : 2026-02-21 04:15

Updated : 2026-02-25 15:12


NVD link : CVE-2026-27192

Mitre link : CVE-2026-27192

CVE.ORG link : CVE-2026-27192


JSON object : View

Products Affected

feathersjs

  • feathers
CWE
CWE-346

Origin Validation Error