Patch Forecast
Yellow warning
Plan into this sprint.

CVE-2026-107399 · GHSA-c6rp-p8xm-4q9f

Mechanize sends credential headers to another origin after a meta refresh

Risk score
47/100
CVSS
6.8 v3.1
Exploit chance (30 days)
0.4%
Published
8 Oct 2026

Open in the live forecast Today's forecast

What to know

What it is
The Mechanize library is used for automating interaction with websites. Prior to 2.14.1, Mechanize applies no origin trust boundary in Mechanize::HTTP::Agent#response_follow_meta_refresh when Mechanize#follow_meta_refresh is enabled. A page containing a meta refresh to another origin causes headers configured through …
Affected
mechanize (rubygems) < 2.14.1
Fix
Upgrade mechanize to 2.14.1 or later.
Exploitation
No known exploitation

Story map

Story map: mechanizeTHE FLAWSTHE FIXCVE-2026-107399Mechanize sends credentialheaders to another origin aftera meta refreshCVSS 6.8 · EPSS 0%CVE-2026-107715Mechanize sends credentialheaders to another host afteran HTTP redirectCVSS 6.8 · EPSS 0%Upgrade mechanize2.14.1or later on your release lineWho is exposedmechanize (rubygems) < 2.14.1YELLOW · PLAN IT INmechanizeThe Mechanize library is usedfor automating interaction withwebsites. Prior to 2.14.1,Mechanize sends caller-suppliedcredential headers to adifferent host after an HTTPredirect.…Where it standsNo known exploitationCONNECTS TOSame weaknessInformation disclosure (CWE-200)196 other warnings in 30 days →
Story map: the flaws, the fix, how it unfolded and what it connects to. Boxes link to the record or article.

At a glance

mechanize: Yellow, plan it in. The Mechanize library is used for automating interaction with websites. Prior to 2.14.1, Mechanize sends caller-supplied credential headers to a different host after an HTTP redirect. Mechanize#request_headers= is reapplied by Mechanize::HTTP::Agent#request_add_headers even after Mechanize::HTTP::Agent#response_redire…

The flaws

  • CVE-2026-107399: Mechanize sends credential headers to another origin after a meta refresh (CVSS 6.8 · EPSS 0%)
  • CVE-2026-107715: Mechanize sends credential headers to another host after an HTTP redirect (CVSS 6.8 · EPSS 0%)

The fix

Upgrade mechanize: 2.14.1 or later on your release line

Who is exposed: mechanize (rubygems) < 2.14.1

Where it stands

  • No known exploitation

Connects to

Why it is Yellow

  • CVSS 6.8 medium

Affected packages

PackageEcosystemVulnerableFixed in
mechanizerubygems< 2.14.12.14.1

References

Original description

The Mechanize library is used for automating interaction with websites. Prior to 2.14.1, Mechanize applies no origin trust boundary in Mechanize::HTTP::Agent#response_follow_meta_refresh when Mechanize#follow_meta_refresh is enabled. A page containing a meta refresh to another origin causes headers configured through Mechanize#request_headers= to be reapplied to the refresh request, allowing an attacker who controls content in the crawl to capture bearer tokens or session cookies. The default configuration is not affected because follow_meta_refresh is false, and the exposure is limited to caller-supplied default headers. This issue is fixed in version 2.14.1.

Last activity 8 Oct 2026. Patch Forecast updates every hour.