解析ツールGhidra、最新版12.1.2にも未修正の穴 CVE-2026-18718
NSAの無料解析ツールGhidraに深刻な脆弱性4件(CVE-2026-52751/49498/52754/52758、いずれもCVSS 8.8)。最も危険なCVE-2026-52751は認証不要で、細工されたプロジェクトファイルを開くだけで任意コード実行。残り3本はGhidra Serverのデータベース乗っ取り・なりすまし。12.1.2へ即更新を。
目次
NSAの無料解析ツールGhidraに深刻な脆弱性4件(CVE-2026-52751/49498/52754/52758、いずれもCVSS 8.8)。最も危険なCVE-2026-52751は認証不要で、細工されたプロジェクトファイルを開くだけで任意コード実行。残り3本はGhidra Serverのデータベース乗っ取り・なりすまし。12.1.2へ即更新を。
細工されたプロジェクトファイルを開くだけで、解析者のパソコン上で勝手にプログラムが動き出す──そんな深刻な脆弱性を含む4件の欠陥が、米国家安全保障局(NSA)が無料公開しているソフトウェア解析ツール Ghidra(ギドラ) に 同時公開されました。番号は CVE-2026-52751、CVE-2026-49498、CVE-2026-52754、CVE-2026-52758 の4本で、いずれも CVSS 8.8(High) という高い深刻度です。
Ghidraは、コンパイル済みのアプリやマルウェア(不正なプログラム)を逆向きに読み解いて中身を調べる「リバースエンジニアリング」のための道具です。NSAが2019年に無料公開して以来、世界中のセキュリティ研究者・マルウェア解析者・CTF(ハッキング競技)参加者・学生が日々使っており、GitHubでは6万を超えるスターを集める定番ツールになっています。
4本のうち最も注意すべき CVE-2026-52751 は、ログインも何もいらず、悪意のあるプロジェクトファイルを「ファイル → プロジェクトを開く」で開いた瞬間に任意のコマンドが実行されるという、解析者個人が直接踏みうる経路です。残りの3本は、チームで解析を共有する Ghidra Server(共有プロジェクト) を狙うもので、データベースの乗っ取りや他人へのなりすましを許します。修正は Ghidra 12.1系 で行われており、現在の最新は 12.1.2(2026年6月6日公開)です。Ghidraを使っている方は、いますぐ12.1.2への更新をご検討ください。
【2026年8月17日追記】その後、CVE-2026-18718 という5件目の脆弱性が公開され、この12.1.2そのものが影響を受けることが分かりました。実証コードも出回っています。更新の重要性は変わりませんが、12.1.2に上げれば全部片づく状態ではありません。詳しくは 次のセクション をご覧ください。
【2026年8月17日追記】最新版12.1.2にも、ふさがっていない穴が残っています
この記事の公開から約2か月後の2026年8月3日、Ghidraに5件目の脆弱性 CVE-2026-18718 が公開されました。厄介なのは、この記事が更新先として案内してきた最新版12.1.2が、そのまま影響を受けることです。
穴があるのは、Swift(Appleが開発したプログラミング言語)で書かれたプログラムを解析するときに使う「demangler(デマングラ)」という部品です。実行ファイルの中では関数名が機械向けの記号列に変換されており、それを人が読める名前へ戻すのがデマングラの役目です。Ghidraはこの処理を外部のSwift実行ファイルに任せているのですが、その実行ファイルの置き場所をプロジェクトファイルの中から読み取り、中身を確かめずに起動していました。細工されたプロジェクトを開くと、攻撃者が指定したプログラムが、Ghidraを動かしている人の権限でそのまま立ち上がります。
分類は CWE-427(信頼できない検索パスの使用)、深刻度は CVSS 3.1で7.0、CVSS 4.0で7.1 の「High」です。成立の条件は本記事の主役だった CVE-2026-52751 と同じ「悪意のあるプロジェクトを開く」で、解析者が個人で使っていても直接踏みうる経路という点も共通しています。
修正版がまだ出ていません
この脆弱性の扱いが難しいのは、直したバージョンがまだ配布されていないことです。NVD(米国政府の脆弱性データベース) は修正版を12.1.3と記載していますが、GitHubの公式リリース一覧 を確認すると、2026年8月17日時点の最新は依然として Ghidra_12.1.2_build のままで、12.1.3は存在しません。
修正そのものは済んでいます。該当のコミット(GP-7045、Swiftデマングラが実行ファイルをPATH上に要求するよう変更) は2026年7月7日付です。ただしこれは12.1.2が公開された6月より後の変更であり、ソースコード上は直っているが、配布物にはまだ入っていないという状態です。開発版を自分でビルドできる人を除けば、次のリリースを待つしかありません。
| 項目 | 2026年8月17日時点の状況 |
|---|---|
| 公開日 | 2026年8月3日 |
| 影響を受ける版 | 12.1.2 以前のすべて (=現在配布中の最新版を含む) |
| 修正版 | 未リリース (NVDは12.1.3と記載) |
| 実証コード | 公開済み (2026年8月3日) |
| 実際の悪用 | 確認されていない |
| CISA KEV | 未収載 |
実証コードは公開済み、ただし悪用は確認されていません
実証コードは GitHub上で2026年8月3日に公開 されています。公開元の説明によれば、報告は2026年6月6日に非公開で行われ、修正後にCVE番号が採番されたという流れです。既定では実際に何かを起動しない検証モードで動くようになっていますが、オプションを付ければ攻撃が成立する箇所まで再現できます。
一方で、この脆弱性が実際の攻撃に使われたという報告はありません。NVDに併記されたCISAの評価 でも悪用の状況は「none(確認なし)」とされ、悪用されやすさを予測する指標である EPSS も0.0021(下位11%)と低い値です。CISA KEV(実際に攻撃で使われた脆弱性を米政府がまとめたカタログ) にも、2026年8月14日版の時点で収載されていません。本記事で扱った4件についても同様で、いずれもKEV未収載・悪用報告なしという状況は変わっていません。
修正版が出るまで、何をして待つか
更新で解決できない以上、当面は運用でしのぐことになります。幸い、この脆弱性の入口は本記事のCVE-2026-52751とまったく同じ「他人が作ったプロジェクトを開く」です。すでにその対策を取っている環境なら、追加でやることはほとんどありません。
- 出所の分からないGhidraプロジェクトを開かない。
.gpr/.rep一式を他人から受け取る運用そのものを、修正版が出るまで止めるのが確実です。解析対象のバイナリ単体を受け取るのとは危険度が違います - Swiftの解析環境を切り離す。 今回の穴はSwift向けデマングラの経路で成立します。Swiftバイナリを扱わない解析端末では、Swift実行ファイルをPATHに置かない運用が緩和になります
- 解析端末をネットワークから隔離する。 記事後半の「いま取るべき動き」で書いたとおりです。ツール経由の乗っ取りに対して、隔離は最後の防波堤になります
- リリース情報を監視する。 GitHubのリリースページ をウォッチしておき、12.1.3が出たら速やかに適用してください
なお、本記事で扱った4件(CVE-2026-52751 / 49498 / 52754 / 52758)が最初に修正されたのは12.1であって12.1.2ではありません。12.1.2にもこの修正は当然含まれているため「12.1.2へ上げる」という案内自体は有効ですが、12.1.2で初めて直ったのは別件(ELFファイルのハッシュテーブル処理が無限ループに陥る問題、深刻度は中程度)でした。
Ghidraとは何か、なぜ「解析ツール自体が狙われる」のがまずいのか
Ghidraは、実行ファイルの中身を人が読める形に「逆コンパイル」して、どんな動きをするプログラムなのかを調べるための解析環境です。ウイルス対策ベンダーの研究者がマルウェアの正体を暴いたり、企業がファームウェアの脆弱性を点検したり、捜査機関が押収した検体を調べたりと、「正体不明で危険なファイルを安全に分解する」ことが本来の仕事です。だからこそ、その解析ツール自体に「ファイルを開いただけで乗っ取られる」穴があるのは厄介です。解析者は毎日、得体の知れないファイルを開く前提で作業しているからです。
今回の4本は、性質が大きく2つに分かれます。1つは CVE-2026-52751 の「ひとりで使っていても踏む」経路。これは、細工されたプロジェクトファイルの中に ghidra:// という特殊なURLが仕込まれており、開いた瞬間に内部で「信頼できないデータの復元(デシリアライゼーション)」が起き、Ghidraに同梱されている Jython 2.7.4(Java上で動くPython)の仕組みを悪用して任意コマンドが走るものです。ログイン不要で、共有サーバーを立てていない個人ユーザーも対象になります。
もう1つは、チーム解析の土台である Ghidra Server を狙う3本です。複数人で同じ解析プロジェクトを共有する企業・研究チーム・公的機関の現場が対象で、サーバー上のPostgreSQLデータベース乗っ取りや、他人へのなりすましにつながります。自分は単体でしか使っていないという方は52751だけ、サーバーを運用している方は4本すべてが対象だと考えてください。
あなたの使い方別、どの脆弱性が刺さるのか
「Ghidraに脆弱性4件」と聞いても、自分に関係あるのかは使い方で変わります。先に切り分けます。
| 使い方 | 該当するCVE | 何が起きるか |
|---|---|---|
| ① 個人で 単体利用 | CVE-2026-52751 | 人から渡された プロジェクトを開くと 端末を乗っ取られる |
| ② チームで Server共有 | 52751 + 49498 + 52754 + 52758 | ①に加え、DB乗っ取り・ なりすまし・解析資産の 窃取まで届く |
| ③ 12.1系に 更新済み | なし(修正済み) | 4本とも対策済み。 ただし配布漏れに注意 |
最も広く刺さるのは①です。共有サーバーを立てていなくても、「このサンプル解析してみて」と渡されたプロジェクトファイルを開くだけで成立します。②のチーム運用では、内部の低権限ユーザーや、有効な証明書を1枚持っているだけの相手が、サーバー全体やチームの解析成果に手を伸ばせるようになります。
この4件が踏まれた時、解析者の手元から何が持ち去られるのか
解析者のパソコンは、世の中で最も危険なファイルが集まる場所です。これを狙う相手は抽象的な「攻撃者」ではありません。自分のマルウェアを解析されたくない作者本人、「どの検体をどこまで解いたか」を盗んで検知回避や標的選びに使う国家支援型のスパイ集団、採用試験やCTFの課題と称し細工プロジェクトを送る詐欺グループ、権限を超えたい不満を抱えた内部関係者です。持ち去られるのは、解析途中のマルウェア検体、NDA下で預かった顧客ファームウェアや競合製品のバイナリ、チームが積み上げた解析データベース、端末のSSH鍵や認証情報。「プロジェクトを開く」という毎日の動作が、その瞬間に端末を相手へ明け渡す引き金に変わります。
奪われた先は深刻です。解析データベースが流出すれば、攻撃者は自分のマルウェアが「どこまで見破られたか」を把握し、検知を逃れる改良版を作れます。顧客ファームウェアの脆弱性メモが渡れば、まだ世に出ていないゼロデイの地図がダークウェブで売買され、顧客の製品やインフラへの侵入口として使われます。隔離環境から社内ネットへ広がる恐れもあります。
その責任は解析を請け負う側に返ります。検体や顧客資産を漏らせば、受託したセキュリティ企業・CSIRT・公的機関は、NDA違反、監督官庁への通知義務、信用の失墜を背負います。「危険なファイルは隔離環境で安全に扱う」という前提が解析ツール経由で崩れること自体が、CVSSの数字に載らない最大の損失です。いま12.1系へ更新できているかが、現場の安全を分けます。
4本のCVEを個別に見る、どこで何が起きるのか
4本は、発火する場所と前提条件がそれぞれ異なります。順番に整理します。
CVE-2026-52751: プロジェクトを開いた瞬間に乗っ取り(ログイン不要)
CVE-2026-52751 は4本で最も危険な経路です。共有プロジェクトのRMI接続(Javaの遠隔呼び出し)を扱うクライアント側に、信頼できないデータをそのまま復元してしまう「安全でないデシリアライゼーション(CWE-502)」の問題があります。攻撃者は ghidra:// という特殊なURLを仕込んだプロジェクトファイルを用意し、被害者が「ファイル → プロジェクトを開く」で開いた時点で、同梱の Jython 2.7.4 を経由した連鎖(ガジェットチェーン)が起動し、認証なしで任意コマンドが実行されます。共有サーバーを立てていない個人ユーザーも対象です。
CVE-2026-49498: パスワード変更からデータベースの最高権限を奪取
CVE-2026-49498 は、Ghidra Serverのパスワード変更処理(PostgresFunctionDatabase の changePassword())に潜むSQLインジェクション(CWE-89)です。ユーザー名に含まれる二重引用符が ALTER ROLE 文へそのまま埋め込まれてしまうため、ログイン済みのユーザーが細工したパスワード変更メッセージを送ると、任意のSQLを注入できます。結果として PostgreSQLのスーパーユーザー権限を奪い、データベース全体を支配できます。影響範囲はGhidra 11.0以降、12.1未満です。
CVE-2026-52754: 証明書1枚で他人に「なりすまし」
CVE-2026-52754 は、PKI認証(PKIAuthenticationModule.authenticate())の署名検証の不備(CWE-347)です。正規のCA(認証局)が署名した証明書を1枚でも持っている相手は、署名が空(null)のまま他人の公開証明書を提示することで、その人になりすませてしまいます。これによりアクセス制御の改変や、チームの解析データベースの窃取、サーバーの掌握まで可能になります。
CVE-2026-52758: 検索フィルタからのSQLインジェクション
CVE-2026-52758 は、関数の類似性を検索する BSim のフィルタ機構にあるSQLインジェクション(CWE-89)です。利用者が入力した値がエスケープもパラメータ化もされずにSQL文へ直接連結されるため、ログイン済みの相手がBSimのネットワーク問い合わせ経由で任意のSQLを注入できます。背後のPostgreSQLに保存されたデータの読み取り・改ざん・削除につながります。
影響バージョンと修正版 早見表
| CVE | 種別 | 前提 | 影響 | 修正版 |
|---|---|---|---|---|
| CVE-2026-52751 | 任意コード実行 (デシリアライズ) | 認証不要 (個人利用も対象) | 細工プロジェクトを 開くと端末乗っ取り | 12.1 |
| CVE-2026-49498 | SQLインジェクション | Server・ログイン済み | DBの最高権限奪取 | 12.1 (11.0以降が対象) |
| CVE-2026-52754 | 認証回避 (なりすまし) | Server・CA証明書保有 | 他人になりすまし 解析資産を窃取 | 12.1 |
| CVE-2026-52758 | SQLインジェクション (BSim) | Server・ログイン済み | DBの読み取り・改ざん ・削除 | 12.1 |
| CVE-2026-18718 | 任意コード実行 (Swiftデマングラ) | 認証不要 (個人利用も対象) | 細工プロジェクトを 開くと端末乗っ取り | 未リリース (12.1.2も対象) |
運用判断の軸は4本すべてが修正された12.1系(最新は12.1.2)へ上げることです。ただし2026年8月17日時点では、表の最下行 CVE-2026-18718 だけは12.1.2でも直っておらず、更新だけでは閉じられません。出所不明のプロジェクトを開かない運用を併せて続けてください。記事公開時点で CISA KEV(悪用が確認された脆弱性カタログ) への登録や実攻撃の報告は確認されていませんが、Ghidraは解析者という攻撃の標的になりやすい人々が使う道具であり、概念実証コードが出回れば一気に危険度が上がる性質です。
いま取るべき動き
優先順に整理します。個人で使っている方も、チームでGhidra Serverを運用している組織も対象です。
1. 12.1系(最新は12.1.2)へ即更新。公式リリースページ から最新版を取得する。Ghidra Serverを運用している場合は、サーバー側とクライアント側の両方を更新してください。
2. 出所不明のプロジェクトファイルを安易に開かない。CVE-2026-52751は「プロジェクトを開くだけ」で成立します。SNSやメール、掲示板で渡された .gpr / .rep などのGhidraプロジェクト一式は、更新が済むまで開かない運用を徹底してください。解析対象のバイナリ単体と、他人が作った「プロジェクトファイル」は危険度が違います。
3. Ghidra Serverのアカウントと証明書を棚卸し。CVE-2026-52754は有効なCA署名証明書を持つ相手のなりすましを許します。発行済み証明書と利用者アカウントを確認し、不要なものは失効・削除する。低権限アカウントの乱立も、CVE-2026-49498・52758の踏み台になります。
4. 解析環境の隔離を再点検。Ghidraは本来、危険なファイルを扱う前提のツールです。解析作業はインターネットや社内ネットから切り離した仮想マシン・専用端末の中で行い、SSH鍵や本番認証情報を解析端末に置かない。今回のような「ツール経由の乗っ取り」に対して、隔離は最後の防波堤になります。ローカル権限昇格の脆弱性 と組み合わされると被害が広がるため、解析端末のOSも最新に保ってください。
タイムライン
| 日付 | 出来事 |
|---|---|
| 2019年3月 | NSAがGhidraを無料公開。公開直後にXXEの脆弱性が見つかった経緯も |
| 2026年6月6日 | Ghidra 12.1.2 公開(12.1系で今回の4件を修正) |
| 2026年6月8日 | GitHub Security Advisory で複数の脆弱性が公開 |
| 2026年6月10日 | NVDに4件(CVSS 8.8)が登録 |
| 2026年7月7日 | CVE-2026-18718の修正コミットが投入される(配布版には未反映) |
| 2026年8月3日 | CVE-2026-18718が公開。同日に実証コードも公開される |
| 2026年8月17日 | 修正版12.1.3は未リリース。5件とも実際の悪用は確認されていない |
まとめ、危険物を扱う道具こそ「安全に開く」前提が崩れる
今回の4件で浮き彫りになったのは、マルウェアという危険物を安全に分解するための道具自身が、ファイルを開いただけで攻撃の入口になりうるという構図です。Ghidraは公開直後の2019年にも、リリース24時間で解析プロジェクトの脆弱性が指摘された歴史があります。解析ツールは「攻撃者がわざと細工した入力」を毎日受け取る宿命にあり、入力処理の堅牢さは一般のアプリ以上に問われます。
読者の方が今すぐやるべきことは、ふたつです。Ghidraを12.1.2へ更新すること、そして出所のわからないプロジェクトファイルは更新が済むまで開かないこと。とくにCVE-2026-52751は、共有サーバーを使っていない個人にも届く認証不要の経路なので、「自分はチーム機能を使っていないから関係ない」という油断が一番危険です。
参照元
- ▸NVD - CVE-2026-52751(デシリアライズによる任意コード実行)
- ▸NVD - CVE-2026-49498(changePassword SQLインジェクション)
- ▸NVD - CVE-2026-52754(PKI認証のなりすまし)
- ▸NVD - CVE-2026-52758(BSim SQLインジェクション)
- ▸Ghidra Security Advisories(GitHub)
- ▸Ghidra Releases(12.1.2)
- ▸NationalSecurityAgency/ghidra(GitHubリポジトリ)
- ▸CISA KEV カタログ
- •NVD「CVE-2026-18718」(Ghidra Swiftデマングラの任意コード実行)
- •GitHub「GP-7045: The Swift Demangler now requires Swift to be on the PATH」(2026年7月7日)
- •GitHub「Ghidra Releases」(最新は12.1.2)
- •GitHub「CVE-2026-18718 実証コード」
- •CISA「Known Exploited Vulnerabilities Catalog」(2026年8月14日版で未収載を確認)
更新履歴
- •2026年8月17日:5件目の脆弱性 CVE-2026-18718 を追記しました。最新版12.1.2が影響を受け、修正版12.1.3は未リリースであること、実証コードが公開済みであること、5件とも実際の悪用は確認されていないことを確認して反映しています。影響バージョンの早見表とタイムラインも更新しました。
- •2026年6月11日:公開

Backend Engineer / AWS / Django / Go