注目★★★★★GitHub Advisory
Mnemosyne v3.10.0以下、JWT偽造で認証突破
30秒で把握
- 1Mnemosyne v3.10.0以下でJWT署名検証を欠き認証突破
- 2CVSS 9.1、認証なしで任意ユーザーの同期データを読み書き可能
- 3v3.10.1でHS256検証を導入、公開endpointは更新必須
要約
Mnemosyneのsync serverにJWT署名検証の欠落があり、認証なしで任意ユーザーになりすませた。攻撃者は同期データの読み取りや改変が可能で、CVSS 3.1は9.1(Critical)だった。影響範囲はsync server endpointを公開するv3.10.0以下で、v3.10.1でHS256の厳格検証、定数時間比較、exp検証などを導入して修正した。localhost限定運用では影響度が下がるが、ネットワーク到達可能な環境では認証情報や秘密鍵なしで悪用できる。
あなたへの影響
Mnemosyneのsync serverを利用するチームは、近日中にv3.10.1へ更新し、更新までendpointを信頼できるクライアントに限定してください。
推奨:JWTのHS256検証は署名とアルゴリズムを確認してトークンの正当性を検証する仕組みです。