Repository navigation
CVE-2026-111755 CVE-2026-111756 follow-redirects: Credential headers forwarded on cross-origin redirects (1.16.0 -> 1.16.1) - #1189
Merged
vharseko merged 1 commit intoOct 21, 2026
Conversation
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.16.0 to 1.16.1. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](follow-redirects/follow-redirects@v1.16.0...v1.16.1) --- updated-dependencies: - dependency-name: follow-redirects dependency-version: 1.16.1 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
vharseko
approved these changes
Oct 20, 2026
vharseko
deleted the
dependabot/npm_and_yarn/openam-ui/openam-ui-ria/follow-redirects-1.16.1
branch
October 21, 2026 06:42
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps
follow-redirectsfrom 1.16.0 to 1.16.1 inopenam-ui/openam-ui-ria(package-lock.jsononly), clearing Dependabot alerts #367 and #368. This follows #985, which took the same dependency from 1.15.11 to 1.16.0 for GHSA-r4q5-vmmm-2653; both new advisories are flaws in the cross-origin header stripping that fix extended.openam-ui-riais the only lock file in the repository that resolvesfollow-redirects.Advisories
When a redirect crosses to another host or downgrades HTTPS to HTTP, follow-redirects removes
Authorization,Proxy-Authorization,Cookieand any header names the caller lists in thesensitiveHeadersoption (added in 1.16.0) before it sends the next request. Both advisories make that removal silently do nothing, so the credentials reach the redirect target.CVE-2026-111755 / GHSA-8r9p-f939-6h3c (fixed in 1.16.1) — Incorrect regular expression (CWE-185) leading to exposure of sensitive information (CWE-200). The filter is one case-insensitive alternation of the header names, each passed through
escapeRegex, which left^,|,[,{and}unescaped.^and|are valid header-name characters, so a declared name such asX-Api^KeyorX-Token|Secretnever matches and is forwarded, while|also splits the name into unrelated alternatives; a declared name containing[makes theRegExpconstructor throw. The built-in names contain no metacharacters and are not affected. 1.16.1 adds[,^and|to the escaped set (follow-redirects@080a76d). The advisory's second, lower-severity point — names pushed intosensitiveHeadersinsidebeforeRedirectare ignored, because the filter is built once in the constructor — is not changed by 1.16.1.CVE-2026-111756 / GHSA-q3jh-wrc6-jgq8 (fixed in 1.16.1) — Exposure of sensitive information (CWE-200) through improper removal of sensitive information before transfer (CWE-212). Node's
http.requestalso accepts headers as an alternating[name, value, …]array.removeMatchingHeaderswalks the headers withfor…in, which yields the indices"0","1", … for an array, so nothing matches: the built-in credential headers, everysensitiveHeadersentry, the staleHostand, on a POST→GET redirect, thecontent-*headers are all forwarded. 1.16.1 converts an array to an object in_sanitizeOptionsbefore any stripping (follow-redirects@9865ca4); a name repeated in the array now keeps only its last value.AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N)AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N)Confidentiality-only: credential disclosure to a redirect target, no code execution.
Impact on OpenAM
None at runtime, none in the build.
follow-redirectsis a transitive development dependency ofopenam-ui-ria(dev: true): the single copy in the lock file is pulled in byhttp-proxy1.18.1, whichkarma6.4.3 requires. No OpenAM source imports it, and it does not end up in the module zip — the assembly packs onlytarget/compiledand the CodeMirror files — or in the WAR.The Maven build reaches it only through
npm run test→grunt karma:build. Karma loadshttp-proxy, whichrequiresfollow-redirects, but Karma creates a proxy only for the entries inconfig.proxies, andkarma.conf.jsdeclares none. Even with a proxy configured, Karma'screateProxyServerdoes not setfollowRedirects, sohttp-proxywould send its requests through Node's ownhttp/https; the headers it builds are a plain object copied from the incoming request (common.setupOutgoing), and it never setssensitiveHeaders. Neither flaw is reachable here. The bump takes the development toolchain out of the vulnerable range.Change
The
node_modules/follow-redirectsentry inopenam-ui/openam-ui-ria/package-lock.json: 1.16.0 → 1.16.1 (version,resolved,integrity).package.jsonis untouched —http-proxyasks for^1.0.0, which 1.16.1 satisfies. No code change.Verified:
integritymatchesnpm view follow-redirects@1.16.1 dist.integritynode_modules/follow-redirectsis the onlyfollow-redirectsentry in this lock file; theopenam-ui-apiandopenam-ui-js-sdklock files do not resolve itReferences