
Citrix NetScaler CVE事前条件チェッカー (CTX696604準拠) | 対応CVE : CVE-2026-8451, CVE-2026-8452, CVE-2026-8655, CVE-2026-10816, CVE-2026-10817, および CVE-2026-13474
作成者: Derek
NetScaler構成ファイル(ns.conf)を検査し、アプライアンスが特定のCVEの前提条件を満たしているかどうかを判定するPythonスクリプト。このスクリプトは実行中の構成または保存済み構成ファイルを解析し、詳細な結果とともに脆弱な構成を報告します。
| CVE | 説明 | 確認される前提条件 |
|---|---|---|
| CVE-2026-8451 | SAML IdPプロファイル | add authentication samlIdPProfile .* |
| CVE-2026-8452 | Auth / Gateway Vserver | add authentication vserver .* または add vpn vserver .* |
| CVE-2026-8655 | Oracle/DNS LB + DNS再帰 | Oracle LB、DNS/DOT vserver、SSL+DNSoverHTTPS、DNS再帰解決 |
| CVE-2026-10817 | TCP TimeStamp ENABLED | -TimeStamp ENABLED が設定されたTCPプロファイル、プロファイルからvserver/serviceへのマッピング追跡、デフォルトプロファイルの継承を処理 |
| CVE-2026-13474 | HTTP/2 ENABLED | -http2 ENABLED が設定されたHTTPプロファイル、プロファイルからvserverへのマッピング追跡、デフォルトプロファイルの継承を処理 |
nstcp_default_profile、nshttp_default_profile)に脆弱な設定がある場合に検出し、継承しているすべてのvserver/serviceを列挙します。sshpass経由のSSH、またはparamiko(純粋Python)経由のSSH。--jsonフラグ。--quiet。git clone https://github.com/derekpreston81/CVE_ADC_IOC_2026.git
cd CVE_ADC_IOC_2026
pip install -r requirements.txt
注: ローカルファイルモードでは、スクリプトはPython標準ライブラリのみで動作します。
paramikoはSSHでの取得にのみ必要です。
ns.conf ファイルをチェックpython netscaler_cve_checker.py /path/to/ns.conf
python netscaler_cve_checker.py --ssh 192.168.1.1 nsroot password
スクリプトは最初にsshpassを試行し、失敗した場合はparamikoにフォールバックします。
python netscaler_cve_checker.py --ssh-paramiko 192.168.1.1 nsroot password
python netscaler_cve_checker.py --json /path/to/ns.conf
python netscaler_cve_checker.py --quiet /path/to/ns.conf
NetScaler CLI(またはSSH)から:
show ns runningconfig > /var/tmp/ns.conf
その後、SCP/SFTPでns.confをダウンロードし、チェッカーをローカルで実行します。
--sshまたは--ssh-paramikoフラグを使用します(上記参照)。スクリプトがアプライアンス上でshow ns runningconfigを実行し、出力を解析します。
================================================================================
NetScaler CVE 前提条件チェッカー
バージョン: 1.1
================================================================================
[CVE-2026-8451] SAML IdPプロファイル構成
ステータス: 脆弱ではない(重要度: なし)
前提条件: add authentication samlIdPProfile .*
✓ 一致する前提条件は見つかりませんでした。
[CVE-2026-8452] 認証Vserver / ゲートウェイ(VPN)Vserver
ステータス: 脆弱(重要度: 高)
前提条件:
- add authentication vserver .*(AAA Vserver)
- add vpn vserver .*(ゲートウェイ: VPN, ICAプロキシ, CVPN, RDPプロキシ)
⚠ 検出結果:
VPN/ゲートウェイ Vserver (2):
> add vpn vserver GW_VPN SSL 10.0.0.10 443 -icaOnly ON
> add vpn vserver RDP_PROXY SSL 10.0.0.11 443
推奨事項: AAAおよびVPN vserverを確認してください。パッチを適用し、アクセスを制限してください。
[CVE-2026-10817] TimeStamp ENABLEDが設定されたTCPプロファイル
ステータス: 脆弱(重要度: 重大)
前提条件: -TimeStamp ENABLED が設定されたTCPプロファイル
⚠ 検出結果:
TimeStamp ENABLEDが設定されたTCPプロファイル (1):
> プロファイル: custom_profile
設定: add ns tcpProfile custom_profile -TimeStamp ENABLED
接続されているVserver (1):
- test_server (add lb vserver)
⚠ デフォルトプロファイル (nstcp_default_profile) でTimeStampが ENABLED になっています!
明示的なTCPプロファイルがないすべてのvserver/serviceが影響を受けます。
デフォルトにより影響を受けるVserver (15):
- vs1 (add lb vserver)
- vs2 (add cs vserver)
...
推奨事項: 必要な場合を除き、TCPプロファイルでTimeStampを無効にしてください。
================================================================================
サマリー
================================================================================
CVE-2026-8451: 安全
CVE-2026-8452: 脆弱
CVE-2026-8655: 安全
CVE-2026-10817: 脆弱
CVE-2026-13474: 安全
チェック済みCVE数: 5
脆弱: 2
安全: 3
対応が必要: 上記の検出結果を確認し、ベンダーのパッチを適用してください。
================================================================================
sshpass not found エラーシステムにsshpassをインストールするか、代わりに--ssh-paramikoを使用してください:
# Ubuntu/Debian
sudo apt-get install sshpass
# RHEL/CentOS/Rocky
sudo yum install sshpass
# macOS
brew install sshpass
paramiko がインストールされていないpip install paramiko
その後、SSHモードでは--ssh-paramikoを使用してください。
このスクリプトは、セキュリティ評価およびコンプライアンス目的で現状のまま提供されます。自己責任で使用してください。変更を適用する前に、必ずベンダーのセキュリティアドバイザリに対して検出結果を検証してください。
Derek