CVEReports
CVEReports

Automated vulnerability intelligence platform. Comprehensive reports for high-severity CVEs generated by AI.

Product

  • Home
  • Sitemap
  • RSS Feed

Company

  • About
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CVEReports. All rights reserved.

Made with love by Amit Schendel & Alon Barad



CVE-2026-67435

CVE-2026-67435: Custom Authentication Header Leakage via Cross-Origin Redirects in linuxfabrik-lib

Amit Schendel
Amit Schendel
Senior Security Researcher

Jul 31, 2026·6 min read·6 visits

Executive Summary (TL;DR)

A vulnerability in linuxfabrik-lib prior to 6.0.0 forwards custom authentication headers (such as X-Auth-Token or X-Api-Key) during cross-origin redirects, allowing remote attackers to exfiltrate administrative credentials.

CVE-2026-67435 is a security vulnerability in the linuxfabrik-lib Python library prior to version 6.0.0. When performing HTTP requests with follow_redirects enabled, custom authentication headers (such as X-Auth-Token or X-Api-Key) are forwarded during cross-origin redirects. A malicious or compromised server can leverage this behavior to capture sensitive monitoring and administrative credentials, leading to potential unauthorized access and Server-Side Request Forgery (SSRF).

Vulnerability Overview

The component linuxfabrik-lib is a utility library developed by Linuxfabrik GmbH, primarily used to support enterprise monitoring plugins. Within this library, the HTTP client utility lib.url.fetch() streamlines network interactions by wrapping the HTTP client library httpx. These utilities are routinely deployed within automation scripts and infrastructure monitoring frameworks to query internal networks and device endpoints.

By default, lib.url.fetch() configures the HTTP client with automatic redirection capabilities (follow_redirects=True). Because monitoring configurations frequently rely on persistent authentication mechanisms to query endpoints, sensitive tokens are passed via HTTP headers. This exposure creates a broad attack surface if a monitored endpoint is compromised or misconfigured to yield redirection paths.

The vulnerability belongs to the CWE-200 (Exposure of Sensitive Information) and CWE-918 (Server-Side Request Forgery) classes. Under certain conditions, a target device can coerce the client library into leaking critical administrative credentials to arbitrary external domains. This bypasses the security zone separation established within monitoring environments.

Technical Root Cause Analysis

The underlying flaw arises from how the HTTP client engine manages cross-origin redirects. While standard HTTP libraries, including httpx, strip default authentication headers such as Authorization or Cookie upon encountering cross-origin HTTP 3xx redirects, they lack context regarding proprietary or application-specific headers. Consequently, custom headers remain attached to the redirected request.

In infrastructure monitoring contexts, plugins frequently query out-of-band management platforms, such as Redfish APIs. These APIs rely on proprietary authentication schemes, using custom headers like X-Auth-Token or vendor-specific API keys like X-Api-Key. Because these headers do not match the standardized standard list of credential headers, the client continues to transmit them when executing cross-origin redirection hops.

An attacker who can influence the destination of the HTTP query can manipulate the host to return a 302 Found or 307 Temporary Redirect response. If the client automatically follows the redirect, the custom authentication header is dispatched directly to the target system controlled by the attacker. This configuration results in direct credential exposure without requiring complex exploit payloads or privilege escalations.

Code-Level Analysis and Patch Review

The vulnerability was remediated in commit 6573ff9347e541200305d278d2663d2e54e052ff by implementing custom header filtering on redirect events. The patch introduces a static list of trusted transport headers, designated as _REDIRECT_SAFE_HEADERS. These headers are deemed safe for transfer across security domains because they do not carry user-specific credentials.

# Safe headers to keep when redirecting across origins
_REDIRECT_SAFE_HEADERS = frozenset({
    'accept',
    'accept-encoding',
    'accept-language',
    'connection',
    'content-length',
    'content-type',
    'host',
    'transfer-encoding',
    'user-agent',
})

To determine whether a redirection hop represents a cross-origin boundary crossing, the developers implemented origin-matching logic. The function evaluates if the scheme, host, or port changes during transit, excluding standard HTTP-to-HTTPS upgrades on the same host.

