公開日:2020/07/28 最終更新日:2020/07/28

JVN#62161191
JavaFX の WebEngine コンポーネントに任意の Java メソッド実行が可能になる脆弱性

概要

JavaFX および OpenJFX の WebEngine コンポーネントには、任意の Java コード実行が可能になる脆弱性があります。

影響を受けるシステム

  • Oracle JDK 8 update 251 より前のバージョン
  • JavaFX 14.0.1 より前のバージョン

詳細情報

JavaFX は Java アプリケーション向けの GUI ライブラリです。
OracleJDK のバージョン 7 からバージョン 10 までは JDK に同梱される形で提供されていました。
OracleJDK バージョン 11 以降には同梱されなくなり、OpenJDK コミュニティ傘下の OpenJFX プロジェクトによって開発が継続されています。

JavaFX に含まれる WebEngine コンポーネントは web コンテンツのレンダリング機能を提供しており、web コンテンツ中の JavaScript コードから Java メソッドを呼び出せるように設定することも可能です。
WebEngine コンポーネントには、細工された JavaScript コードから任意の Java メソッド呼び出しが可能になる脆弱性が存在します(CWE-470)。
これは、過去に Android の WebView コンポーネントに対して指摘された脆弱性 CVE-2012-6636 と同じタイプの脆弱性です。

想定される影響

JavaFX を使用したアプリケーションが細工された web コンテンツを処理すると、当該アプリケーションの実行権限で任意の Java コードを実行させられる可能性があります。

対策方法

アップデートする
JavaFX アプリケーション開発者は、最新の JavaFX ライブラリを使用してアプリケーションを更新してください。
JavaFX アプリケーションユーザは、Java 実行環境を最新バージョンに更新してください。

OracleJDK 8 update 251 に同梱されている JavaFX および OpenJFX プロジェクトが提供する JavaFX 14.0.1 では、JavaScript から呼び出せる Java メソッドに制限を加えています。詳細はリリースノートを確認してください。

ベンダ情報

ベンダ リンク
Oracle JDK 8u251 Update Release Notes
OpenJFX Project Release Notes for JavaFX 14.0.1

参考情報

JPCERT/CCからの補足情報

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

CVSS v3 CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
基本値: 8.8
攻撃元区分(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:M/Au:N/C:P/I:P/A:P
基本値: 6.8
攻撃元区分(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 が開発者との調整を行いました。
報告者: 合同会社DMM.com 市原良平 氏

関連文書

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