Skip to main content

HAX open-apis CVE-2026-46391

HIGH
Permissive List of Allowed Inputs (CWE-183)
2026-05-19 https://github.com/haxtheweb/issues GHSA-4fg7-f244-3j49
Share

Lifecycle Timeline

2
Source Code Evidence Fetched
May 19, 2026 - 15:32 vuln.today
Analysis Generated
May 19, 2026 - 15:32 vuln.today

DescriptionNVD

Summary

Multiple functions conduct substring-only matching to validate hostnames to which basic authorization should be sent. An attacker can append the matched substrings to an attacker-controlled endpoint and capture authentication.

Details

api/services/website/cacheAddress.js, api/apps/haxcms/lib/JOSHelpers.js, and api/apps/haxcms/convert/elmslnToSite.js use similar logic to check for hard-coded site names. However, the logic only looks for the substring to be included in the user-controlled string, allowing an attacker to craft an API call and extract the credentials intended for the hard-coded domains.

PoC

Making API calls to an affected endpoint will result in credential theft. The attacker-controlled domains in these proofs of concept are cloudflared tunnels, protecting the production credentials from unencrypted exposure.

cacheAddress.js: <img width="3404" height="1656" alt="ssrf_cred_theft" src="https://github.com/user-attachments/assets/0a87cef5-3c4d-450a-8bb7-35123d5f621b" />

elmslnToSite.js: <img width="3409" height="1641" alt="theft2" src="https://github.com/user-attachments/assets/bede82cc-a613-4fc7-bbf6-76166af784f5" />

JOSHelpers.js: <img width="3407" height="1597" alt="theft3" src="https://github.com/user-attachments/assets/4f3f8bee-443e-4b22-9d41-eb9726619d36" />

Impact

This vulnerability allows internal data, including secrets, to be exfiltrated to an attacker-controlled domain. Credentials were confirmed with the maintainer to grant access to unreleased LMS content on subsequent systems; out of scope for PoC.

AnalysisAI

Server-Side Request Forgery leading to credential theft affects the @haxtheweb/open-apis npm package in versions prior to 26.0.0, where substring-only hostname validation allows attackers to redirect basic authentication credentials to attacker-controlled domains. Publicly available exploit code exists in the GHSA advisory demonstrating credential capture via crafted API calls through cloudflared tunnels, and the maintainer confirmed the leaked credentials grant access to unreleased LMS content on downstream systems. …

Sign in for full analysis, threat intelligence, and remediation guidance.

RemediationAI

Within 24 hours: Identify all instances of @haxtheweb/open-apis across your software inventory and note the versions in use (vulnerable versions are those prior to 26.0.0). Within 7 days: Implement emergency controls including restricting outbound network access from affected systems, and immediately rotate all credentials that may have been exposed through this package; establish vendor monitoring for version 26.0.0 release. …

Sign in for detailed remediation steps.

Share

CVE-2026-46391 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy