CVE-2026-27959

Koa is middleware for Node.js using ES2017 async functions. Prior to versions 3.1.2 and 2.16.4, Koa's `ctx.hostname` API performs naive parsing of the HTTP Host header, extracting everything before the first colon without validating the input conforms to RFC 3986 hostname syntax. When a malformed Host header containing a `@` symbol is received, `ctx.hostname` returns `evil[.]com` - an attacker-controlled value. Applications using `ctx.hostname` for URL generation, password reset links, email verification URLs, or routing decisions are vulnerable to Host header injection attacks. Versions 3.1.2 and 2.16.4 fix the issue.
Configurations

Configuration 1 (hide)

OR cpe:2.3:a:koajs:koa:*:*:*:*:*:node.js:*:*
cpe:2.3:a:koajs:koa:*:*:*:*:*:node.js:*:*

History

30 Jun 2026, 03:17

Type Values Removed Values Added
References
  • () https://access.redhat.com/errata/RHSA-2026:10184 -
  • () https://access.redhat.com/errata/RHSA-2026:7249 -
  • () https://access.redhat.com/security/cve/CVE-2026-27959 -
  • () https://bugzilla.redhat.com/show_bug.cgi?id=2442928 -
  • () https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-27959.json -

16 Jun 2026, 19:38

Type Values Removed Values Added
Summary
  • (es) Koa es un middleware para Node.js que utiliza funciones asíncronas de ES2017. Antes de las versiones 3.1.2 y 2.16.4, la API `ctx.hostname` de Koa realiza un análisis ingenuo del encabezado Host HTTP, extrayendo todo lo que precede al primer signo de dos puntos sin validar que la entrada cumpla con la sintaxis de nombre de host de RFC 3986. Cuando se recibe un encabezado Host malformado que contiene un símbolo '@', `ctx.hostname` devuelve 'evil[.]com' - un valor controlado por el atacante. Las aplicaciones que utilizan `ctx.hostname` para la generación de URL, enlaces de restablecimiento de contraseña, URL de verificación de correo electrónico o decisiones de enrutamiento son vulnerables a ataques de inyección de encabezado Host. Las versiones 3.1.2 y 2.16.4 solucionan el problema.

28 Feb 2026, 00:55

Type Values Removed Values Added
References () https://github.com/koajs/koa/commit/55ab9bab044ead4e82c70a30a4f9dc0fc9c1b6df - () https://github.com/koajs/koa/commit/55ab9bab044ead4e82c70a30a4f9dc0fc9c1b6df - Patch
References () https://github.com/koajs/koa/commit/b76ddc01fdb703e51652b0fd131d16394cadcfeb - () https://github.com/koajs/koa/commit/b76ddc01fdb703e51652b0fd131d16394cadcfeb - Patch
References () https://github.com/koajs/koa/security/advisories/GHSA-7gcc-r8m5-44qm - () https://github.com/koajs/koa/security/advisories/GHSA-7gcc-r8m5-44qm - Exploit, Vendor Advisory
CPE cpe:2.3:a:koajs:koa:*:*:*:*:*:node.js:*:*
CWE NVD-CWE-noinfo
First Time Koajs koa
Koajs

26 Feb 2026, 02:16

Type Values Removed Values Added
New CVE

Information

Published : 2026-02-26 02:16

Updated : 2026-07-15 02:19


NVD link : CVE-2026-27959

Mitre link : CVE-2026-27959

CVE.ORG link : CVE-2026-27959


JSON object : View

Products Affected

koajs

  • koa
CWE
CWE-20

Improper Input Validation

NVD-CWE-noinfo