
Verificador de Pré-condições de CVE do Citrix NetScaler de acordo com CTX696604 | CVEs suportados: CVE-2026-8451, CVE-2026-8452, CVE-2026-8655, CVE-2026-10816, CVE-2026-10817 e CVE-2026-13474
Autor: Derek
Um script Python para inspecionar arquivos de configuração do NetScaler (ns.conf) e determinar se um appliance atende às pré-condições para CVEs específicas. O script analisa a configuração em execução ou arquivos de configuração salvos e relata configurações vulneráveis com descobertas detalhadas.
| CVE | Descrição | Pré-condição Verificada |
|---|
| CVE-2026-8451 | Perfil SAML IdP | add authentication samlIdPProfile .* |
| CVE-2026-8452 | Vserver de Autenticação/Gateway | add authentication vserver .* ou add vpn vserver .* |
| CVE-2026-8655 | Oracle/DNS LB + Recursão DNS | LB Oracle, vservers DNS/DOT, SSL+DNSoverHTTPS, resolução recursiva DNS |
| CVE-2026-10817 | TCP TimeStamp ATIVADO | Perfis TCP com -TimeStamp ENABLED, rastreia mapeamento perfil-vserver/serviço, lida com herança de perfil padrão |
| CVE-2026-13474 | HTTP/2 ATIVADO | Perfis HTTP com -http2 ENABLED, rastreia mapeamento perfil-vserver, lida com herança de perfil padrão |
nstcp_default_profile, nshttp_default_profile) possuem configurações vulneráveis e enumera todos os vservers/serviços que os herdam.sshpass ou SSH via paramiko (Python puro).--json para integração com pipelines CI/CD.--quiet para exibir apenas CVEs vulneráveis.git clone https://github.com/derekpreston81/CVE_ADC_IOC_2026.git
cd CVE_ADC_IOC_2026
pip install -r requirements.txt
Nota: O script funciona apenas com a biblioteca padrão do Python para modo de arquivo local.
paramikoé necessário apenas para busca 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
O script tentará automaticamente sshpass primeiro e, em seguida, recorrerá a 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
No CLI do NetScaler (ou SSH):
show ns runningconfig > /var/tmp/ns.conf
Em seguida, baixe ns.conf via SCP/SFTP e execute o verificador localmente.
Use as flags --ssh ou --ssh-paramiko (veja acima). O script executa show ns runningconfig no appliance e analisa a saída.
================================================================================
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 foundInstale o sshpass no seu sistema, ou use --ssh-paramiko:
# Ubuntu/Debian
sudo apt-get install sshpass
# RHEL/CentOS/Rocky
sudo yum install sshpass
# macOS
brew install sshpass
paramiko não instaladopip install paramiko
Em seguida, use --ssh-paramiko para modo SSH.
Este script é fornecido como está para fins de avaliação de segurança e conformidade. Use por sua conta e risco. Sempre valide as descobertas com os avisos de segurança do fornecedor antes de aplicar alterações.
Derek