Palo Alto 脆弱性 CVE-2026-0257 は、PAN-OS の GlobalProtect のポータルとゲートウェイにある認証回避です。修正版は2026年5月13日に出ていますが、Unit 42 は10月19日の更新で、Qilin や Inc のランサムウェア運用者が悪用を試みていると報告しました。1件の侵入では偽造した cookie で張った VPN から vCenter に入り、ドメインコントローラー(DC)の仮想ディスク(VMDK)から認証情報を取り出しています。Palo Alto 脆弱性の対応を「版を上げた」で閉じられない理由を、条件・修正版・確認手順の順にまとめます。

INTRUSION PATH侵入の流れ

入口はVPN、認証情報はDCの仮想ディスクから

  1. 偽造cookieでVPN

    MFAを通らずに接続

  2. 内部偵察

    RMM・RDP・SMB

  3. vCenterへ

    VPNから管理面へ

  4. ESXiの制御を外す

    execInstalledOnly

  5. DCのVMDKを読む

    VM内のEDRの外側

  6. ランサムウェア

    QilinやIncなど

出典: Unit 42(2026-10-19更新)、Arctic Wolf、Cybersecurity News(2026-10-20)。vCenter以降は1件の侵入で報告された流れ

30秒でわかる

  • ・対象は 認証オーバーライド cookie を有効にした GlobalProtect。条件がそろうと、有効な資格情報なしに VPN を張れる
  • ・修正版は5月13日公開。CVSS v4 は当初 4.7 で、悪用が確認された5月29日に 7.8(High) へ上がり、同日 CISA KEV に入った
  • ・10月19日の Unit 42 更新では Qilin・Inc の運用者が悪用を試みている。1件では vCenter から DC の VMDK を読み、VM の中の EDR を通らずに認証情報を得た
  • ・暫定策は cookie 専用の新しい証明書か、cookie の無効化。更新しても、更新前に入られた跡は残る

まずやること

・PAN-OS を自分で運用している:show system info の版を下の修正版の表と照らし、cookie の設定を確かめる。修正前なら上げるまで回避策を入れる
・Prisma Access を使っている:自分のテナントの版が 10.2.10-h36/11.2.7-h13 以降かを、Palo Alto の案内で確かめる
・vSphere を管理している:VPN の割り当てアドレスから vCenter・ESXi の管理面に届くかを確かめ、5月中旬以降のログインを洗う

VPN の手前に WAF を置いても、この脆弱性は防げません。修正版を当てるまでの考え方は連載の 仮想パッチとは|修正版を当てるまでの数日をWAFで稼ぐ手順と、IDORやカーネルなどWAFでは守れない脆弱性 を、依存の奥から入られる型の全体像は サプライチェーン攻撃とは|手口・防御ツール比較・npm 12の新機構まで実践解説 を参照してください。

Palo Alto 脆弱性 CVE-2026-0257 の時系列

TIMELINE公開から5か月

修正から5か月後も悪用の試みが続いている

  1. 05.13

    アドバイザリ公開・修正版

    CVSS v4 は当初 4.7(Medium)

  2. 05.29

    悪用を確認・CISA KEV に追加

    CVSS v4 を 7.8(High)に。同日に PoC 公開

  3. 06月

    Qilin の展開に至った侵入を Arctic Wolf が報告

  4. 10.19

    Unit 42 が更新。Qilin・Inc の運用者が悪用を試行

出典: Palo Alto Networks のCVEレコード、CISA KEV、Arctic Wolf、Rapid7、Unit 42(2026-10-20時点)。日付は米国時間

日付は米国時間です。Palo Alto Networks の CVE レコードには、5月13日の初版と、5月29日の「悪用状況の更新」の2つが記録されています。CVSS v4 の 4.7 から 7.8 への引き上げは Arctic Wolf の解説によるもので、現在のレコードは 7.8(High、悪用の成熟度は Attacked)です。

Rapid7 は5月17日と21日に悪用を観測し、5月29日に技術的な分析と概念実証(PoC)を公開しました。同じ5月29日に CISA が KEV カタログへ追加しています。日本では JPCERT/CC が6月10日の Weekly Report でアドバイザリの更新と悪用の試みを伝え、JVN iPedia にも JVNDB-2026-017583 として登録されています。

