CVE-2026-105280
CVE-2026-105280 — Hex writes unverified package tarballs to standard output in mix hex.package fetch
Improper Validation of Integrity Check Value vulnerability in hexpm hex allows a package mirror to substitute the tarball that mix hex.package fetch PACKAGE VERSION --output - writes to standard output. Hex compares a fetched tarball's inner and outer checksums with the repository's signed registry before writing it to a file or unpacking it. The standard output branch of mix hex.package fetch writes the bytes returned by Hex.SCM.fetch/3 without that comparison, and Hex.SCM.fetch/3 doesn't verify freshly downloaded tarballs itself. When a mirror configured with HEX_MIRROR_URL or mirror_url serves altered bytes, the command prints them and exits successfully, while the same fetch with --output FILE fails with a checksum mismatch. Hex also prints diagnostics to standard output while the command runs: the body of a failed HTTP response from the update check or a registry fetch, and API warnings from the x-hex-message header. A mirror that answers one of those requests with an error whose body is a tar archive gets that archive written to standard output ahead of the verified tarball, so a pipeline that unpacks standard output extracts the mirror's files. This happens even when the checksum check then fails, because the archive is already on standard output. This issue affects hex: from 0.20.2 before 2.5.2.
Published Updated Sources: NVD, hexpm (CNA), GitHub, Red Hat (VEX), SOCRadar CTI
Triage
Is it exploited, how likely is exploitation, what does it touch, and how severe do the scoring sources call it.
Exploitation
Exploit code
public exploit, none observed
EPSS
0%
ahead of 0% of scored CVEs
CVSS base
6.9
medium · 2 sources
Remediation
The vendor's own words where we have them.
Upgrade Hex to 2.5.2 or later, for example with mix local.hex. mix hex.package fetch PACKAGE VERSION --output - then verifies the registry checksum before writing the tarball to standard output and prints its messages to standard error.
Red Hat VEX · CVE-2026-105280
First 24 hours
Ordered from the record's own fields — exposure first, because you cannot patch what you have not found.
- Identify exposed assets running affected vendor/product/version combinations.
- Prioritize based on EPSS, PoC availability, and external exposure.
- Search available logs for exploit probes, errors, authentication anomalies, or suspicious child processes matching the vulnerability class.
Affected scope
Vendor, product and version as the advisories word them.
| Vendor | Product | Versions | Status |
|---|---|---|---|
| hexpm | hex | 0.20.2 to < 2.5.2 | Vulnerable |
| hexpm | hex | d1f5a085d9d4748e1f7d195e4bc39ebd77c28d9c | Vulnerable |
Attack characteristics
The CVSS vector, decoded. It describes the attack, not your exposure to it.
Scope
X
Attack Complexity
Low
Attack Vector
Network
Privileges Req
None
User Interaction
A
Every base score collected
Sources score independently and disagree; each row says who scored it and under which version.
| Score | Version | Severity | Expl. | Impact | Source |
|---|---|---|---|---|---|
| 6.9 | CVSS 4.0 | medium | — | — | hexpm (CNA) |
| 5.3 | CVSS 3.1 | medium | — | — | Red Hat (VEX) |
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:H/VA:N/SC:N/SI:H/SA:N
What this weakness leads to
MITRE's own consequences and mitigations for the weakness class — the authority's wording, not guidance derived from the CVSS vector.
CWE-354 · Improper Validation of Integrity Check Value
- Modify Application Data
- Other
- Hide Activities
Mitigation: Ensure that the checksums present in messages are properly checked in accordance with the protocol specification before they are parsed and used.::
Weakness & attack patterns
- CWE-354
Attack patterns reported against this CVE. The ATT&CK techniques below are inferred from its weakness class.
Public exploit
Capability, not use: code existing is a different claim from anyone running it.
Repositories
1
Detection
Read off the CVSS vector and the weakness class. Starting points, not rules we have tested.
- Search application, proxy, and WAF logs for requests touching /3.
- Prioritize edge telemetry for network-reachable hex.
- Monitor for scanner or exploit-pattern traffic after 1 public PoC repositories were reported.
Timeline
What happened to this CVE, newest first — with the readings a source repeats on a schedule counted underneath rather than listed.
- 2026
Added · CVSS 3.1 6.9 (AV:N)
Oct 12, 2026 · NVD
Initial · CVE published
Oct 12, 2026 · NVD
CVE published by MITRE.
Oct 12, 2026 · SOCRadar CTI
References
8 on the record
- cna.erlef.org/cves/CVE-2026-105280.html
Vendor Advisory, Mitre, NIST
- github.com/hexpm/hex/commit/69489f8b74213f03db10169e6e5407e6d5fee512
Exploit, Third Party Advisory, Mitre, NIST
- github.com/hexpm/hex/commit/8a14632ca6ba8a8afd2a3f2098bc267c13e13d93
Exploit, Third Party Advisory, Mitre, NIST
- github.com/hexpm/hex/commit/d1f5a085d9d4748e1f7d195e4bc39ebd77c28d9c
Exploit, Third Party Advisory, Mitre, NIST
- github.com/hexpm/hex/security/advisories/GHSA-98jr-23pm-vj7c
Exploit, Third Party Advisory, Mitre, NIST
- osv.dev/vulnerability/EEF-CVE-2026-105280
Vendor Advisory, Mitre, NIST
- access.redhat.com/security/cve/CVE-2026-105280
Vendor Advisory
- www.cve.org/CVERecord?id=CVE-2026-105280
Vendor Advisory
Elsewhere on this site
- hexpmevery CVE for this vendor
- Unclassifiedsame class
- CWE-354other pages naming this weakness
Not in any source we poll
Listed rather than left blank: an empty field and an unmeasured one look identical on screen, and only one is a reason to look elsewhere.
- No confirmed IOCs, IP addresses, domains, file hashes, or malware artifacts supplied.
- No organization-specific asset inventory, compensating-control status, or patch deployment evidence supplied.
- No exploit packet captures, log samples, or incident case IDs supplied.
Answered from this record1
What should defenders know first?
CVE-2026-105280 is Hex writes unverified package tarballs to standard output in mix hex.package fetch, a medium vulnerability affecting hex from hexpm. The current evidence does not list it in CISA KEV, and the exploit status is: Active exploitation is not confirmed from current sources for CVE-2026-105280. Public exploit evidence is: 1 public PoC repositories reported; 0 marked weaponized in current dataset. The affected-version evidence is listed in the key facts and affected products tables. Defenders should first verify whether exposed or business-critical assets run those versions, then apply vendor patches or mitigations, restrict reachable attack surface, and preserve logs for detection review. CVSS 6.9 describes technical severity, while EPSS 0% helps estimate near-term exploit likelihood; neither replaces asset context. Unknown fields should remain explicit in tickets, and threat actor, IOC, victimology, or payload claims should not be added unless a cited source supports them. Monitor CISA KEV, vendor advisories, NVD changes, public PoC repositories, and internal telemetry for update triggers.