PT-2026-110633 · Hexpm Hex · Hexpm Hex

·

CVE-2026-105668

·

Published

2026-10-12

·

Updated

2026-10-12

CVSS v4.0

7.1

High

VectorAV:N/AC:L/AT:P/PR:H/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Name of the Vulnerable Software and Affected Versions hexpm hex versions 2.5.0 through 2.5.1
Description A protection mechanism failure allows a package owner or an attacker with account access to bypass the release-age cooldown. The cooldown, configured via cooldown or HEX COOLDOWN, normally withholds versions younger than a specific age during dependency resolution. However, when a release locked in mix.lock is retired or has a security advisory, the functions Hex.RemoteConverger.build cooldown bypass/3 and Hex.RemoteConverger.unsafe lock bypass/1 lift the cooldown for that package and its dependencies to allow mix deps.update to move to a safe release. Because Hex.Registry.Cooldown.versions/2 checks the bypass by package name alone, an attacker can publish a malicious release and retire the currently locked version, forcing the system to select the new malicious release regardless of its age. This bypass also extends to packages with the same name in other repositories. This issue does not affect cooldowns configured through organization dependency policies.
Recommendations Update hexpm hex to version 2.5.2 or later using mix local.hex. Enforce the cooldown through an organization dependency policy instead of the local cooldown setting. Run mix hex.audit before mix deps.update and avoid updating packages whose locked release was retired until the replacement has been reviewed.

Fix

Protection Mechanism Failure

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

CVE-2026-105668
GHSA-PQHP-5X9X-69H7

Affected Products

Hexpm Hex