MENU

CVE-2026-43825 Apache OpenNLPのJava未検証デシリアライズ脆弱性によるRCE危険性とAI Security対策手順

  • URLをコピーしました!

AI Security速報をXで配信しています!!

AI/LLM関連の脆弱性、PoC、KEV追加などの更新情報を見逃したくない方は、Xをフォローしてねー!

Xでフォローする

本記事は公開時点の情報をもとにした速報記事です。内容が更新される場合があるため、必要に応じてベンダー公式情報や一次情報もあわせて確認してください。

目次

結論

  • 危険度: 情報なし
  • 対象: (詳細はベンダーアドバイザリ参照)
  • 修正: ベンダーアドバイザリ参照
  • KEV: No (NVD Critical由来。CISA KEVには未登録)
タイトルの緊急度プレフィックス(【至急】【最重大】等)の意味
表記 条件 意味 対応目安
【至急/ランサム悪用】 CISA KEV登録 + ランサムウェア悪用観測 ランサムグループが現在進行形で悪用 本日中に対応開始
【至急/重大】 CISA KEV登録 + CVSS 9.0以上 実世界で攻撃観測あり + スコア極めて高い 本日中に対応開始
【重大/KEV登録】 CISA KEV登録(CVSS低またはNVD未反映) 実世界で攻撃観測あり 数日以内
【最重大】 CVSS 9.5以上(KEV未登録) 理論上の危険度ほぼ満点、攻撃観測はまだない 1週間以内に対応計画
【重大】 CVSS 9.0〜9.4(KEV未登録) Critical帯の理論的高リスク 1〜2週間以内
【高】 CVSS 7.0〜8.9(KEV未登録) High帯のリスク 計画的に対応
(プレフィックスなし) CVSS 7.0未満 Medium以下のリスク 通常メンテで対応

「至急」と「最重大」の違い: 「至急」は CISA(米国政府機関)が 実際に悪用を観測した CVEに付与されます。「最重大」は CVSS スコア上は最高峰だが、まだ悪用観測がない ものです。同じCVSS 9.8でもKEV登録の有無で扱いが変わります。

最終更新: 2026-07-06 | 本記事は公式情報をもとに作成しています。最新情報はベンダー公式アドバイザリを必ずご確認ください。

STEP やること かかる目安
STEP 1 何が起きているか理解する 5分
STEP 2 急ぎ対応すべきか判断する 3分
STEP 3 自分の環境が対象か確認する 10分
STEP 4 修正を適用する 環境による
STEP 5 修正されたことを確認する 5分

STEP 1: 何が起きているか

一言でいうと

CVE-2026-43825はApache OpenNLPのSvmDoccatModelにある脆弱性です。攻撃者は未検証のJavaシリアライズデータを流し込むことで、遠隔地からコードを実行できます。LLMゲートウェイやAIアプリケーションの運用者にとって非常に重要な問題です。

やさしく説明すると

これは、玄関の鍵がかかっていない状態に似ています。SvmDoccatModelが外部から送られてくるデータをそのまま開けてしまい、悪意ある「合鍵」が作られる可能性があります。つまり、信頼できない第三者がAIアプリに入り込み、勝手にプログラムを動かせる危険があります。

技術的な原因

この脆弱性はCWE-502「不信頼なデシリアライズ(Untrusted Deserialization)」に分類されます。SvmDoccatModel.deserialize(InputStream)はJavaのObjectInputStreamを使い、ObjectInputFilterを設置せずにreadObject()を呼び出します。これにより、外部から送られた任意のクラスがJVM上で完全に復元されるため、もし利用者の環境に悪用可能なガジェットチェーンがあれば任意コードが実行されます。

Apache OpenNLP自体に既知の悪用ガジェットは含まれませんが、依存する他のライブラリが脆弱なケースもあり、その場合は実質的にリモートコード実行が成立します。

影響を受けると何が困るか

  • LLMゲートウェイが攻撃者に乗っ取られ、管理機能やAPIを侵害される
  • AIシステム内の機密プロンプトや顧客情報を不正に取得される
  • AI Agentフレームワークが悪意あるコードで乗っ取られ、誤作動や暴走を引き起こす
  • AI開発ツール(Cursor、Cline、Copilot等)経由でローカル環境の情報漏洩や実行環境改ざんが起きる
  • 運用コストの急激な増加や、テナント間の情報隔離が破られる危険性

