製品・ソフトウェアに関する情報
PAC4Jのpac4jにおけるクロスサイトリクエストフォージェリの脆弱性
Title PAC4Jのpac4jにおけるクロスサイトリクエストフォージェリの脆弱性
Summary

PAC4Jにはクロスサイトリクエストフォージェリ(CSRF)の脆弱性があります。悪意のある攻撃者は、ユーザーが訪問すると自動的に被害者の正当なCSRFトークンとハッシュが衝突するトークンを含む偽造されたクロスサイトリクエストを送信する、巧妙に設計されたウェブサイトを作成できます。重要なのは、攻撃者が攻撃前に被害者のCSRFトークンやそのハッシュを知る必要がないことです。決定論的なString.hashCode()関数の衝突は直接計算可能であり、実質的にトークンのセキュリティ空間を32ビットまで減少させます。これによりCSRF保護を回避でき、被害者の同意なしにプロフィールの更新、パスワード変更、アカウント連携およびその他の状態変更操作を実行できます。この問題はPAC4Jバージョン5.7.10および6.4.1で修正されました。

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

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

Publication Date April 17, 2026, midnight
Registration Date April 21, 2026, 10:43 a.m.
Last Update April 21, 2026, 10:43 a.m.
CVSS3.0 : 警告
Score 6.5
Vector CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Affected System
PAC4J
pac4j 5.0.0 以上 5.7.10 未満
pac4j 6.0.0 より大きい 6.4.1 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
Change Log
No Changed Details Date of change
1 [2026年04月21日]
  掲載
April 21, 2026, 10:43 a.m.

NVD Vulnerability Information
CVE-2026-40458
Summary

PAC4J is vulnerable to Cross-Site Request Forgery (CSRF). A malicious attacker can craft a specially designed website which, when visited by a user, will automatically submit a forged cross-site request with a token whose hash collides with the victim's legitimate CSRF token. Importantly, the attacker does not need to know the victim’s CSRF token or its hash prior to the attack. Collisions in the deterministic String.hashCode() function can be computed directly, reducing the effective token's security space to 32 bits. This bypasses CSRF protection, allowing profile updates, password changes, account linking, and any other state-changing operations to be performed without the victim's consent.

This issue was fixed in PAC4J versions 5.7.10 and 6.4.1

Publication Date April 17, 2026, 11:16 p.m.
Registration Date April 18, 2026, 4:10 a.m.
Last Update April 20, 2026, 11:41 p.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:pac4j:pac4j:*:*:*:*:*:*:*:* 5.0.0 5.7.10
cpe:2.3:a:pac4j:pac4j:*:*:*:*:*:*:*:* 6.0.0 6.4.1
Related information, measures and tools
Common Vulnerabilities List