Check Point CVE-2026-50751、CVE-2026-50752、CVE-2026-85102、CVE-2026-85103 に関連する設定マーカーをスキャンし、Check Point Management API コマンドを通じて選択した緩和策を適用するための、承認ベースのローカル Web アプリです。
このツールは Check Point によって作成またはサポートされたものではなく、自己責任で使用してください。緩和策は一時的なものです。Check Point は、Check Point Security Advisories で各 CVE に対して提供されているパッチを使用して、速やかにパッチを適用することを推奨しています。
このアプリはローカルで実行され、関連する VPN 設定をスキャンし、緩和が必要な可能性がある箇所を表示し、オペレーターが変更を承認できるようにし、管理セッションを公開できます。変更をゲートウェイに反映させるには、公開後にポリシーをインストールする必要があります。設定の検出結果は、ゲートウェイにパッチが適用されているか、または悪用可能であるかを確定するものではありません。
ログインはユーザー名/パスワードまたは API キー認証をサポートします。スキャン結果は、利用可能な場合は SMS 管理オブジェクト名、または返された Smart-1 Cloud/MDS ドメイン名を使用します。承認された変更は、対応するドメインセッションを使用します。
SMS のグローバル Remote Access VPN プロパティをスキャンします:
remote-access.vpn-authentication-and-encryption.encryption-method
現在の値が ike_v2_only でない場合、アプリはプロパティを次の値に設定する変更を承認および適用できます:
ike_v2_only
このスキャンは、非推奨の IKEv1 鍵交換が VPN Remote Access および Mobile Access に対してグローバルに許可されたままになっている露出を特定することを目的としています。IKEv1 は非推奨であり、業界のベストプラクティスではなくなりました。この変更は古い VPN クライアントに影響を与える可能性があります。Check Point の追加ガイダンスについては SK166415 を確認してください。
シンプルゲートウェイをスキャンし、各ゲートウェイの汎用オブジェクト内の VPN レルムを確認します:
realmsForBlades
アプリは、レガシークライアントがサポートされているか無効化されているかを報告します。緩和策が承認されると、VPN レルム所有オブジェクトの disabled 値を true に設定します。
ユーザー向けの結果テキスト:
Legacy clients are disabledLegacy Clients are Supportedレガシークライアントを許可すると、業界のベストプラクティスではなくなった IKEv1 のサポートが維持される可能性があります。レガシークライアントがまだ必要な場合を除き、この設定を無効化することを推奨します。レガシークライアントが必要な場合は、より安全な最新の VPN クライアントへ移行する計画を立ててください。
このチェックは、アプリで説明されている証明書検証の問題の設定マーカーとして、個人証明書認証を探します: VPN ネゴシエーション中の証明書データの不適切な検証により、未認証のリモート攻撃者がゲートウェイ上で任意のコードを実行できる可能性があります。
スキャンされた管理ドメインで返された各シンプルゲートウェイについて、アプリは show-simple-gateway を使用して完全な詳細を要求します。同等の CLI 検査は次のとおりです:
mgmt_cli -r true show simple-gateway name "YOUR_GATEWAY_NAME" details-level full --format json
これは vpn-settings.authentication.authentication-clients を検査し、各クライアントのネストされた authentication-methods 配列を含めて、次を探します:
{
"name": "Personal_Certificate",
"display-name": "Personal Certificate",
"authentication-methods": [
{ "authentication-factor": "personal-certificate" }
]
}
検出は、ハードコードされたクライアント名ではなく、認証ファクターを使用します。エビデンステーブルには、ゲートウェイ、ドメイン、UID、現在の状態、一致するクライアント表示名、およびステータスが表示されます。詳細が欠落または不完全な場合は Unknown として表示され、API 障害は Scan error として表示されます。どちらもクリーンな結果として扱われません。このチェックは現在、クラスターオブジェクトではなくシンプルゲートウェイを列挙します。
更新する各ゲートウェイのチェックボックスを選択し、Remove User Certificate をクリックします。アプリは選択されたゲートウェイを再チェックし、検出された個人証明書ログインオプションを実際のオブジェクト名で削除します。Personal_Certificate という名前のクライアントの場合、同等のコマンドは次のとおりです:
mgmt_cli -r true set simple-gateway name "YOUR_GATEWAY_NAME" vpn-settings.authentication.authentication-clients.remove "Personal_Certificate"
他の認証クライアントエントリはそのまま残ります。ログインオプションを削除すると、そのオプション全体が削除され、そこに含まれる追加のメソッドも含まれます。証明書オブジェクトは削除されません。削除されたオプションに依存しているクライアントは、ポリシーインストール後に別の認証方法が必要になります。
Publish after successful apply はデフォルトでチェックされています。アプリは個々のゲートウェイの成功と失敗を報告し、その後スキャンを更新します。いずれかのゲートウェイ更新が失敗した場合、このアクションは成功した変更を自動的に公開しません。手動で公開する前にそれらを確認してください。公開エラーは別途報告されます。公開後にポリシーをインストールしてください。
両方の Check Point サイトツーサイト VPN コミュニティタイプをスキャンします:
アプリは、次のすべてが確認された場合にのみ VPN コミュニティにフラグを立てます:
Star コミュニティの場合、アプリはセンターゲートウェイとサテライトゲートウェイを別々に表示します。API データが十分なオブジェクトタイプ情報を提供する場合、ゲートウェイ名はローカル管理または外部管理としてタグ付けされます。
Mesh コミュニティの場合、アプリはコミュニティの gateways リストからゲートウェイ名を取得します。Mesh コミュニティはこのツールでは外部管理ゲートウェイの処理を含まないため、そのフィールドは該当なしとして表示されます。
緩和策が承認されると、アプリは VPN コミュニティの暗号化方式を IKEv2 のみに設定しようとします。Star コミュニティは次を使用します:
set-vpn-community-star
Mesh コミュニティは次を使用します:
set-vpn-community-meshed
選択した Star コミュニティに外部管理ゲートウェイが含まれている場合、アプリは変更を適用する前に警告します。外部管理ゲートウェイ側でも一致する IKEv2 のみの変更が行われていることを確認する必要があります。
details-level: full を指定して show-global-properties から firewall.accept-control-connections を読み取ります。テーブルには Enabled、Disabled、Unknown、または Scan error が、管理/ドメインラベルと API エビデンスとともに表示されます。
これは読み取り専用のチェックです。暗黙のルールを明示的な Access Control ルールに置き換えるのは、SK179346 に従い、高セキュリティ環境でのみ行ってください。不正確なルールはポリシーインストールおよび管理/ログ接続を壊す可能性があります。設定が無効化されているだけでは、必要な明示的ルールが存在することを検証できません。
操作の実行中は、下部にライブステータスバーが表示されます。ログイン後、バックエンドに最新の API コマンド、ドメイン、および開始されたコマンド数をポーリングし、経過時間を表示します。アクティビティインジケーターは、完了率の推定値ではありません。
http://... として入力しないでください。Check Point API ログインが平文 HTTP で送信されることになります。http://127.0.0.1:3000 を介してローカルバックエンドと通信します。バックエンドは、これらの Check Point Management API コマンドをプロキシします:
loginlogoutpublishshow-sessionshow-domainsshow-gateways-and-serversshow-simple-gatewaysshow-simple-gatewayset-simple-gatewayshow-generic-objectset-generic-objectshow-global-propertiesset-global-propertiesshow-vpn-communities-starshow-vpn-communities-meshedset-vpn-community-starset-vpn-community-meshedこのプロジェクトにはサードパーティの npm 依存関係はありません。ソースから実行する場合は、Node.js 18 以降のみが必要です。
nodejs.org または Homebrew から Node.js 18 以降をインストールします。
brew install node
このプロジェクトをダウンロードまたはクローンします。
git clone <repo-url>
cd CVE-Web-Check
ローカルアプリを起動します。
npm start
npm 依存関係がないため、これも機能します:
node server.js
アプリを開きます。
http://127.0.0.1:3000
nodejs.org から Node.js 18 以降をインストールします。
プロジェクトの ZIP をダウンロードして展開するか、Git for Windows でリポジトリをクローンします。
git clone <repo-url>
cd CVE-Web-Check
ローカルアプリを起動します。
npm start
npm 依存関係がないため、これも機能します:
node server.js
ブラウザでアプリを開きます。
http://127.0.0.1:3000
デフォルトでは、アプリは 127.0.0.1:3000 でリッスンします。別のポートを使用するには:
macOS:
PORT=3100 npm start
Windows PowerShell:
$env:PORT = "3100"
npm start
次に開きます:
http://127.0.0.1:3100
実行中のアプリを http://127.0.0.1:3000 で開いてください。public/index.html をローカルファイルとして開かないでください。API 呼び出しとライブステータスバーには Node バックエンドが必要です。バックエンドの再起動後は、再度ログインして新しいスキャンを実行してください。
サーバーはリクエスト診断情報をターミナルに出力します。ログイン試行が成功すると、次のような行が表示されます:
Local API request requestId=abc12345 route=/api/login
Login request received target=https://mgmt.example.com/web_api/login user=admin
Check Point API request starting command=login target=https://mgmt.example.com/web_api/login
ブラウザにリクエスト ID 付きのログインエラーが表示されるのに、パケットキャプチャで管理サーバーへの送信試行が確認されない場合は、ターミナルの target= の値とパケットキャプチャのフィルターを比較してください。