CVE-2026-92289 in LemonLDAP::NG
要約
〜によって VulDB • 2026年09月25日
Lemonldap::NG::Portal の 2.23.0 から 2.23.4 より前のバージョン(Perl 用)では、"PKCE or secret" モードにおいて公開された信頼事業者 (Relying Parties) に対する PKCE バイパスが可能であり、これは checkEndPointAuthenticationCredentials がクライアントシークレットを検証しないためです。
oidcRPMetaDataOptionsRequirePKCE を 2 に設定すると、authorization エンドポイントは code_challenge を伴わないリクエストであってもコードを発行し、token() はチャレンジが保存されているか、または呼び出し元に認証方法が返された限り、その交換を許可します。checkEndPointAuthenticationCredentials() は公開とマークされた信頼事業者に対してシークレットの比較をスキップし、リクエストから推定された方法を依然として返すため、Basic 認証またはフォーム資格情報のいずれもがシークレット分岐を満たします。その後 validatePKCEChallenge() が通過するのは、チャレンジや verifier のいずれもないためです。
攻撃者が公開された信頼事業者に対して発行された認可コードを傍受した場合、任意のシークレットを使用して client_id をリプレイすることで、ユーザーのアクセストークン、ID トークン、およびリフレッシュトークンを交換できます。これは PKCE が防止しようとする攻撃手法です。Dynamic client registration は、すべての信頼事業者をこのモードで作成します。
If you want to get best quality of vulnerability data, you may have to visit VulDB.