【活用ガイド】

[English]

JVNDB-2017-007582

jwt-scala にトークン署名検証回避の脆弱性

概要

JSON Web Token の Scala 実装である jwt-scala には、トークンの署名検証が回避される脆弱性が存在します。

jwt-scala は、JSON Web Token (JWT) を扱うための Scala 実装です。jwt-scala には、JWT のヘッダの処理に起因する、トークンの署名を適切に検証しない脆弱性 (CWE-287) が存在します。

この脆弱性情報は、下記の方が JPCERT/CC と開発者に報告し、開発者との調整を経て JVN 公表に至りました。
報告者: 株式会社リクルートテクノロジーズ RECRUIT RED TEAM 杉山 俊春 氏
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 5.3 (警告) [IPA値]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): 低
  • 可用性への影響(A): なし
CVSS v2 による深刻度
基本値: 5.0 (警告) [IPA値]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃前の認証要否: 不要
  • 機密性への影響(C): なし
  • 完全性への影響(I): 部分的
  • 可用性への影響(A): なし
影響を受けるシステム


jwt-scala project
  • jwt-scala 1.2.2 およびそれ以前

想定される影響

第三者によって細工された JWT のデータを、正しく署名されたトークンとして扱ってしまう可能性があります。
対策

[最新のソースコードを使用する]
github リポジトリでは 2017年9月11日時点で本脆弱性の修正が行われています。

本脆弱性の修正
https://github.com/reallylabs/jwt-scala/commit/093a9891471608623c715abd08ab0c237489b05a

[ワークアラウンドを実施する]
JWT ヘッダ内の alg フィールドの値が適切な値であることを確認してください。
ベンダ情報

jwt-scala project
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 不適切な認証(CWE-287) [IPA評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2017-10862
参考情報

  1. JVN : JVNVU#90916766
  2. National Vulnerability Database (NVD) : CVE-2017-10862
更新履歴

  • [2017年09月26日]
      掲載
  • [2018年03月07日]
      参考情報:National Vulnerability Database (NVD) (CVE-2017-10862) を追加