本文へ移動
English version →
重大 9.8 急ぎ度: 至急

Jpomに認証回避の脆弱性、管理者権限を奪われる恐れ

Jpom 2.10.0から2.11.12に、ログインなしでスーパー管理者の権限を得られる脆弱性が公表されました。Jpomを使う組織は、版と到達範囲を調べ、修正版の有無を確認して更新してください。

CVE-2026-120201 公開 更新 執筆・監修: 佐々木 航 人が監修しながらAIを活用して執筆
画像は生成 AI で作成したイメージです

急ぎ度: 至急

CVSS v3は9.8、v4は9.3で、認証もユーザー操作も要らずネットワーク越しにコマンド実行まで到達できるため、外部から届く環境では早い対応が要ります。

関係があるか

Jpom 2.10.0から2.11.12を、ビルドやデプロイ、プロセス管理の運用基盤として動かしている組織が対象です。管理画面がインターネットや広い社内ネットワークから届く環境ほど危険です。

製品影響を受ける版修正版
Jpom(dromara) 2.10.0以上、2.11.12以下 2.11.12より新しい版が出ているかを、プロジェクトのリリース情報とセキュリティ告知で確認してください

確かめ方

  1. 1Jpomの管理画面か、サーバー上の配布ファイル名で版を確認します。2.10.0から2.11.12の範囲なら対象です。
  2. 2管理画面のポートが、インターネットや利用者ネットワークから届くかを、ファイアウォールとリバースプロキシの設定で確認します。
  3. 3検証用や部署ごとに立てた、情シスが把握していないJpomが残っていないかも探します。

何が起きたか

Jpomに、ログインしていない人が最高権限のスーパー管理者として操作できてしまう脆弱性が見つかりました。管理者になれば、Jpomのスクリプト機能を通じてサーバー上でコマンドを実行されます。

2026年10月31日に公表された脆弱性です。原因は、リクエストのJPOM-USER-TOKENヘッダーに入れた値を、認証の確認で検索条件として解釈してしまう点にあります。値は本来トークンとして照合されるべきですが、JavaのユーティリティライブラリHutoolの条件解析が、値の一部を演算子として扱います。その結果、正しいトークンを持たなくても認証を通過します。分類はCWE-943です。

影響するのは2.10.0から2.11.12です。

攻撃の流れ

  1. 1

    管理画面に到達

    Jpomサーバーにネットワーク経由で接続できる位置から始まります。

  2. 2

    細工したヘッダー

    JPOM-USER-TOKENヘッダーに、トークンではなく検索条件として解釈される値を入れて送ります。

  3. 3

    認証をすり抜け

    照合が成立したと判断され、スーパー管理者として扱われます。

  4. 4

    コマンド実行

    スクリプト機能を使い、Jpomが動くサーバー上でコマンドが実行されます。

公開されている情報をもとにした流れの例です。

どう悪用されるか

認証は要りません。攻撃者はJpomの管理画面にネットワークから届けば足り、アカウントも利用者の操作も必要としません。攻撃の難易度は低く、CVSSのベクターでも、ネットワーク経由・特別な条件なし・権限不要・操作不要と評価されています。

成功すると、Jpomのスーパー管理者としてすべての機能を使えます。スクリプト機能から任意のコマンドを実行されるため、機密性・完全性・可用性のすべてに高い影響が出ます。Jpomに登録された接続情報やスクリプトの内容が読まれたり、書き換えられたりすることも考えておくべきです。

今すぐやること

  1. 1

    Jpomの稼働台数と版を洗い出す

    本番だけでなく、検証用や個人が立てたものも含めて、2.10.0から2.11.12が動いていないかを一覧にします。

    find / -iname "jpom*" 2>/dev/null
  2. 2

    修正版を確認して更新する

    ベンダーの告知とGitHubのリリース情報で、2.11.12より新しい修正版が出ているかを確認します。出ていれば、検証したうえで速やかに更新します。更新前にデータと設定のバックアップを取ります。

  3. 3

    管理画面への到達範囲を絞る

    インターネットから直接届く状態なら、まず遮断します。社内でも、運用担当者のネットワークや踏み台だけに限定します。

  4. 4

    侵害の跡を調べる

    公表直後で、実際の悪用の有無はまだ見えていません。Jpomとリバースプロキシのアクセスログで、不審な接続元や不自然なヘッダー値のリクエストを探します。あわせて、身に覚えのないスクリプトの作成・実行、ユーザーの追加、設定変更がないかを確認します。

  5. 5

    登録情報の見直し

    不審な操作が見つかった場合は、Jpomに登録していた認証情報や鍵を作り直します。Jpomが管理していたサーバー側も、あわせて点検します。

修正版がないあいだのつなぎ

修正版をすぐ当てられないときは、ファイアウォールやセキュリティグループで、Jpomの管理画面に接続できる送信元を運用担当者のIPアドレスだけに限定します。外部公開が必要な場合は、VPNの内側に置いてください。この対策は到達できる相手を減らすだけで、脆弱性そのものは残ります。更新までのつなぎとして使います。

背景

Jpomは、Javaで作られたオープンソースの運用管理ツールで、dromaraプロジェクトが公開しています。サーバー上のプロジェクトのビルドやデプロイ、プロセスの起動と停止、ログの閲覧、スクリプトの実行を、ブラウザーの管理画面からまとめて行うために使われます。

この性格のため、管理画面を突破されると、画面操作の範囲にとどまらず、スクリプト機能を通じてサーバー上の実行権限そのものを握られます。今回は認証の照合が検索条件の評価に委ねられていた点が問題で、トークンの値が正しいかどうかではなく、条件式が成立するかどうかで通過が決まっていました。認証にデータベース風の条件式を使う実装は、入力値の扱いを誤ると、パスワードを知らなくても通れる穴になります。

よくある質問

Q.管理者パスワードを強くすれば防げますか。
A.防げません。この脆弱性はパスワードの照合を経由せず、トークンの確認の段階で認証をすり抜けるため、パスワードの強さは関係しません。版の更新と到達範囲の制限で対処します。
Q.Hutoolを使っている自社のアプリも影響を受けますか。
A.記録上の影響製品はJpomの該当版だけです。ただし、利用者が送る値をそのままHutoolの条件解析に渡す実装が自社コードにあれば、同じ種類の問題になり得ます。認証やデータ検索まわりで入力値の渡し方を確認しておくと安心です。

この記事は、取得元の公開情報をもとに、人が監修しながらAIを活用して執筆しています。執筆と監修は佐々木 航が担い、公開したあとも人が内容を確認しています。誤りに気づいたときは直し、記事の末尾に訂正の行を残します。対応を決める前に、下の原文と参照先も確認してください。

影響パッケージ

種類パッケージ影響を受ける版修正版
dromara Jpom
2.10.0 〜 2.11.12
—
原文の説明 取得元が公開している説明をそのまま載せています (多くは英語)。

Jpom 2.10.0 through 2.11.12 contains an authentication bypass vulnerability that allows unauthenticated attackers to gain super-administrator access by injecting query conditions into the JPOM-USER-TOKEN header. Attackers can send a value like 'is not null', which Hutool's Condition parser treats as an operator, then execute commands through Jpom's script features.

出典: CVE.org (CVE Program・cvelistV5) NVD GitHub Advisory

参照URL

当サイトでは、アクセス解析と広告の効果測定のために Cookie を使います。株式会社Game のサイト共通の設定です。 詳しく