Skip to content

Resolve dependency advisories: cowlib (retire the 43971 ignore) - #134

Merged
deepfates merged 1 commit into
mainfrom
claude/deps-audit
Sep 18, 2026
Merged

deepfates merged 1 commit into
mainfrom
claude/deps-audit

Conversation

@deepfates

Copy link
Copy Markdown
Owner

imp's lock needs no change. This PR retires one stale advisory ignore.

Audit state

mix hex.audit and mix deps.audit on main find no unhandled advisory. imp already pins the newest release of every package that carries one: cowlib 2.20.0, cowboy 2.19.0, mint 1.10.0, ranch 2.3.0. It has no gun dependency, so GHSA-w4f7-4cxr-rv3c does not apply, and mint 1.10.0 already clears EEF-CVE-2026-82728 (HIGH) and EEF-CVE-2026-82729 (MEDIUM), the two advisories that hit dwell.

The change

.audit_ignore listed EEF-CVE-2026-43971 (MEDIUM, Link header directive smuggling in cow_link:link/1) with the retirement condition "when the ERLEF Hex range gains fixed: 2.20.0". That has now happened. api.osv.dev/v1/vulns/EEF-CVE-2026-43971 serves the range {introduced: 2.9.0, fixed: 2.20.0}, and mix.lock pins 2.20.0, so the advisory no longer matches the locked dependencies. mix hex.audit was saying so directly:

ignore_advisories entry "EEF-CVE-2026-43971" (set in mix.exs) does not match any advisory for the locked dependencies and can be removed

Left in place, the entry would silently swallow a future 43971 finding. Removing it is the file's own documented behaviour, so the entry and its comment block are deleted, and the shared-facts paragraph that said "All three ERLEF records" is corrected to the two that remain.

Not resolved, unchanged

EEF-CVE-2026-43966 (MEDIUM) and EEF-CVE-2026-43969 (LOW) stay ignored, with their existing write-ups untouched. Neither has a fixed cowlib release: both ERLEF records carry an open-ended range with no fixed event. 43966's fix shipped in cowboy 2.16.0 and imp pins 2.19.0; 43969 has no fix anywhere, and cow_cookie:cookie/1 has no caller in imp's tree. test/dependency_advisory_mitigation_test.exs continues to lock both claims.

Tests

mix quality.check (includes mix deps.audit --ignore-file .audit_ignore): no vulnerabilities found; the two ignores above reported as ignored, and no unmatched-entry warning.

mix check (format --check-formatted, compile --warnings-as-errors, test): 54 doctests, 9 properties, 2832 tests, 0 failures, 13 skipped (220 excluded).

The entry's own retirement condition was "when the ERLEF Hex range gains
fixed: 2.20.0". It has: api.osv.dev now serves EEF-CVE-2026-43971 with
{introduced: 2.9.0, fixed: 2.20.0}, and mix.lock pins cowlib 2.20.0, so
the advisory no longer matches. mix hex.audit was reporting the entry as
unmatched and removable.

No lock change: cowlib 2.20.0, cowboy 2.19.0, mint 1.10.0 and ranch 2.3.0
are already the newest releases and imp has no gun dependency. The two
remaining ignores stand as written; neither has a fixed release.

Also drops "All three" from the shared-facts paragraph, which is now two.
@deepfates
deepfates merged commit fcc1838 into main Sep 18, 2026
10 checks passed
@deepfates
deepfates deleted the claude/deps-audit branch September 18, 2026 19:19
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