製品・ソフトウェアに関する情報
Hexにおける複数の脆弱性
Title Hexにおける複数の脆弱性
Summary

hexpmのhex(Hex.RemoteConvergerモジュール)におけるデータ真正性の検証不足の脆弱性により、未検証のlockfileチェックサムを介して依存関係の整合性を回避することが可能です。Hexは再現可能で整合性が検証されたビルドを確保するために、mix.lockファイルに依存関係のチェックサムを保存します。しかし、Hex.RemoteConverger.verify_resolved/2関数は、Hex.Utils.lock/1が返す文字列ベースの依存関係名を使用しているのに対し、検証ロジックがアトムベースの名前と比較しているため、チェックサム検証を実行しません。この型の不一致により検証コードパスが静かにスキップされます。パッケージが最初にレジストリからダウンロードされる際にはチェックサムが検証されますが、lockfileと解決済み依存関係間の不一致は検出されません。キャッシュされたパッケージに影響を与えられる攻撃者(例えばローカルキャッシュの汚染やレジストリの侵害を介して)は、改ざんされた依存関係の内容を検出されずに受け入れさせることが可能です。mix.lockファイルはレジストリからのチェックサム値で静かに書き換えられ、改ざんの証拠が消去されます。この問題はhexの0.16.0から2.4.2未満のバージョンに影響します。

Possible impacts 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date April 30, 2026, midnight
Registration Date May 7, 2026, 11:28 a.m.
Last Update May 7, 2026, 11:28 a.m.
CVSS3.0 : 警告
Score 5.9
Vector CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
Affected System
Hex
Hex 0.16.0 以上 2.4.2 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
Change Log
No Changed Details Date of change
1 [2026年05月07日]
  掲載
May 7, 2026, 11:28 a.m.

NVD Vulnerability Information
CVE-2026-32148
Summary

Insufficient Verification of Data Authenticity vulnerability in hexpm hex (Hex.RemoteConverger module) allows dependency integrity bypass via unverified lockfile checksums.

Hex stores checksums for dependencies in the mix.lock file to ensure reproducible and integrity-checked builds. However, Hex.RemoteConverger.verify_resolved/2 never executes checksum verification because the lock data returned by Hex.Utils.lock/1 uses string-based dependency names, while the verification logic compares against atom-based names. This type mismatch causes the verification code path to be silently skipped. Checksums are still validated when packages are initially downloaded from the registry, but mismatches between the lockfile and resolved dependencies are not detected.

An attacker who can influence cached packages (e.g., via local cache poisoning or a compromised registry) can provide modified dependency contents that will be accepted without detection. The mix.lock file is silently rewritten with the checksum values from the registry, erasing evidence of tampering.

This issue affects hex: from 0.16.0 before 2.4.2.

Publication Date May 1, 2026, 4:16 a.m.
Registration Date May 2, 2026, 4:06 a.m.
Last Update May 5, 2026, 11:16 a.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:hex:hex:*:*:*:*:*:*:*:* 0.16.0 2.4.2
Related information, measures and tools
Common Vulnerabilities List