公開日:2020/11/19 最終更新日:2020/11/19

JVN#90729322
Hibernate ORM における SQL インジェクションの脆弱性

概要

Hibernate ORM には SQL インジェクションの脆弱性が存在します。

影響を受けるシステム

  • Hibernate ORM、5.4.24 より前のバージョン
  • Hibernate ORM、5.3.20 より前のバージョン

詳細情報

Hibernate ORM は Java 向けの ORM フレームワークです。Hibernate ORM では、デバッグに役立つよう、内部で生成する SQL 文にコメントをつけることができます。(hibernate.use_sql_commentstrue に設定する。初期設定では false。)
hibernate.use_sql_comments を true に設定した場合の入力処理には不備があり、SQL インジェクションの脆弱性 (CWE-89) が存在します。

想定される影響

hibernate.use_sql_comments を true に設定している場合、細工した入力を処理することで SQL インジェクション攻撃を受ける可能性があります。

対策方法

アップデートする
開発者が提供する情報を参考に、Hibernate ORM を更新してください。

ワークアラウンドを実施する
hibernamte.use_sql_commentsfalse に設定してください。

参考情報

JPCERT/CCからの補足情報

JPCERT/CCによる脆弱性分析結果

CVSS v3 CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
基本値: 7.4
攻撃元区分(AV) 物理 (P) ローカル (L) 隣接 (A) ネットワーク (N)
攻撃条件の複雑さ(AC) 高 (H) 低 (L)
必要な特権レベル(PR) 高 (H) 低 (L) 不要 (N)
ユーザ関与レベル(UI) 要 (R) 不要 (N)
スコープ(S) 変更なし (U) 変更あり (C)
機密性への影響(C) なし (N) 低 (L) 高 (H)
完全性への影響(I) なし (N) 低 (L) 高 (H)
可用性への影響(A) なし (N) 低 (L) 高 (H)
CVSS v2 AV:N/AC:H/Au:N/C:P/I:P/A:N
基本値: 4.0
攻撃元区分(AV) ローカル (L) 隣接 (A) ネットワーク (N)
攻撃条件の複雑さ(AC) 高 (H) 中 (M) 低 (L)
攻撃前の認証要否(Au) 複数 (M) 単一 (S) 不要 (N)
機密性への影響(C) なし (N) 部分的 (P) 全面的 (C)
完全性への影響(I) なし (N) 部分的 (P) 全面的 (C)
可用性への影響(A) なし (N) 部分的 (P) 全面的 (C)

謝辞

この脆弱性情報は、情報セキュリティ早期警戒パートナーシップに基づき下記の方が IPA に報告し、JPCERT/CC が開発者との調整を行いました。
報告者: (株)NTTデータ 技術革新統括本部 システム技術本部 デジタル技術部 インテグレーション技術担当 TERASOLUNA Framework 開発チーム

関連文書

JPCERT 緊急報告
JPCERT REPORT
CERT Advisory
CPNI Advisory
TRnotes
CVE CVE-2020-25638
JVN iPedia JVNDB-2020-000074