もっと詳しく調べたい人へ — 公式情報源マップ

本記事は以下の公式・準公式の情報源から内容を集約しています。一次情報を確認したい場合や英語で詳細を読みたい場合は、各リンクから直接アクセスできます。

カテゴリ 情報源 言語 何が分かるか リンク
総合 NVD(米国 NIST) 米国政府の脆弱性データベース。CVSSスコア、影響を受けるCPE、参考リンクの総合ハブ。最も網羅的。 開く
総合 MITRE CVE CVE採番機関の公式記録。CVE記述の「正本」。NVDより記載が簡潔だが一次情報。 開く
総合 JVN iPedia(JPCERT/CC・IPA) 日本のCSIRTが運用する脆弱性対策情報データベース。日本語で概要・対策が読める。掲載がない場合あり。 開く
総合 CISA KEV(悪用観測カタログ) 米国CISAが実際に悪用を確認している脆弱性のカタログ。掲載されていれば最優先で対応。 開く
総合 GitHub Advisory Database OSSパッケージ(npm/pypi/maven/composer/go等)別の脆弱性アドバイザリ。修正PRへのリンクが豊富。 開く
総合 OpenCVE 複数CVEデータベースの集約検索サービス。タイムラインや関連CVEの俯瞰に有用。 開く
Linux Red Hat CVE Red Hat製品(RHEL/CentOS Stream/Rocky/AlmaLinux系)の影響評価とパッチ状況。 開く
Linux Ubuntu Security Ubuntu の影響評価。各Ubuntuバージョン(22.04/24.04等)でのパッチ提供状況が一目で分かる。 開く
Linux Debian Security Tracker Debian の影響評価。stable/testing/sid別のパッチ状況。Debian派生ディストリ利用者向け。 開く
Linux SUSE CVE SUSE Linux Enterprise / openSUSE の影響評価とパッチ状況。 開く
悪用 Exploit Database 公開エクスプロイトのアーカイブ。検出ツールやペネトレーションテストでの参照用。 開く
悪用 Packet Storm Security セキュリティアドバイザリ・エクスプロイトの集約サイト。古めの情報も含む。 開く
悪用 GitHub PoC 検索 GitHubコード検索でCVE IDを直接検索。野良PoCの早期発見に。 開く
悪用 X(Twitter)検索 日英 直近の議論やニュースを観測。In-the-wild悪用の早期検知に有用。 開く
スキャナ Snyk Vulnerability DB パッケージ別の脆弱性詳細と修正バージョン。OSS依存ライブラリ追跡に有用。 開く
スキャナ Tenable(Nessus) Nessusスキャナでの検出プラグイン情報。検出ロジックの参考に。 開く
スキャナ Rapid7(Metasploit/Nexpose) Metasploit悪用モジュール、Nexposeでの検出情報。 開く

掲載しているのは無料でアクセスできる情報源のみです。CVEによっては掲載がないサイトもあります(特にJVN iPediaは日本国内で報告された脆弱性のみ掲載)。

STEP 2: 急ぎ対応すべきか判断する

結論: 中

判断根拠

  • CVSSスコアは現時点で未公開であるため、危険度は明確ではない
  • EPSS(悪用予測スコア)データも存在しない
  • CISA KEVには未登録であり、ランサムウェアなど攻撃悪用の報告も不明
  • 公開PoC(Proof of Concept)やエクスプロイトも見つかっていないため、現時点では広範な悪用は確認されていない
  • ただし、Javaの不信頼なデシリアライズは本質的に危険であるため、保守的に対応を検討する必要がある
  • ネットワーク経由で不特定多数から脆弱なメソッドが呼ばれる場合は優先度を上げるべき

