セキュリティ

VPN 脆弱性:機器の版確認コマンドとKEV照合スクリプト・パッチと移行の判断【2026年10月】

VPN 脆弱性:機器の版確認コマンドとKEV照合スクリプト・パッチと移行の判断【2026年10月】

VPN機器の脆弱性は、国内のランサムウェア被害で侵入経路の約5割を占めています。社外からつながる入口である以上、修正版が出た瞬間から攻撃者との競争が始まる状況です。本記事では、FortiGate・PAN-OS・Cisco ASAで稼働中の版を確かめるコマンド、自社の機器一覧を米CISAの悪用済み脆弱性カタログ(KEV)と照合するPythonスクリプト、パッチ適用の前後で見るべき点検項目、SSL-VPNの終息とZTNA移行の判断までを、2026年10月22日時点の一次情報で整理します。VPNそのものの仕組みはVPNとはで解説しています。

まとめ:VPN機器の脆弱性は版の把握とKEV照合を毎日回して塞ぐ

最初にやるのは、社外に公開しているVPN機器の機種と稼働中の版を一覧にすることです。版が分からない機器は、脆弱性情報が出ても自社が対象かを判断できません。一覧ができたら、KEVに自社の製品が新しく載っていないかを毎営業日に照合します。

KEVに載った脆弱性は、深刻度の評価にかかわらず最優先で直します。2026年6月以降のKEV追加分は、是正期限が追加日から3日後に設定される例が大半です。修正版をすぐ入れられないときは、管理画面の外部公開を止め、ベンダーの回避策を入れたうえで、侵害の痕跡を確かめます。SSL-VPNの更新が追いつかない体制なら、パッチ運用を続けるよりZTNAやIPsecへの移行を先に検討するほうが筋がよいと判断します。

VPN機器の脆弱性が侵入口になる理由と国内被害の約5割という実態

警察庁の令和8年上半期報告で侵入経路の約5割がVPN機器だった事実

警察庁が2026年9月に公表した令和8年上半期におけるサイバー空間をめぐる脅威の情勢等については、ランサムウェア被害組織へのアンケートで、侵入経路はVPN機器が約5割を占めると報告しています。同じ資料は、インターネットに露出した箇所から遠隔操作で侵入する手口が多く、標的型メールの添付ファイルによる感染は少なくなったとも書いています。

メール訓練に予算を寄せても、入口の機器が古い版のままでは守れません。対策の優先順位は、まず外から届く機器の版からです。

未修正の脆弱性と漏えいした認証情報が並ぶVPN機器の2つの入口

同資料は、攻撃者が組織のネットワークに入る手段として、未修正のぜい弱性と漏えいした認証情報の2つを挙げています。前者は修正版の適用で塞がりますが、後者はパッチでは塞がりません。過去の脆弱性で抜かれたIDとパスワードが、修正後の機器でもそのまま使えるからです。

そのため、深刻な脆弱性を直したあとは、VPNアカウントのパスワード変更と不要アカウントの削除までを一続きの作業として扱います。委託先の保守用アカウントが入口になった事例は両毛システムズのランサムウェア被害で詳しく扱っています。

乗っ取られた機器が中継拠点にされるORB化とIPAの注意喚起の要点

被害は自社の中だけで終わりません。IPAは2025年10月31日のVPN機器等に対するORB化を伴うネットワーク貫通型攻撃のおそれについてで、乗っ取られたVPN機器が他組織への攻撃の中継拠点(ORB:Operational Relay Box)として使われるおそれを指摘しました。ORB化した機器がボットネットに組み込まれて運用されているとの指摘にも触れています。

この注意喚起が例に挙げたのは、NetScaler ADC・Gateway(CVE-2025-7775)、Ivanti Connect Secure(CVE-2025-22457)、FortiOS・FortiProxy(CVE-2024-55591)です。いずれも認証の前段で成立する種類の欠陥でした。中継に使われている間は、自社の業務に目立った異常が出ないこともあります。

