---
id: CVE-2026-107177
title: >-
  Express Gateway through 1.16.11 contains a hardcoded cryptographic key
  vulnerability that allows attackers with datastore access to decrypt stored
  OAuth 2.0 token secrets via the default crypto.cipherKey 'sensitiveKey'
summary: >-
  Express Gateway through 1.16.11 contains a hardcoded cryptographic key
  vulnerability that allows attackers with datastore access to decrypt stored
  OAuth 2.0 token secrets via the default crypto.cipherKey 'sensitiveKey'.
  Attackers who can…
severity: medium
cvss: 5.9
cvssVector: 'CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:N'
cwe:
  - CWE-1394
vendor: ExpressGateway
product: express-gateway
affected:
  - express-gateway <= 1.16.11
published: '2026-10-07'
updated: '2026-10-07'
sourceUpdated: '2026-10-07T18:17:18.150'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-107177'
references:
  - url: 'https://github.com/ExpressGateway/express-gateway'
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/ExpressGateway/express-gateway/blob/45612814d12f65889ef3bdf80b2ed7ab9b557736/lib/config/system.config.yml#L15-L22
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/ExpressGateway/express-gateway/blob/45612814d12f65889ef3bdf80b2ed7ab9b557736/lib/services/utils.js#L18-L28
    label: disclosure@vulncheck.com
  - url: 'https://github.com/ExpressGateway/express-gateway/issues/1078'
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/express-gateway-through-1.16.11-hardcoded-default-cipherkey-exposes-oauth-tokens
    label: disclosure@vulncheck.com
  - url: 'https://github.com/ExpressGateway/express-gateway/issues/1078'
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
tags:
  - nvd
  - cve.org
  - exploit-available
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-10-07T17:27:31.854378Z'
ingestedAt: '2026-10-07T13:31:04.598Z'
epss: 0.00316
epssPercentile: 0.24643
---

## Overview

Express Gateway through 1.16.11 contains a hardcoded cryptographic key vulnerability that allows attackers with datastore access to decrypt stored OAuth 2.0 token secrets via the default crypto.cipherKey 'sensitiveKey'. Attackers who can read Redis can decrypt tokenEncrypted values and combine them with stored token IDs to obtain valid bearer tokens for any user.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
