Skip to content
OpenAdvisories
Medium · 6.3 CVE-2026-43971 EEF-CVE-2026-43971EUVD-2026-60573GHSA-gg23-fwhr-prjh

Link Header Directive Smuggling via Unescaped target/rel/Attribute Keys in cow_link:link/1

Published Aug 18, 2026 · Updated Sep 16, 2026 · Assigned by EEF

Description

Improper Encoding or Escaping of Output vulnerability in ninenines cowlib allows Link header directive smuggling via unescaped special characters in cow_link:link/1.

cow_link:do_link/1 in cowlib interpolates the target URI, rel value, and attribute keys directly into the serialized Link: header value without escaping or token-grammar validation. A > byte in target prematurely closes the URI slot, allowing an attacker to append additional link entries with attacker-chosen rel directives. A " or \ in rel escapes the quoted string and opens new parameters. Any byte — including whitespace, =, and " — in an attribute key is emitted verbatim. Because browsers act on Link: directives such as rel="preconnect", rel="preload", and rel="prerender", an attacker who can influence these fields in an application that round-trips parsed Link headers through cow_link:link/1 can force victim browsers to make out-of-band connections to attacker-controlled origins.

This issue affects cowlib: from 2.9.0 before 2.20.0.

Affected products

VendorProductAffectedFixed
ninenines cowlib 2.9.0 – < 2.20.0 2.20.0

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 erlang-cowlib 2.20.0-1 —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 erlang-cowlib No fix yet —
Ubuntu 26.04 LTS erlang-cowlib No fix yet —
Ubuntu 24.04 LTS erlang-cowlib No fix yet —
Ubuntu 22.04 LTS erlang-cowlib No fix yet —
Ubuntu 20.04 LTS erlang-cowlib No fix yet —
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 18.04 LTS erlang-cowlib No fix yet —
Ubuntu 16.04 LTS erlang-cowlib No fix yet —
ReleasePackageFixed inAdvisory
Red Hat Hardened Images 1 rabbitmq-server4.3 4.3.5-1.1.hum1 RHSA-2026:66210

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 rabbitmq-server 3.13.7-9 —

Affected packages

EcosystemPackageAffectedFixedRecord
Hex cowlib >= 2.9.0, < 2.20.0 2.20.0 EEF-CVE-2026-43971

Advisories 1

References