Skip to content

Bump cowboy/cowlib for hex.audit security advisories - #148

Merged
bbangert merged 1 commit into
mainfrom
chore/hex-audit-cowboy-cowlib
Aug 5, 2026
Merged

Bump cowboy/cowlib for hex.audit security advisories#148
bbangert merged 1 commit into
mainfrom
chore/hex-audit-cowboy-cowlib

Conversation

@bbangert

@bbangert bbangert commented Aug 5, 2026

Copy link
Copy Markdown
Owner

Scoped mix deps.update cowboy cowlib (lockfile only, no constraint changes): cowboy 2.17.0 → 2.18.0, cowlib 2.18.0 → 2.19.0, plus transitive ranch 2.2.0 → 2.2.1.

Fixed

  • EEF-CVE-2026-59248 (HIGH) — unbounded HPACK/QPACK prefixed-integer decoding in cowlib, memory-exhaustion DoS → fixed in cowlib 2.19.0
  • EEF-CVE-2026-65624 (MEDIUM) — cowboy HTTP/1.1 max_headers bypass via duplicate header names → fixed in cowboy 2.18.0

Residual (no fix released upstream)

mix hex.audit still flags cowlib for EEF-CVE-2026-43966 (MEDIUM, response splitting via non-VCHAR bytes in cow_http_struct_hd:escape_string/2) and EEF-CVE-2026-43969 (LOW, cookie header injection via cow_cookie:cookie/1). Per OSV, every cowlib ≥ 2.9.0 is affected and no patched release exists yet — 2.19.0 is the latest. Both require the app to reflect attacker-controlled data into response cookies/structured headers, which our LAN-only LiveView UI doesn't do; worth re-checking on the next cowlib release.

Verification

  • mise run test: 930 passed, 0 failures
  • dialyzer: passed

🤖 Generated with Claude Code

Fixes the HPACK/QPACK memory-exhaustion DoS (CVE-2026-59248, HIGH)
and cowboy's duplicate-header max_headers bypass (CVE-2026-65624).
Two residual cowlib advisories have no fixed release upstream yet.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@bbangert
bbangert merged commit 52746d4 into main Aug 5, 2026
6 checks passed
@bbangert
bbangert deleted the chore/hex-audit-cowboy-cowlib branch August 5, 2026 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant