CVE-2026-43966: HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/2

Published Jun 8, 2026
·
Updated

HTTP Response Splitting via Non-VCHAR Bytes in cowhttpstructhd:escapestring/2

Other sources

Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Response Splitting') vulnerability in ninenines cowlib allows HTTP response splitting via non-VCHAR bytes in structured-fields string values.

cowhttpstructhd:escapestring/2 in cowlib only escapes \ and ", passing all other bytes through verbatim. This creates an encoder/decoder asymmetry: the matching parser accepts only printable ASCII (0x20–0x7E, excluding " and \), but the encoder emits any byte including CR and LF. An application that builds a structured HTTP header via cowhttpstructhd:item/1 (or a higher-level wrapper such as cowhttphd:wtprotocol/1) from attacker-controlled input can have \r\n injected into the serialized header value. Once on the wire, the injected CRLF terminates the current header and any following bytes are interpreted as a new header, enabling HTTP response splitting.

This issue affects cowlib from 2.9.0.

MITRE

Affected Software

4 affected componentsFixes available
hex/cowlib>=2.9.0
Microsoft azl3 rabbitmq-server 3.13.7-6<3.13.7-7
3.13.7-7
Microsoft azl3 rabbitmq-server 3.13.7-8<3.13.7-8
3.13.7-8
ninenines cowlib>=2.9.0<2.16.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 3.13.7-7
  2. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 3.13.7-8
  3. Upgrade

    Upgrade cowlib to a version that resolves this vulnerability.

    Fixed in 2.9.0
  4. Configuration

    Modify/override cow_http_struct_hd:escape_string/2 so that structured-fields string values cannot contain CR (\r) or LF (\n); currently it only escapes backslash (\) and double-quote ("), passing other bytes through verbatim, which enables HTTP response splitting.

    cow_http_struct_hd:escape_string/2 (cowlib) CRLF sanitization for structured-fields string values = Escape or remove CR (\r) and LF (\n) so they are not emitted verbatim

Event History

Jun 8, 2026
CVE Published
via MITRE·04:34 PM
Data Sourced
via MITRE·04:34 PM
DescriptionWeakness
Data Sourced
via NVD·05:16 PM
RemedyDescriptionSeverityWeaknessAffected Software
Jun 19, 2026
Data Sourced
via Microsoft·08:01 AM
DescriptionSeverityWeaknessAffected Software
Updated
via Microsoft·08:01 AM
DescriptionSeverity
Updated
via Microsoft·08:01 AM
Affected Software

Frequently Asked Questions

1

What is the severity of CVE-2026-43966?

CVE-2026-43966 has a medium severity rating of 6.3 according to the CVSS score.

2

How do I fix CVE-2026-43966?

To fix CVE-2026-43966, ensure that you update to the latest version of the cowlib library that addresses this vulnerability.

3

What kind of vulnerability is CVE-2026-43966?

CVE-2026-43966 is an HTTP Response Splitting vulnerability caused by improper neutralization of CRLF sequences in HTTP headers.

4

Which software is affected by CVE-2026-43966?

The CVE-2026-43966 vulnerability affects the hex/cowlib software library.

5

What can be exploited with CVE-2026-43966?

CVE-2026-43966 can be exploited to perform HTTP response splitting attacks through non-VCHAR bytes in structured-fields.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203