Feathers exposes internal headers via unencrypted session cookie
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- High
- Attack requirements
- Present
- Impact type
- Information disclosure
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-200.
Summary
Feathersjs is a framework for creating web APIs and real-time applications with TypeScript or JavaScript. In versions 5.0.39 and below, all HTTP request headers are stored in the session cookie, which is signed but not encrypted, exposing internal proxy/gateway headers to clients. The OAuth service stores the complete headers object in the session, then the session is persisted using cookie-session, which base64-encodes the data. While the cookie is signed to prevent tampering, the contents are readable by anyone by simply decoding the base64 value. Under specific deployment configurations (e.g., behind reverse proxies or API gateways), this can lead to exposure of sensitive internal infrastructure details such as API keys, service tokens, and internal IP addresses. This issue has been fixed in version 5.0.40.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| feathersjs | feathers | before 5.0.40 | 5.0.40 | Patch available | CNA |
| — | @feathersjs/authentication-oauth (npm) | before 5.0.40 | 5.0.40 | Patch available | GHSA-9m9c-vpv5-9g85 |
- feathers Vendorfeathersjs Affected before 5.0.40 Fixed in 5.0.40 Patch available CNA
- @feathersjs/authentication-oauth (npm) Vendor— Affected before 5.0.40 Fixed in 5.0.40 Patch available GHSA-9m9c-vpv5-9g85
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:feathersjs:feathers:*:*:*:*:*:node.js:*:* | before 5.0.40 | Vulnerable | feathersjs |
- cpe:2.3:a:feathersjs:feathers:*:*:*:*:*:node.js:*:* Versions before 5.0.40 Vulnerable ·feathersjs
Remediation
- Fix · CNA feathers (feathersjs) Fixed in 5.0.40
- Fix · GHSA-9m9c-vpv5-9g85 @feathersjs/authentication-oauth (npm) Fixed in 5.0.40 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-27193
- 2026-10-03 Alias added: GHSA-9m9c-vpv5-9g85
References
Advisory 2
More feathersjs Feathers vulnerabilities
- TI-2023-19332 feathersjs socket handler allows abusing implicit toString CVSS 3.1HIGH 7.5
- TI-2026-23379 NoSQL Injection via WebSocket id Parameter in MongoDB Adapter CVSS 4.0CRITICAL 9.3
- TI-2026-23378 Feathersjs has an OAuth Callback Account Takeover CVSS 4.0CRITICAL 9.3
- TI-2026-21629 Feathers has an origin validation bypass via prefix matching CVSS 4.0HIGH 7.6
- TI-2026-21628 Feathers: Open Redirect in OAuth callback enables account takeover CVSS 4.0HIGH 7.4
Sources
- CVE-2026-27193 · CVE Program
- CVE-2026-27193 · NVD
- FIRST EPSS
- GHSA-9m9c-vpv5-9g85 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences