| Title | Leon TimmermansのCrypt::Argon2における複数の脆弱性 |
|---|---|
| Summary | Crypt::Argon2のバージョン0.017から0.031未満のPerl用モジュールは、空のエンコード済み入力に対してargon2_verify関数でヒープの境界外読み取りを行います。argon2_verifyの自動検出形式では、encoded_lenが0であることを確認せずにencoded_len - 1を長さ引数としてmemchrに渡します。エンコード済み文字列が空の場合、size_t型の引き算がアンダーフローしてSIZE_MAXとなり、memchrは隣接するヒープメモリを'$'の区切りバイトを探して走査します。argon2_verifyを呼び出す側が、正当であっても空である可能性のある格納ハッシュ(例えばプレースホルダ行やNULLカラムが空文字列として具現化された場合)に対してこれを実行すると、ヒープの境界外メモリを読み取り、プロセスがクラッシュし、後続のパース処理で隣接する'$'バイトの位置が漏洩する恐れがあります。 |
| Possible impacts | 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアの一部が停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| Solution | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| Publication Date | May 13, 2026, midnight |
| Registration Date | May 15, 2026, 10:53 a.m. |
| Last Update | May 15, 2026, 10:53 a.m. |
| CVSS3.0 : 警告 | |
| Score | 5.3 |
|---|---|
| Vector | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L |
| Leon Timmermans |
| Crypt::Argon2 0.017 以上 0.031 未満 |
| No | Changed Details | Date of change |
|---|---|---|
| 1 | [2026年05月15日] 掲載 |
May 15, 2026, 10:53 a.m. |
| Summary | Crypt::Argon2 versions from 0.017 before 0.031 for Perl perform a heap out-of-bounds read in argon2_verify on empty encoded input. The auto-detect form of argon2_verify passes encoded_len - 1 as the length argument to memchr without checking that encoded_len is non-zero. When the encoded string is empty, the size_t subtraction underflows to SIZE_MAX and memchr scans adjacent heap memory looking for a '$' separator byte. A caller that invokes argon2_verify against a stored hash that may legitimately be empty (for example a placeholder row or a NULL column materialised as an empty string) reads out-of-bounds heap memory, which can crash the process or leak the position of an adjacent '$' byte into subsequent parsing. |
|---|---|
| Publication Date | May 13, 2026, 11:18 p.m. |
| Registration Date | May 15, 2026, 4:20 a.m. |
| Last Update | May 14, 2026, 4:23 a.m. |
| Configuration1 | or higher | or less | more than | less than | |
| cpe:2.3:a:leont:crypt\:\:argon2:*:*:*:*:*:perl:*:* | 0.017 | 0.031 | |||