def _leaks_credentials_on_redirect(src, dst):
    # Compare source and destination origins
    same_origin = (
        src.scheme == dst.scheme
        and src.host == dst.host
        and _default_port(src) == _default_port(dst)
    )
    if same_origin:
        return False
    # Allow standard http to https upgrades
    https_upgrade = (
        src.host == dst.host
        and src.scheme == 'http'
        and _default_port(src) == 80
        and dst.scheme == 'https'
        and _default_port(dst) == 443
    )
    return not https_upgrade

To apply this logic to the httpx.Client without modifying the global package namespace, the patching code interceptively shadows the private _redirect_headers method of the instance. If a cross-origin transfer is detected, non-whitelisted headers are explicitly deleted.

def _install_safe_redirect_stripping(client):
    original = getattr(client, '_redirect_headers', None)
    if original is None:
        return client
 
    def _redirect_headers(request, url, method):
        headers = original(request, url, method)
        if _leaks_credentials_on_redirect(request.url, url):
            for name in list(headers.keys()):
                if name.lower() not in _REDIRECT_SAFE_HEADERS:
                    del headers[name]
        return headers
 
    client._redirect_headers = _redirect_headers
    return client

> [!WARNING] > While this patch effectively closes the vulnerability, it exhibits potential robustness issues. It monkey-patches _redirect_headers, a private internal method of the httpx module. Because private methods are subject to change in minor version updates of httpx, future modifications to the internal signature of httpx could disable the security wrapper without causing standard execution runtime errors.

Attack Methodology and Scenario

An execution scenario involves an attacker targeting internal monitoring infrastructure. The attacker identifies a monitored target device or service that has been compromised, or whose DNS records can be spoofed. Alternatively, the target endpoint may allow user-supplied URI injection, permitting an attacker to manipulate the redirect destinations.

In the first stage, the monitoring agent initiates a routine poll to the target device using the vulnerable library. The request includes custom credentials, such as an X-Auth-Token header containing administrative session data. Because the device is compromised or configured to act maliciously, it responds with an HTTP redirect code pointing to http://evil.local.

The vulnerable lib.url.fetch() utility intercepts the redirect and processes the redirection automatically. It instantiates a new HTTP request targeting http://evil.local but fails to strip the custom header. Upon receipt, the attacker-controlled server extracts the X-Auth-Token value from the request headers, granting the attacker administrative privileges over the monitored system.

Security Impact Assessment

The potential consequences of CVE-2026-67435 are severe, particularly because it directly exposes out-of-band management endpoints. These platforms control server hardware, firmware updates, and core hypervisor systems. If an administrative Redfish token is leaked, attackers can gain console access or modify hardware configurations.

The vulnerability is assigned a CVSS v4.0 base score of 6.0, indicating a Medium severity issue. While the attack is relatively simple once a redirect path is established, the exploitation is bounded by the need to intercept or manipulate target network responses. The Confidentiality vector is rated High because complete session tokens are exposed.

Because this vulnerability is not currently listed in the CISA KEV catalog and lacks weaponized exploitation scripts, the immediate exploitation threat remains low. However, custom automation scripts that interact with third-party APIs represent an overlooked vector for silent credential harvest.

Remediation and Defense-in-Depth

The primary remediation path requires upgrading linuxfabrik-lib to version 6.0.0 or higher. This version contains the dynamic patching wrapper that intercepts and filters redirected request headers, safeguarding custom security context during origin crossings.

If patching cannot be executed immediately, administrators must secure their execution environment using secondary controls. Egress firewalls on monitoring agent hosts should be restricted to prevent outgoing traffic to unauthorized IP addresses and domains. Monitoring agents should only communicate with known, whitelisted internal resources.

Additionally, developers can configure the library to disable redirection parsing globally when executing authenticated HTTP queries. Passing follow_redirects=False within calling functions prevents the client library from automatically navigating redirect pathways, neutralizing the primary attack vector.

Official Patches

Linuxfabrik GmbHOfficial fix commit implementing dynamic redirection header stripping

Fix Analysis (1)

Technical Appendix

CVSS Score
6.0/ 10
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
EPSS Probability
0.29%
Top 79% most exploited

Affected Systems

linuxfabrik-libLinuxfabrik Monitoring Plugins

Affected Versions Detail

Product
Affected Versions
Fixed Version
linuxfabrik-lib
Linuxfabrik GmbH
< 6.0.06.0.0
AttributeDetail
CWE IDCWE-200, CWE-918
Attack VectorNetwork
CVSS v4.0 Score6.0
EPSS Score0.00286 (Percentile: 20.87%)
ImpactCredential Exposure
Exploit StatusNone
KEV StatusNot Listed