Arctic Wolf は6月の複数の侵入が Qilin の展開に至ったと報告しました。PsExec による横展開、C:\PerfLogs\ へのランサムウェアの配置、レジストリでの永続化が共通していたとしています。10月19日の Unit 42 の更新は、修正から5か月たっても悪用の試みが続いていることを示しています。

GlobalProtect 脆弱性の条件と、VPN から vCenter・VMDK への流れ

認証回避が成り立つ条件

認証オーバーライド cookie はポータルで一度認証した利用者に cookie を渡し、ゲートウェイでの再認証(MFA を含む)を省く機能です。アドバイザリが挙げる条件は次の2つです。

・ポータルで「Generate cookie for authentication override」か「Accept cookie for authentication override」、またはゲートウェイで「Accept cookie for authentication override」が有効
・cookie の暗号化に関わる「特定の証明書の構成」がある

証明書の条件をアドバイザリは具体的に書いていません。ただ回避策が「ポータルやゲートウェイの証明書を使い回さない、cookie 専用の新しい証明書」なので、cookie 用の証明書を他の機能と共有している構成が当たると読めます。Rapid7 の分析も、受け取った cookie を復号したあと発行元を確かめていなかった点を原因としています。CWE は CWE-565(検証と完全性確認なしの cookie への依存)です。

cookie が通ると、ゲートウェイは認証済みの利用者として VPN を張ります。MFA はこの手前で済んだ扱いになるので、効きません。MFA が中継・迂回される型は連載の パスキーと多要素認証|SMSやTOTPでも中継されるフィッシングの穴と、WebAuthnが塞ぐ理由を実測 でも扱っています。

侵入後の流れは報告元ごとに分けて読む

報告元 書いていること
Unit 42(10月19日更新) Spikey Scorpius(Qilin)と Tarnished Scorpius(Inc)が悪用を試行。Settra の運用者と結びつける公開報告もある。侵害した VPN から vCenter に移り、ESXi のセキュリティ制御を無効化し、DC の仮想ディスクからオフラインで認証情報を取り出した事例
Arctic Wolf 6月の複数の侵入が Qilin の展開に至った。PsExec、LSASS のダンプ、NTDS の抽出
Cybersecurity News(10月20日) ESXi の execInstalledOnly を無効にし、独自のツールで DC の VMDK から認証情報を取り出した、と Unit 42 を引いて報道

報道によれば、内部偵察には RMM ツール、横展開には RDP と SMB が使われ、Veeam Backup & Replication の CVE-2023-27532 を狙う道具と組み合わせた例もあります。

なぜ VM の中の EDR に映らないか

EDR は DC の OS の中で動き、プロセスやメモリへのアクセスを見ています。ハイパーバイザー側から仮想ディスクのファイルを読めば、DC の OS の上では何も実行されないので、OS の中の EDR には記録が残りません。ESXi の execInstalledOnly は、署名済みの VIB に含まれるバイナリだけを実行させる設定です。これを外すと、持ち込んだツールを ESXi 上で動かせるようになります。

この経路で見える場所は vCenter・ESXi のログと、ストレージ側の記録です。

PAN-OS 脆弱性の修正版と、更新後の対策

修正版の表

アドバイザリの表を、系列ごとに整理しました(2026年10月20日時点の CVE レコード)。

系列 対象の版 上げ先
PAN-OS 12.1 12.1.2〜12.1.6 12.1.4-h6(12.1.4 系)、12.1.7 以降
PAN-OS 11.2 11.2.0〜11.2.11 11.2.4-h17、11.2.7-h14、11.2.10-h7、11.2.12 以降
PAN-OS 11.1 11.1.0〜11.1.14 11.1.4-h33、11.1.6-h32、11.1.7-h6、11.1.10-h25、11.1.13-h5、11.1.15 以降
PAN-OS 10.2 10.2.0〜10.2.18-h1 10.2.7-h34、10.2.10-h36、10.2.13-h21、10.2.16-h7、10.2.18-h6 以降
Prisma Access 10.2.0〜10.2.10-h、11.2.0〜11.2.7-h 10.2.10-h36、11.2.7-h13 以降
サポート外の旧版 すべて 修正版のある系列へ

