CVE-2026-78619 in Punk-Plugin-TOTP情報

要約

〜によって VulDB • 2026年08月25日

Perl用のPunk::Plugin::TOTPは0.05より前のバージョンにおいて、totp_use_recoveryがユーザー識別子を数値として比較するため、2要素認証のチャレンジ時に別のアカウントのリカバリーコードを受け入れてしまいます。

ヘルパーは、すべてのユーザーの行にわたって、送信されたコードのダイジェストのみを検索対象とします。そのため、その後に続く所有権テスト(ownership test)が、コードを発行されたアカウントに紐づける唯一の手段となります。このテストでは、Perlの整数強制変換を通じて、レコードのuser_idをチャレンジ中のユーザーのIDと比較しますが、先頭に数字のない識別子は0に変換されるため、それらの間には等値性が成り立ちます。ユーザーモデルがユーザー名、メールアドレス、またはUUIDをキーとして使用している場合このケースに該当し、数値型のキーは意図通りに比較されます。

チャレンジルートではTOTP検証が失敗した後に送信された値をヘルパーに渡すため、攻撃者が被害者のパスワードを知っており、かつ自分自身のリカバリーコードを持っている場合、被害者の2要素認証を突破することができます。

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

責任者

CPANSec

予約する

2026年08月24日

モデレーション

承諾済み

エントリ

VDB-395343

EPSS

0.00000

アクティビティ

非常低い

ソース

Do you want to use VulDB in your project?

Use the official API to access entries easily!