誰が動くべきか

  • LLM Gateway運用チーム(特にApache OpenNLPを利用している場合)
  • Agentフレームワーク開発者(LangChainやAutoGenなどで依存関係にApache OpenNLPがあるケース)
  • MLインフラチーム(vLLM/Tritonなどで外部から入力を受け付けている場合)
  • RAGパイプライン保守者(SvmDoccatModelを用いてドキュメント分類する環境)
  • バイブコーダー開発者(Cursor/Cline/Aider/GitHub Copilot/Claude Codeなどで間接的にApache OpenNLPを利用するケース)

STEP 3: 自分の環境が対象か確認する

影響を受けるバージョン

製品 脆弱なバージョン範囲 修正版
Apache OpenNLP libsvmモジュール 3.x 系(3.0.0-M4 未満) 3.0.0-M4 以降

バージョン確認コマンド

Python(pip)

pip show apache-opennlp

出力例:

Name: apache-opennlp
Version: 3.0.0-M3
Summary: Apache OpenNLP libsvm document categorization module

判定: Version3.0.0-M4 未満なら脆弱。

Python(pip list + grep)

pip list | grep opennlp

出力例:

apache-opennlp      3.0.0-M3

判定: 3.0.0-M4 未満なら修正が必要。

Java(依存ライブラリ確認)

mvn dependency:tree | grep opennlp

出力例:

org.apache.opennlp:opennlp:jar:3.0.0-M3

判定: 3.0.0-M4 未満なら脆弱。

設定確認

この脆弱性はメソッド呼び出し時の入力データ検証不足が原因であるため、特別な設定に依存しません。どの環境も、対象バージョンを使っている限り脆弱です。

Nucleiテンプレートでの検出

2026年7月現在、公開Nucleiテンプレートは提供されていません。バージョン確認で対象かどうかを判断してください。

STEP 4: 修正を適用する

パッチ適用

Python(pip)でApache OpenNLPをアップグレード

pip install --upgrade apache-opennlp==3.0.0-M4

判定: アップグレード後にバージョンが 3.0.0-M4 以上ならOK。

Java Maven プロジェクトでApache OpenNLP依存解決

mvn versions:use-dep-version -Dincludes=org.apache.opennlp:opennlp -DdepVersion=3.0.0-M4

判定: pom.xml が更新され、ビルド時に 3.0.0-M4 が使われるなら修正完了。

注意: アップグレード前に必ず環境のバックアップを取得し、ステージング環境で十分な動作検証を行ってください。AIゲートウェイやAgentフレームワークの依存関係で破壊的変更がないか注意深く確認してください。

パッチ即時適用ができない場合の暫定対応

公式の暫定対応は提示されていません。直ちにアップグレードできない場合は、以下の点を検討してください。

  • SvmDoccatModel.deserialize()を外部から直接呼び出させない設計にする
  • 非信頼ストリームの受信や利用ユーザ検証を強化する
  • ファイアウォールやWAFで外部からの不審なアクセスを遮断し、ネットワーク隔離を行う

STEP 5: 修正されたことを確認する

STEP 3 で実行したバージョン確認コマンドを、修正後に再度実行してください。

期待される出力

Python(pip)

pip show apache-opennlp

出力例:

Name: apache-opennlp
Version: 3.0.0-M4
Summary: Apache OpenNLP libsvm document categorization module

判定: バージョンが 3.0.0-M4 以上ならOK。

Java(依存ライブラリ確認)

mvn dependency:tree | grep opennlp

出力例:

org.apache.opennlp:opennlp:jar:3.0.0-M4

判定: 3.0.0-M4 以上の依存関係であれば問題ありません。

追加で確認すべきこと

  • 公式のアップデート情報やパッチノートを確認し、想定通りの修正が反映されているか確認する
  • もしNucleiテンプレートが将来公開された場合は、それを使って再度脆弱性の非破壊検査を実施する
  • 運用ログに不審なシリアライズストリームの受信や異常なAPI呼び出しがないか監視する

補足: 悪用観測状況

現時点でCISA KEVには登録されておらず、ランサムウェアグループによる悪用情報もありません。公開されたPoCやエクスプロイト例もGitHubやExploit Databaseには存在しません。したがって、現状は深刻な広範な悪用は報告されていません。

しかし、Javaの不信頼なデシリアライズ脆弱性は過去に悪用例が多いため、早めに対策を検討すべきです。