KEVに登録されたVPN製品の脆弱性をベンダー別に見る2026年10月版

FortiOS・Ivanti・PAN-OS・ASA・SonicWallのKEV登録件数

米CISAのKnown Exploited Vulnerabilities Catalogは、実際に悪用が確認された脆弱性の一覧です。2026年10月21日版(catalogVersion 2026.10.21、全1,754件)を、後述のスクリプトでVPN製品ごとに数えた結果が次の表です。

製品 KEV登録 ランサムウェア悪用あり 直近180日の追加
Fortinet FortiOS 21件 13件 3件
Ivanti Connect Secure 14件 8件 1件
Palo Alto PAN-OS 14件 6件 3件
Cisco ASA 14件 3件 1件
SonicWall SMA 12件 6件 4件

「ランサムウェア悪用あり」は、KEVのknownRansomwareCampaignUseがKnownの件数です。FortiOSは21件中13件がランサムウェア攻撃で使われたと記録されています。どの製品も毎年のように追加があり、特定のベンダーを選べば安全という状況ではありません。FortiGateの個別のCVEと修正版はFortinetの脆弱性まとめで一覧にしています。

直近180日の追加分と追加日から3日後に置かれた是正期限の意味

直近180日の追加には、2026年10月13日のIvanti Connect Secure(CVE-2026-104935)、10月14日のPAN-OS(CVE-2026-0322)、10月16日のFortinet複数製品(CVE-2025-61624)が含まれます。KEVのdueDateを見ると、これらはいずれも追加日の3日後が期限です。

期限の付け方は2026年半ばに変わりました。2025年1月から2026年6月9日までの追加分は21日後が最多(270件)でしたが、6月10日以降の追加137件は3日後が111件、14日後が26件です。6月10日は、深刻度ではなく公開状況や悪用状況で期限を決める米連邦機関向け指令が出た日です。仕組みはBOD 26-04とはで解説しています。民間企業に法的な拘束はありませんが、社外公開のVPN機器を「3日以内」の側に置く考え方はそのまま使えます。

自社VPN機器の版を確かめるコマンドとKEV照合スクリプトの作り方

FortiGate・PAN-OS・Cisco ASAで稼働中の版を表示するCLIコマンド

脆弱性情報の「影響を受ける版」と突き合わせるには、管理画面の表示ではなくCLIで稼働中の版を取るのが確実です。主要3製品のコマンドは次のとおりです。

# FortiGate(FortiOS):Version 行にモデル・版・ビルド番号が出る
get system status

# Palo Alto Networks(PAN-OS):sw-version 行が稼働中の版
show system info | match sw-version

# Cisco Secure Firewall ASA:先頭の Software Version 行を確認
show version | include Version

PAN-OSのsw-versionは、Palo Alto NetworksのPAN-OS CLI Quick Startに出力例があります。取得した版は、機種名・シリアル・設置場所と一緒に台帳へ記録してください。冗長構成の機器は両系で版がずれていることがあるため、片方だけ見て終わらせないようにします。

自社の機器一覧をKEVのJSONと照合するPythonスクリプト一式

KEVはJSON形式でも配布されています。次のスクリプトは、自社のVPN機器のベンダー名と製品名を書いておくだけで、登録件数と直近の追加分を表示します。CVE番号を調べてから入力する必要はありません。標準ライブラリだけで動き、Python 3.9以降を想定しています。

import json, sys, urllib.request
from datetime import date, timedelta

KEV_URL = "https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json"

# 自社で使っているVPN機器(vendorProject と 製品名の部分一致で照合)
INVENTORY = [
    ("Fortinet", "FortiOS"),
    ("Ivanti", "Connect Secure"),
    ("Palo Alto Networks", "PAN-OS"),
    ("Cisco", "Adaptive Security Appliance"),
    ("SonicWall", "SMA"),
]
DAYS = int(sys.argv[1]) if len(sys.argv) > 1 else 180

