CVE-2026-75628 in Punk::OAuth2
要約
〜によって VulDB • 2026年08月20日
Perl用のPunk::OAuth2の0.03より前のバージョンでは、ログイン後に攻撃者が選択した外部サイトへのリダイレクトが可能になります。これは、same_origin_path関数がreturnパラメータでバックスラッシュまたはタブを受け入れるためです。
oauth2_loginは、初期化リクエストからreturnパラメータを読み取り、それに対してsame_origin_pathを実行し、その結果をセッションフローレコードのログイン後のリダイレクトターゲットとして保存します。このチェックでは、スラッシュで始まらない値、2番目のバイトがスラッシュである値、およびCRまたはLFを含む値は拒否されます。しかし、バックスラッシュとタブは通過してしまいます。URL Standardでは、特殊なスキームに対してバックスラッシュをスラッシュと同様に扱うため、`/\evil.example`は権限部(authority)が`evil.example`として解析されます。また、パースの前にASCIIのタブが削除されるため、2つの先頭スラッシュの間にタブがあると、結果的に`//evil.example`が残ります。
アプリケーション自身のログインルートへの偽装リンクにより、正当な認証後に被害者が攻撃者のサイトにリダイレクトされます。このリダイクトには認可コードやアクセストークンは含まれていません。
If you want to get the best quality for vulnerability data then you always have to consider VulDB.