おはようございます。ritouです。 なんの話? これの話です。 RFC 8725 JSON Web Token Best Current Practices をざっくり解説する - Qiita 攻撃者が none に書き換え、検証側がそれを信用して署名検証をスキップ : ライブラリが JWT Header の alg の値を信用して署名検証をスキップしてしまうお話です 攻撃者が RS256 を HS256 に書き換え、検証側は RSA 公開鍵を HMAC の共有鍵として署名検証 : こちらも JWT Header の alg の値を信用し、署名検証用の関数の引数として指定したRSA公開鍵を共有鍵として扱ってしまうお話です どっちも「おいおい冗談だろ」みたいなお話に見えますが、そういう実装もあるのが事実なんですね。 どうしてこうなった? 署名検証ロジックが JWT文字列と鍵情報をパラメータ