req = urllib.request.Request(KEV_URL, headers={"User-Agent": "kev-vpn-check/1.0"})
with urllib.request.urlopen(req, timeout=60) as r:
    kev = json.load(r)

since = (date.today() - timedelta(days=DAYS)).isoformat()
print(f"catalogVersion={kev['catalogVersion']} total={kev['count']} since={since}")

for vendor, product in INVENTORY:
    # product が "Multiple Products" の登録もあるため説明文も照合する
    hits = [v for v in kev["vulnerabilities"]
            if vendor.lower() in v["vendorProject"].lower()
            and product.lower() in (v["product"] + " " + v["shortDescription"]).lower()]
    recent = [v for v in hits if v["dateAdded"] >= since]
    ransom = sum(v["knownRansomwareCampaignUse"] == "Known" for v in hits)
    print(f"\n{vendor} {product}: 登録{len(hits)}件 / ランサムウェア利用Known {ransom}件 / 直近{DAYS}日 {len(recent)}件")
    for v in sorted(recent, key=lambda x: x["dateAdded"], reverse=True):
        print(f"  {v['dateAdded']} {v['cveID']} 期限{v['dueDate']} {v['vulnerabilityName']}")

python kev_vpn_check.py 30のように日数を渡すと、直近30日の追加だけに絞れます。タスクスケジューラやcronで毎朝回し、出力が前日と変わったときだけ担当者に通知すれば、KEVの更新を人が見に行く必要はなくなります。Windowsのコンソールで日本語が崩れる場合は、環境変数PYTHONIOENCODING=utf-8を付けて実行してください。

KEV照合の実行結果の読み方と製品名表記の揺れによる照合漏れの防ぎ方

2026年10月21日版で実行すると、FortiOSは「登録21件・直近180日3件」と出ます。ところが、製品名の欄だけで照合すると15件・直近1件に減ります。FortiOSに影響する登録のうち6件が、製品名をMultiple Productsとして登録されているからです。2026年9月9日追加のCVE-2025-25249と10月16日追加のCVE-2025-61624もこの6件に入ります。説明文まで照合する1行が、そのまま照合漏れを防ぐ役目を果たしています。

他社についても、製品名の表記の揺れには注意してください。IvantiはPulse Connect Secure時代の登録が7件あり、「Connect Secure」で部分一致させないと旧製品名の分が照合から漏れるため注意が必要です。SonicWallはSMA1000 Appliances・SMA100・SMA 100 Appliancesという複数の表記が混在する状態です。照合語は短めに取り、初回は全件を目で確かめてから自動化に移ります。CVEそのものの読み方はCVEとCWEの違いが参考になります。

VPN機器のパッチ適用までの手順と侵害の痕跡を確かめる初動の進め方

ベンダーのPSIRTで修正版を確かめてから適用するまでの4段階

KEVで自社製品の追加を見つけたら、修正版の番号はベンダーの公式アドバイザリで確かめます。FortinetはFortiGuard PSIRT、Palo Alto NetworksはSecurity Advisories、CiscoはCisco Security Advisoriesが一次情報です。

  1. アドバイザリで、自社の版が影響範囲に入るか、必要な機能(SSL-VPN、GlobalProtect等)が有効なときだけ影響するかを確認する
  2. 修正版と回避策の両方を控え、適用前に設定をバックアップする
  3. 冗長構成なら待機系から上げ、業務時間外の切り替えで停止時間を短くする
  4. 適用後に版を再取得し、台帳の版を更新する

悪用が始まっている脆弱性では、保守窓口の調整を待つより、回避策だけでも当日中に入れるほうを優先します。複数のCVEが重なってどれから当てるか迷う場合は、デジタル庁GSSの事例で解説したKEV・EPSSによる優先度判定の手順がそのまま使えます。

パッチ適用前に侵入されていた場合を想定したログと設定の点検項目

