
Vérificateur de préconditions Citrix NetScaler CVE selon CTX696604 | CVE pris en charge : CVE-2026-8451, CVE-2026-8452, CVE-2026-8655, CVE-2026-10816, CVE-2026-10817, et CVE-2026-13474
Auteur : Derek
Un script Python pour inspecter les fichiers de configuration NetScaler (ns.conf) et déterminer si un équipement répond aux préconditions pour des CVE spécifiques. Le script analyse la configuration en cours ou les fichiers de configuration sauvegardés et rapporte les configurations vulnérables avec des résultats détaillés.
| CVE | Description | Précondition vérifiée |
|---|---|---|
| CVE-2026-8451 | Profil IdP SAML | add authentication samlIdPProfile .* |
| CVE-2026-8452 | Vserveur d'authentification / passerelle | add authentication vserver .* ou add vpn vserver .* |
| CVE-2026-8655 | LB Oracle/DNS + récursion DNS | Oracle LB, serveurs DNS/DOT, SSL+DNSoverHTTPS, résolution DNS récursive |
| CVE-2026-10817 | TimeStamp TCP ACTIVÉ | Profils TCP avec -TimeStamp ENABLED, trace du mappage profil-vers-vserveur/service, gestion de l'héritage du profil par défaut |
| CVE-2026-13474 | HTTP/2 ACTIVÉ | Profils HTTP avec -http2 ENABLED, trace du mappage profil-vers-vserveur, gestion de l'héritage du profil par défaut |
nstcp_default_profile, nshttp_default_profile) ont des paramètres vulnérables et énumère tous les vserveurs/services qui en héritent.sshpass, ou SSH via paramiko (Python pur).--json pour l'intégration dans des pipelines CI/CD.--quiet pour afficher uniquement les CVE vulnérables.git clone https://github.com/derekpreston81/CVE_ADC_IOC_2026.git
cd CVE_ADC_IOC_2026
pip install -r requirements.txt
Remarque : Le script fonctionne uniquement avec la bibliothèque standard Python pour le mode fichier local.
paramikoest seulement nécessaire pour la récupération via SSH.
ns.conf localpython netscaler_cve_checker.py /path/to/ns.conf
python netscaler_cve_checker.py --ssh 192.168.1.1 nsroot password
Le script essaiera d'abord sshpass, puis se rabattra sur 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
Depuis la CLI NetScaler (ou SSH) :
show ns runningconfig > /var/tmp/ns.conf
Ensuite, téléchargez ns.conf via SCP/SFTP et exécutez le vérificateur localement.
Utilisez les options --ssh ou --ssh-paramiko (voir ci-dessus). Le script exécute show ns runningconfig sur l'équipement et analyse la sortie.
================================================================================
NetScaler CVE Preconditions Checker
Version: 1.1
================================================================================
[CVE-2026-8451] Configuration du profil IdP SAML
Statut : NON VULNÉRABLE (Sévérité : AUCUNE)
Précondition : add authentication samlIdPProfile .*
✓ Aucune précondition correspondante trouvée.
[CVE-2026-8452] Vserveur d'authentification / Vserveur passerelle (VPN)
Statut : VULNÉRABLE (Sévérité : ÉLEVÉE)
Préconditions :
- add authentication vserver .* (AAA Vserver)
- add vpn vserver .* (Passerelle : VPN, Proxy ICA, CVPN, Proxy RDP)
⚠ Résultats :
Vserveurs VPN/Passerelle (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
Recommandation : Examinez les vserveurs AAA et VPN. Appliquez les correctifs et restreignez l'accès.
[CVE-2026-10817] Profils TCP avec TimeStamp ACTIVÉ
Statut : VULNÉRABLE (Sévérité : CRITIQUE)
Précondition : Profils TCP avec -TimeStamp ENABLED
⚠ Résultats :
Profils TCP avec TimeStamp ACTIVÉ (1) :
> Profil : custom_profile
Config : add ns tcpProfile custom_profile -TimeStamp ENABLED
Vserveurs attachés (1) :
- test_server (add lb vserver)
⚠ PROFIL PAR DÉFAUT (nstcp_default_profile) a TimeStamp ACTIVÉ !
Tous les vserveurs/services sans profil TCP explicite sont impactés.
Vserveurs impactés par défaut (15) :
- vs1 (add lb vserver)
- vs2 (add cs vserver)
...
Recommandation : Désactivez TimeStamp sur les profils TCP sauf si nécessaire.
================================================================================
RÉSUMÉ
================================================================================
CVE-2026-8451 : SÉCURISÉ
CVE-2026-8452 : VULNÉRABLE
CVE-2026-8655 : SÉCURISÉ
CVE-2026-10817 : VULNÉRABLE
CVE-2026-13474 : SÉCURISÉ
Total CVE vérifiées : 5
Vulnérables : 2
Sécurisées : 3
ACTION REQUISE : Examinez les résultats ci-dessus et appliquez les correctifs du fournisseur.
================================================================================
sshpass not foundInstallez sshpass sur votre système, ou utilisez --ssh-paramiko à la place :
# Ubuntu/Debian
sudo apt-get install sshpass
# RHEL/CentOS/Rocky
sudo yum install sshpass
# macOS
brew install sshpass
paramiko non installépip install paramiko
Utilisez ensuite --ssh-paramiko pour le mode SSH.
Ce script est fourni en l'état à des fins d'évaluation de sécurité et de conformité. Utilisez-le à vos risques et périls. Validez toujours les résultats par rapport aux avis de sécurité du fournisseur avant d'appliquer des modifications.
Derek