11.2.11 と 11.1.14 は対象に入っています(修正版を 11.2.11・11.1.14 とする二次情報がありますが、アドバイザリの表と合いません)。10.2 系の表には「10.2.18 に上げる」という行もありますが、影響を受ける版の一覧に 10.2.18 が含まれるので、10.2.18-h6 以降を選んでください。Panorama と Cloud NGFW は対象外です。

更新すると cookie がより安全な方法で作り直されるため、GlobalProtect の利用者は一度だけ再認証が要ります。

更新できるまでの回避策

・cookie 専用の証明書を新しく作る。ポータルやゲートウェイの証明書を使い回さず、他の機能や利用者とも共有しない
・ポータルとゲートウェイで、cookie の生成と受け入れのチェックを外す

既存の証明書を他の機能から外すだけでは、この回避策に当たりません。回避策は「新しく作る」です。cookie を無効にすると、利用者は接続のたびに認証(MFA を含む)を求められます。

更新したあとにやること

AFTER PATCHING更新のあとに

版を上げても入られた跡は消えない

  1. 1.入られた跡を探す

    GlobalProtect・vCenter・ESXi のログ

  2. 2.認証情報を替える

    VPN経由で触れられたものとドメインの資格情報

  3. 3.管理面を切り離す

    vCenter・ESXi に VPN から直接届かせない

出典: Palo Alto Networks のアドバイザリ、Unit 42(2026-10-19更新)をもとに編集部が整理

修正版はこの経路を塞ぎますが、更新前に入られていた場合の足場は残ります。Unit 42 は、成功した gateway-connected のイベントが見つかればインシデント対応を始めるよう勧めています。

・跡を探す:5月13日以降の GlobalProtect のログと、vCenter・ESXi のログ(次の節)
・認証情報を替える:VPN を侵害された前提で、VPN から届く範囲の管理者アカウントとサービスアカウント。DC の仮想ディスクを読まれた疑いがあれば、ドメインの資格情報(krbtgt を含む)も
・管理面を切り離す:vCenter と ESXi の管理インターフェースに、VPN の割り当てアドレスから直接届かせない。管理用の踏み台を経由させる
・ESXi を固める:ロックダウンモード、execInstalledOnly の強制(UEFI セキュアブートが前提)、ログの外部転送

ログを事故のあとに使える形で残す設計は、連載の 監査ログの設計|事故のあとに「誰が・いつ・何を」答えるための記録項目・マスキング・ハッシュチェーンの改ざん検知 にまとめています。

版・cookie の設定・ログを確かめる自システム確認コマンド

実機は使っていません。各コマンドが読む入力の形は Palo Alto と VMware の公開資料で確かめ、ダミーの入力で陽性・陰性の両方を確かめました。どれも構成とログの確認で、脆弱性があるか、入られたかの判定ではありません。

1. PAN-OS の版を修正版の表と照らす

CLI で show system info を実行し、出力を sysinfo.txt に保存してから実行します。

python3 - sysinfo.txt <<'EOF'
import re, sys
FIX = {"12.1": ["12.1.4-h6", "12.1.7"],
       "11.2": ["11.2.4-h17", "11.2.7-h14", "11.2.10-h7", "11.2.12"],
       "11.1": ["11.1.4-h33", "11.1.6-h32", "11.1.7-h6", "11.1.10-h25", "11.1.13-h5", "11.1.15"],
       "10.2": ["10.2.7-h34", "10.2.10-h36", "10.2.13-h21", "10.2.16-h7", "10.2.18-h6"]}
def key(v):
    return tuple(int(x or 0) for x in re.match(r"(\d+)\.(\d+)\.(\d+)(?:-h(\d+))?", v).groups())
m = re.search(r"^\s*sw-version:\s*(\S+)", open(sys.argv[1]).read(), re.M)
if not m:
    sys.exit("sw-version の行が見つからない")
ver = m.group(1)
fixes = FIX.get(".".join(ver.split(".")[:2]))
if fixes is None:
    print(ver, "表に無い系列(サポート外の旧版なら、修正版のある系列へ上げる)")
    sys.exit(1)
k = key(ver)
ok = k >= key(fixes[-1]) or any(k[:3] == key(f)[:3] and k >= key(f) for f in fixes)
print(ver, "修正版の条件を満たす" if ok else "修正前(修正版の表で上げ先を選ぶ)")
EOF

CVE レコードが影響ありとする PAN-OS の368版をすべて「修正前」、修正版21版を「修正版の条件を満たす」と判定することを確かめました。Prisma Access は対象にしていません。