修正版の適用は、すでに入られていた場合の後始末にはなりません。KEVに載った時点で悪用は確認済みなので、適用前の期間に何が起きたかを確かめます。最低限見るのは次の項目です。

  • 管理者アカウントの一覧に、作った覚えのないアカウントや権限変更がないか
  • VPNの接続ログに、普段使わない国や時間帯からの成功ログインがないか
  • 設定の最終更新日時と、変更履歴が運用記録と一致しているか
  • 機器から内部や外部へ向けた、業務と関係のない通信が出ていないか

4つ目は、IPAが指摘したORB化を見つける手がかりでもあります。機器のログ保存期間が短いと遡れないため、外部のログ基盤へ事前に転送しておくことが前提です。痕跡が見つかった場合、機器の初期化と再構築、全VPNアカウントの資格情報の再発行まで進めます。

VPN機器の管理画面の外部非公開と多要素認証で攻撃面を縮める設定

パッチの間隔を埋めるのは設定です。IPAの注意喚起も、管理インターフェースを外部に公開しないこと、不要なサービスやポートを止めることを対策に挙げています。VPNの待ち受けと管理画面を同じインターフェースで公開している構成は、まずここから分けます。

VPNの認証には多要素認証を必ず組み合わせます。漏えいしたパスワードだけでは入れなくなるため、前述の「認証情報」の入口が狭まります。ただし、認証の前段で成立する脆弱性には多要素認証は効きません。設定で縮めるのは攻撃面であって、修正版の代わりにはならない点は押さえておきます。

SSL-VPNの終息とZTNA移行を判断する条件|更新を続けるか替えるか

FortiOS 7.6.3以降でSSL-VPNトンネルモードからIPsecへ移る準備

FortinetではSSL-VPNの扱いが従来から変更されています。公式のSSL VPN to IPsec VPN Migrationは、FortiOS 7.6.3以上へ上げる前に、SSL-VPNトンネルモードの代わりとしてIPsec VPNのリモートアクセスへ移るよう案内しています。IKEv2のIPsecはTCPの443番ポートを転送に使えるとされ、SSL-VPNを選んでいた理由の一つだったファイアウォール越えの問題にも対応できる仕組みです。代替としてZTNAも挙げられています。

脆弱性対応で7.6系の最新版へ上げようとしたら、SSL-VPNのトンネルモードが使えなくなる。この順番で気付くと、パッチ適用そのものが止まります。7.4系以前で運用している組織は、次の更新計画にIPsecへの移行を組み込んでおくべきです。IPsecの仕組みはIPsecとはで整理しています。拠点間の接続はSite-to-Site VPNの記事を参照してください。

VPNを維持してパッチ運用を回す組織と外部点検に任せる範囲の線引き

VPNを使い続けてよいのは、KEV追加から3日以内に修正版か回避策を入れられる体制がある組織です。具体的には、版の台帳があり、照合を自動で回し、夜間でも機器を再起動できる担当者を確保できていることが条件になります。拠点数が少なく、VPN機器が1〜2台にまとまっている環境もこちらに入ります。

反対に、保守を委託先に任せていて適用まで数週間かかる、機器の版を誰も把握していない、という状態なら、パッチ運用を続けるための前提が成立していない状態です。この場合は、外から見える入口と、破られたときに届く範囲を先に把握することから始めてください。自社だけで公開機器の洗い出しが難しいときは、脆弱性診断・セキュリティ診断で、VPN機器から業務システムまでの経路を含めて点検できます。継続的に露出を測る運用の考え方はCTEMとはが参考になります。

ZTNAへ移行すべき条件と移行しても残るインターネット公開の論点

ZTNAは、ネットワークの内側にいるかではなく、要求ごとに利用者と端末を確かめてアプリ単位で通す方式です。VPN機器をインターネットに公開し続ける必要がなくなるため、本記事で扱った入口そのものを減らせます。テレワーク利用者が多く、業務アプリがSaaSやクラウドに寄っている組織では、移行を採る価値が高いと判断します。

