
Citrix NetScaler CVE Preconditions Checker come da CTX696604 | CVE supportate: CVE-2026-8451, CVE-2026-8452, CVE-2026-8655, CVE-2026-10816, CVE-2026-10817 e CVE-2026-13474
Autore: Derek
Uno script Python per ispezionare i file di configurazione NetScaler (ns.conf) e determinare se un'appliance soddisfa le precondizioni per specifiche CVE. Lo script analizza la configurazione in esecuzione o i file di configurazione salvati e segnala configurazioni vulnerabili con risultati dettagliati.
| CVE | Descrizione | Precondizione verificata |
|---|
| CVE-2026-8451 | Profilo SAML IdP | add authentication samlIdPProfile .* |
| CVE-2026-8452 | Vserver di autenticazione / Gateway | add authentication vserver .* oppure add vpn vserver .* |
| CVE-2026-8655 | Oracle/DNS LB + ricorsione DNS | Oracle LB, vserver DNS/DOT, SSL+DNSoverHTTPS, risoluzione DNS ricorsiva |
| CVE-2026-10817 | TCP TimeStamp abilitato | Profili TCP con -TimeStamp ENABLED, traccia il mapping profilo-vserver/servizio, gestisce l'ereditarietà del profilo predefinito |
| CVE-2026-13474 | HTTP/2 abilitato | Profili HTTP con -http2 ENABLED, traccia il mapping profilo-vserver, gestisce l'ereditarietà del profilo predefinito |
nstcp_default_profile, nshttp_default_profile) hanno impostazioni vulnerabili ed elenca tutti i vserver/servizi che li ereditano.sshpass o SSH tramite paramiko (Python puro).--json per l'integrazione con pipeline CI/CD.--quiet per mostrare solo le CVE vulnerabili.git clone https://github.com/derekpreston81/CVE_ADC_IOC_2026.git
cd CVE_ADC_IOC_2026
pip install -r requirements.txt
Nota: Lo script funziona solo con la libreria standard di Python per la modalità file locale.
paramikoè richiesto solo per il recupero via SSH.
ns.conf localepython netscaler_cve_checker.py /path/to/ns.conf
python netscaler_cve_checker.py --ssh 192.168.1.1 nsroot password
Lo script proverà automaticamente sshpass prima, poi ripiegherà su 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
Dalla CLI NetScaler (o SSH):
show ns runningconfig > /var/tmp/ns.conf
Quindi scarica ns.conf tramite SCP/SFTP ed esegui il checker localmente.
Usa i flag --ssh o --ssh-paramiko (vedi sopra). Lo script esegue show ns runningconfig sull'appliance e analizza l'output.
================================================================================
NetScaler CVE Preconditions Checker
Version: 1.1
================================================================================
[CVE-2026-8451] SAML IdP Profile Configuration
Status: NOT VULNERABLE (Severity: NONE)
Precondition: add authentication samlIdPProfile .*
✓ No matching preconditions found.
[CVE-2026-8452] Authentication Vserver / Gateway (VPN) Vserver
Status: VULNERABLE (Severity: HIGH)
Preconditions:
- add authentication vserver .* (AAA Vserver)
- add vpn vserver .* (Gateway: VPN, ICA Proxy, CVPN, RDP Proxy)
⚠ Findings:
VPN/Gateway Vservers (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
Recommendation: Review AAA and VPN vservers. Apply patches and restrict access.
[CVE-2026-10817] TCP Profiles with TimeStamp ENABLED
Status: VULNERABLE (Severity: CRITICAL)
Precondition: TCP profiles with -TimeStamp ENABLED
⚠ Findings:
TCP Profiles with TimeStamp ENABLED (1):
> Profile: custom_profile
Config: add ns tcpProfile custom_profile -TimeStamp ENABLED
Attached Vservers (1):
- test_server (add lb vserver)
⚠ DEFAULT PROFILE (nstcp_default_profile) has TimeStamp ENABLED!
All vservers/services without explicit TCP profile are impacted.
Default-impacted Vservers (15):
- vs1 (add lb vserver)
- vs2 (add cs vserver)
...
Recommendation: Disable TimeStamp on TCP profiles unless required.
================================================================================
SUMMARY
================================================================================
CVE-2026-8451: SAFE
CVE-2026-8452: VULNERABLE
CVE-2026-8655: SAFE
CVE-2026-10817: VULNERABLE
CVE-2026-13474: SAFE
Total CVEs checked: 5
Vulnerable: 2
Safe: 3
ACTION REQUIRED: Review findings above and apply vendor patches.
================================================================================
sshpass not foundInstalla sshpass sul tuo sistema oppure usa --ssh-paramiko:
# Ubuntu/Debian
sudo apt-get install sshpass
# RHEL/CentOS/Rocky
sudo yum install sshpass
# macOS
brew install sshpass
paramiko non installatopip install paramiko
Quindi usa --ssh-paramiko per la modalità SSH.
Questo script è fornito così com'è per scopi di valutazione della sicurezza e conformità. Utilizzalo a tuo rischio. Valida sempre i risultati rispetto agli advisory di sicurezza del vendor prima di applicare modifiche.
Derek