補足: CVSSメトリクス詳細

  • AV (Attack Vector): 攻撃対象への到達経路(ネットワーク、ローカルなど)
  • AC (Attack Complexity): 攻撃の難易度・複雑さ
  • PR (Privileges Required): 攻撃に必要な権限レベル
  • UI (User Interaction): 攻撃成功にユーザ操作が必要か
  • S (Scope): 攻撃範囲。影響が呼び出し元より広がるか
  • C/I/A (Confidentiality/Integrity/Availability): 機密性、完全性、可用性への影響

本CVEは詳細なCVSS情報が未公開のため、具体的な評価は現在できません。

よくある質問(FAQ)

Q. このCVEに対応するために最低限すべきことは何ですか?

A. まずSTEP 3の対象バージョンチェックを行い、脆弱な場合はSTEP 4で3.0.0-M4以上にアップデートしてください。最後にSTEP 5で適用確認をしてください。

Q. パッチが適用できない場合、どうすればよいですか?

A. 外部からの信頼できないシリアライズ入力を受けない設計に変更し、ネットワーク隔離やWAFでアクセス制限をかけるなどの暫定対応があります。

Q. 既に攻撃を受けているか確認する方法はありますか?

A. 現状公開された攻撃検知ルールはありませんが、不審なObjectInputStreamの呼び出しや外部からの不正なシリアライズ入力をログ監視で探すのが基本です。

Q. なぜEPSSスコアが重要なのですか?

A. CVSSは脆弱性の影響度合いを示しますが、EPSSは実際に悪用される確率を表します。両方見ることで優先度判断がより的確になります。

Q. このCVEと類似の脆弱性は他にもありますか?

A. はい。Javaの不信頼なデシリアライズ関連はCWE-502に分類され、多くのライブラリで過去に類似脆弱性が報告されています。依存関係の見直しを推奨します。

参考文献

本記事に関連するキーワードから、他のAIセキュリティ記事を探せます。

2026-07-07 追記

本記事の公開後、以下の重要な変化が確認されました(公開からの経過: 0日)。

項目 公開時点 2026-07-07時点 変化の意味
CVSSスコア変化 9 (Critical) 7.3 (HIGH) NVD再評価でスコアが下方修正
新規GHSAアドバイザリ 0件 1件 新たなGitHub Security Advisoryが発行
タイトルプレフィックス未付与 (プレフィックスなし) 【高】 公開時はタイトルに危険度プレフィックスが付いていない。最新状況では付与が妥当(記事生成時の凡ミス補正)

CVSSスコア変化

NVDによる評価の見直しにより、本脆弱性のCVSSスコアが「9 (Critical)」から「7.3 (HIGH)」へ下方修正されました。これにより、理論上のリスク評価帯がCritical(緊急対応領域)からHigh(計画的な対応領域)へ移行しています。対象環境がすぐに深刻な影響を被る可能性は低くなったものの、リモートからの攻撃リスクが消えたわけではありません。運用担当者は優先度設定や対応計画の見直しを推奨しますが、依然として修正作業やリスク管理は重要です。

新規GHSAアドバイザリ

「0件」から「1件」へと、本脆弱性に関するGitHub Security Advisory(GHSA)が新規発行されました。これは、GitHub利用者や依存解決ツール(Dependabot等)が自動的に本脆弱性の検知・通知対象となることを意味し、エコシステムとしての可視性が向上しています。運用者はGitHub上の公式情報・自動PR・警告の有無を確認の上、影響調査や修正適用を進めてください。

タイトルプレフィックス未付与

記事公開時点では危険度プレフィックスが付与されていませんでしたが、最新状況では「【高】」をタイトル先頭に追記すべきという修正が入りました。これは、現行CVSSスコアや当サイト基準上、High(高リスク)区分に該当することに由来します。読者および関係者が本脆弱性の重要度を一目で把握できるよう、タイトルや通知文面の見直し、管理台帳への反映を強くお勧めします。

AI Security速報を継続配信しています!!

AI/LLM関連の脆弱性、PoC、KEV追加、海外アドバイザリなどを X で配信してるので、ぜひフォローをお願いします!

@ai_sec_news_256 をフォロー

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次