Cyber Resilience

CVE-2026-43968

Ninenines Cowlib 2.6.0 – 2.16.1

Published
11 May 2026
Modified
17 June 2026
Patch / advisory
CVSS Score v4 6.3
Click a component to see what it means
Raw vectorCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
EPSS Score 0.0027 18th percentile
Risk Priority 39 floored blend · peak EPSS

Summary

CVE-2026-43968 is a medium-severity CRLF Injection (CWE-93) vulnerability in Ninenines Cowlib. Its CVSS base score is 6.3 (Medium).

Operationally, exploitation aligns with the MITRE ATT&CK technique Content Injection (T1659); ranked at the 18th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to SI-10 (Information Input Validation) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in ninenines cowlib allows SSE event splitting and injection via unvalidated field values. cow_sse:event/1 in cowlib guards the id and event fields against \n but not against bare \r, and the internal…

more

prefix_lines/2 function used for data and comment fields splits only on \n. Because the SSE specification requires decoders to treat \r\n, \r, and \n as equivalent line terminators, an attacker who controls any of these fields can inject additional SSE lines and forge a complete event with an arbitrary event type and data payload on the receiving end. In typical deployments where browser EventSource clients or other SSE consumers dispatch on event.type and render event.data, this enables event splitting, client-side logic manipulation, and stored-XSS-equivalent behaviour when event data is inserted into the DOM. This issue affects cowlib from 2.6.0 before 2.16.1.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1659 Content Injection Initial Access
Adversaries may gain access and continuously communicate with victims by injecting malicious content into systems through online network traffic.
T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2026-43969Same product: Ninenines Cowlib
CVE-2026-7790Same product: Ninenines Cowlib
CVE-2026-49130Shared CWE-93
CVE-2025-6175Shared CWE-93
CVE-2026-44092Shared CWE-93
CVE-2026-12357Shared CWE-93
CVE-2026-39394Shared CWE-93
CVE-2026-35601Shared CWE-93
CVE-2025-41376Shared CWE-93
CVE-2026-33128Shared CWE-93

Affected Assets

ninenines
cowlib
2.6.0 — 2.16.1

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V4.2.4

Mitigating Controls (NIST 800-53 r5) AI

Input validation directly stops untrusted data containing CRLF sequences from reaching the component that treats CRLF as a delimiter.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure SDLC practices directly require input neutralization and validation to block CRLF injection.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can detect CRLF flaws but does not itself implement the neutralization.

prevents

Secure development lifecycle mandates input validation and output encoding that directly prevents CRLF injection.

prevents

Application security requirements include rules for neutralizing special characters such as CRLF in inputs.

prevents

Secure architecture principles encourage safe handling of untrusted data but do not prescribe specific CRLF controls.

prevents

Secure coding standards explicitly require neutralization of CRLF sequences, fully addressing this weakness.

References