設定を running-config.xml に書き出して(Device > Setup > Operations のエクスポート)から実行します。

python3 - running-config.xml <<'EOF'
import sys, xml.etree.ElementTree as ET
root = ET.parse(sys.argv[1]).getroot()
tls = {}  # 証明書名 → その証明書を使う SSL/TLS サービスプロファイル
for e in root.findall(".//ssl-tls-service-profile/entry"):
    if e.findtext("certificate"):
        tls.setdefault(e.findtext("certificate"), []).append(e.get("name"))
hits = 0
for ao in root.iter("authentication-override"):
    gen = (ao.findtext("generate-cookie") or "").strip() == "yes"
    acc = ao.find("accept-cookie") is not None
    if gen or acc:
        hits += 1
        cert = ao.findtext("cookie-encrypt-decrypt-cert") or "(未設定)"
        print(f"cookie 有効: generate={gen} accept={acc} 証明書={cert}")
        if cert in tls:
            print(f"  -> 同じ証明書を SSL/TLS サービスプロファイル {tls[cert]} でも使っている")
print(f"認証オーバーライド cookie を有効にした設定: {hits} 件")
EOF

要素名は Palo Alto の pan-os-codegen の仕様(ポータルの client-config、ゲートウェイの remote-user-tunnel-configs の下の authentication-override)に合わせました。accept-cookie は要素があれば有効として扱っています。実機の書き出しでは未検証です。証明書の共有は SSL/TLS サービスプロファイルしか見ていないので、0件でも他の機能との共有が無いとは限りません。

3. GlobalProtect のログから Unit 42 の指標を拾う

Monitor > Logs > GlobalProtect を CSV で gp-logs.csv に書き出してから実行します。値は Unit 42 が挙げた、公開 PoC に書き込まれた端末名・ホスト ID と、PoC 公開前の攻撃元 IP です。

grep -i "gateway-connected" gp-logs.csv \
  | grep -i -w -E "aa:bb:cc:dd:ee:ff|00:11:22:33:44:55|WINDOWS-LAPTOP-001|DESKTOP-GP01|GP-CLIENT|23\.128\.228\.6|104\.207\.144\.154|146\.19\.216\.119|146\.19\.216\.120"

攻撃者は端末名も攻撃元も変えられます。何も出なくても侵入が無かったとは限りません。ログの保存期間が5月まで届いているかも確かめてください。

4. vCenter と ESXi のログから管理面への到達を拾う

vCenter の vpxd のログ(vpxd-*.log)と、ESXi の /var/log(shell.log など)を集めたディレクトリ esxi/ を置いた場所で実行します。

VPN_POOL='10\.200\.'   # GlobalProtect が割り当てるアドレス帯に置き換える(例は 10.200.0.0/16)
grep -h "UserLoginSessionEvent" vpxd*.log | grep -E "@${VPN_POOL}[0-9.]+ logged in"
grep -rhiE "execinstalledonly|exec-installed-only" esxi/
grep -rhE "/folder/[^ ]*\.vmdk" esxi/

1行目は Broadcom のナレッジベースにある vpxd のログイン行(UserLoginSessionEvent と「User 名前@IP logged in」)の形に合わせました。2行目は設定の確認(kernel list)でも出るので、set と FALSE を含む行を見ます。3行目は vSphere の HTTP によるデータストアのファイル取得(/folder/ の URL)を拾う形で、どのログに出るかは未検証です。どれも出なくても、ストレージ側から VMDK を複製された場合や、ログが消された場合は残りません。

Palo Alto 脆弱性の影響範囲と、影響しない構成

構成 影響
PAN-OS 10.2・11.1・11.2・12.1 の修正前、GlobalProtect で cookie 有効 対象(証明書の構成の条件つき)
同じ版で、cookie の生成・受け入れとも無効 アドバイザリの条件に当たらない
Prisma Access 10.2・11.2 の修正前 対象
Panorama、Cloud NGFW 対象外
修正版に更新済み この cookie の偽造は通らない。更新前の侵入は別に確かめる

露出している GlobalProtect の台数は、報告元ごとに数え方が違うので、この記事では挙げません。侵入の後半(vCenter から VMDK)は1件の事例で、Qilin や Inc のすべての侵入で同じ流れになるとは書かれていません。

参照ソース