一方で、ZTNAに移っても、提供側のゲートウェイやコネクタの脆弱性は残ります。KEVにはIvantiのZTA Gatewaysを含む登録もあり、名前がZTNAでも照合対象から外してよいことにはなりません。オンプレミスの古い業務システムが多く、アプリ単位の切り分けが進まない組織では、短期的にはVPNのパッチ運用を固めるほうが現実的です。比較の詳細はゼロトラストネットワーク(ZTNA)とはで解説しています。

よくある質問

VPNの脆弱性対応について、確認手順と運用の判断で寄せられやすい質問をまとめました。

自社のVPN機器が脆弱性の対象かどうかは、どう確かめればよいですか?

機器のCLIで稼働中の版を取得し、ベンダーのアドバイザリにある「影響を受ける版」と突き合わせます。FortiGateはget system status、PAN-OSはshow system info、Cisco ASAはshow versionで確認できます。同じ版でも、SSL-VPNやGlobalProtectなど特定の機能を有効にしている場合だけ影響する脆弱性があるため、機能の有効・無効も一緒に確認してください。

SSL-VPNとIPsec-VPNでは、どちらが脆弱性に強いですか?

方式そのものの優劣より、実装している製品の更新状況で決まります。どちらの方式の製品もKEVに悪用済みの登録があり、方式を選んだだけで安全にはなりません。ただし製品の側では、FortinetがFortiOS 7.6.3以上へ上げる前にSSL-VPNトンネルモードからIPsecへ移るよう案内しています。新規に構築するなら、IPsecかZTNAを第一候補にするのが無難です。

修正版を当てれば、それで対応は終わりですか?

終わりではありません。KEVに載った脆弱性は悪用が確認済みのため、修正版を当てる前に侵入されていた可能性を残します。管理者アカウントの増減、接続ログの不審な成功、設定の変更履歴、機器から出ている業務外の通信を確認します。認証情報が抜かれている前提で、VPNアカウントのパスワード変更と不要アカウントの削除までを一続きで行ってください。

保守契約が切れた古いVPN機器を使い続けても大丈夫ですか?

使い続けるべきではありません。サポートが終わった機器には修正版が出ないため、脆弱性が公表された時点で塞ぐ手段がなくなります。IPAの注意喚起も、サポート終了機器は更新または廃棄の検討を求める内容です。入れ替えまでの期間は、管理画面の外部公開を止め、接続元を制限し、機器から出る通信を監視して露出を最小限にとどめます。

KEVはどのくらいの頻度で確認すればよいですか?

社外に公開したVPN機器があるなら、毎営業日の確認を勧めます。2026年6月以降のKEV追加分は、是正期限が追加日の3日後になっている例が大半で、週1回の確認では期限を過ぎてしまうことがあるためです。手で見るのは負担が大きいので、本記事のスクリプトを毎朝自動で回し、新しい登録があったときだけ通知する運用にしてください。

関連記事

お気に入りに入れた記事の一覧

資料請求

今日のトレンド記事 直近 24 時間で、いつもより多く読まれている記事

  1. 2026.10.07 テックブログ ファインズの不正アクセスと153万件の予約者情報|予約システムを使う店舗の報告と通知の手順
  2. 2025.08.14 コラム トラクションとは?ビジネスでの意味・指標の目安とgain tractionの使い方
  3. 2026.10.15 テックブログ 銀のさら不正アクセス:最大650万件の対象確認と窓口、パスワード変更・退会の手順
  4. 2026.10.19 テックブログ コミックシーモア不正アクセスで会員情報流出:再開時期・パスワード再設定と運営側のログ点検
  5. 2026.10.21 テックブログ ふるさとチョイス不正アクセスで445万件流出:対象確認・パスワード変更と再開時期

RELATED POSTS 関連記事

目次