MITRE ATT&CK Mapping

T1552Unsecured Credentials
Credential Access
T1005Data from Local System
Collection
T1190Exploit Public-Facing Application
Initial Access
CWE-200
Exposure of Sensitive Information to an Unauthorized Actor

The product exposes sensitive information to an actor who is not authorized to have access to that information.

Vulnerability Timeline

Patch commit merged into linuxfabrik-lib main branch
2026-07-07
Vulnerability published as CVE-2026-67435 / GHSA-4jc5-g844-4x33
2026-07-29
Vulnerability data indexed in EPSS and OSV databases
2026-07-30

References & Sources

  • [1]GitHub Security Advisory GHSA-4jc5-g844-4x33
  • [2]Fix Commit: Strip custom headers on cross-origin redirects
  • [3]linuxfabrik-lib Release v6.0.0
  • [4]NVD Record for CVE-2026-67435
  • [5]CVE.org Record for CVE-2026-67435

Attack Flow Diagram

Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.

More Reports

•33 minutes ago•CVE-2026-67432
7.5

CVE-2026-67432: High Severity Denial of Service in Model Context Protocol (MCP) Ruby SDK

An uncontrolled memory allocation vulnerability (CWE-770) exists in the Model Context Protocol (MCP) Ruby SDK (the `mcp` gem) prior to version 0.23.0. The SDK's StreamableHTTPTransport and StdioTransport layers fail to impose bounds on incoming payloads. An unauthenticated attacker can exploit these issues by transmitting massive, nested payloads to exhaust worker memory, leading to process termination.

Amit Schendel
Amit Schendel
1 views•7 min read
•about 2 hours ago•CVE-2026-67431
8.3

CVE-2026-67431: Session Poisoning via Improper Access Control in Model Context Protocol Ruby SDK

An Improper Access Control vulnerability exists in the Model Context Protocol (MCP) Ruby SDK prior to version 0.23.0. The stateful transport implementation failed to bind established sessions to their original owners or connection contexts, enabling unauthorized actors with access to active session IDs to execute arbitrary tools or alter session state.

Alon Barad
Alon Barad
4 views•7 min read
•about 4 hours ago•CVE-2026-67429
10.0

CVE-2026-67429: Arbitrary File Write and Path Traversal in Flyto2 Core Modules

CVE-2026-67429 is a critical path traversal vulnerability in Flyto2 Core file-writing modules, including image.download and twelve other modules. By exploiting an insecure validation check that relied on user-controlled parameters, unauthenticated remote attackers can bypass directory confinement and write arbitrary files to the file system, leading to remote code execution.

Alon Barad
Alon Barad
4 views•6 min read
•about 5 hours ago•CVE-2026-67427
8.6

CVE-2026-67427: Host Environment Variable Access Policy Bypass via Template Interpolation in Flyto2 Core

CVE-2026-67427 is a capability bypass vulnerability in the Flyto2 Core workflow execution kernel. Due to a logical inconsistency in how dynamic parameters are resolved, the system evaluates environment variables via template interpolation prior to executing capability filter validation. This permits unprivileged workflow definitions to completely bypass denylist restrictions on the `env.get` module, exfiltrating critical host configurations, API tokens, and credentials via allowed communication channels.

Amit Schendel
Amit Schendel
6 views•5 min read
•about 6 hours ago•CVE-2026-67425
8.6

CVE-2026-67425: Insecure Credential Forwarding in Flyto2 Core

An insecure credential forwarding vulnerability in Flyto2 Core prior to version 2.26.6 allows attackers to exfiltrate operator API keys. This occurs because the system forwards environment-derived API keys to user-controlled custom endpoints, bypassing SSRF guards designed only for private target validation.

Amit Schendel
Amit Schendel
6 views•6 min read
•about 7 hours ago•CVE-2025-4318
9.0

CVE-2025-4318: Remote Code Execution in AWS Amplify codegen-ui

A critical remote code execution (RCE) vulnerability exists in AWS Amplify Studio's code-generation library (@aws-amplify/codegen-ui). An authenticated attacker with permissions to create or modify component schemas can inject malicious JavaScript code into those schemas. When the Amplify CLI or the build environment processes these schemas, the unvalidated expressions are executed within the host Node.js environment, leading to full system compromise.

Alon Barad
Alon Barad
9 views•5 min read