
Python script to sweep a fleet of Palo Alto firewalls and Panoramas via SSH, check PAN-OS version against CVE-2026-0265 (Authentication Bypass via Cloud Authentication Service), detect whether CAS is actually configured, and report exploitability in a color-coded summary table.
VULNERABLE — versión afectada y CAS configurado (exposición real)
NOT_EXPLOITABLE — versión afectada, pero no hay ningún perfil CAS definido; la ruta de código vulnerable no es alcanzable
SAFE — ejecuta una versión corregida o no afectadaparamiko (pip install paramiko)
Una cuenta de administrador de solo lectura que exista en todos los dispositivos de tu lista (TACACS+, RADIUS, SAML o local — cualquier método sirve siempre que las mismas credenciales autentiquen en todos los sitios).
Conectividad SSH (TCP/22) desde donde ejecutes el script hasta la interfaz de gestión de cada dispositivo.Instalación
git clone https://github.com/YOUR_USERNAME/palo-alto-cve-2026-0265-checker.git
cd palo-alto-cve-2026-0265-checker
pip install paramiko
check_cve_2026_0265.py y edita la lista DEVICES cerca de la parte superior con tus propios nombres de host e IPs de gestión:
python DEVICES = [ ("fw1-prod-region1", "192.0.2.10"), ("fw2-prod-region1", "192.0.2.11"), ("panorama1", "198.51.100.10"), # ... ]
Opcionalmente, cambia por tu cuenta de administrador de solo lectura habitual.
Ejecuta el script:
Introduce tu nombre de usuario y contraseña SSH cuando se te solicite. Las mismas credenciales se reutilizan para todos los dispositivos.Salida de ejemplo
================================================================================
CVE-2026-0265 Risk Checker - Multi-device PAN-OS sweep
================================================================================
Devices in list: 6
Parallel workers: 8
SSH username for all devices [admin]:
Password for admin:
Checking devices (results appear as each finishes) ...
------------------------------------------------------------------------------
[ 1/ 6] fw1-prod-region1 192.0.2.10 NOT_EXPLOITABLE 11.1.4-h7 CAS:no
[ 2/ 6] fw2-prod-region1 192.0.2.11 NOT_EXPLOITABLE 11.1.4-h7 CAS:no
[ 3/ 6] fw1-prod-region2 192.0.2.20 SAFE 11.0.3-h10 CAS:no
[ 4/ 6] fw2-prod-region2 192.0.2.21 SAFE 11.0.3-h10 CAS:no
[ 5/ 6] panorama1-region1 198.51.100.10 NOT_EXPLOITABLE 11.2.7-h4 CAS:no
[ 6/ 6] panorama2-region2 198.51.100.20 NOT_EXPLOITABLE 11.2.7-h4 CAS:no
------------------------------------------------------------------------------
Completed in 18.4 seconds
================================================================================
CVE-2026-0265 Assessment Summary
================================================================================
-----------------------------------------------------------------------------------------------------
HOSTNAME MGMT IP VERSION AFFECTED BY CVE CAS STATUS FIX VERSION
-----------------------------------------------------------------------------------------------------
fw1-prod-region1 192.0.2.10 11.1.4-h7 yes no NOT_EXPLOITABLE 11.1.4-h33
fw2-prod-region1 192.0.2.11 11.1.4-h7 yes no NOT_EXPLOITABLE 11.1.4-h33
panorama1-region1 198.51.100.10 11.2.7-h4 yes no NOT_EXPLOITABLE 11.2.7-h13
panorama2-region2 198.51.100.20 11.2.7-h4 yes no NOT_EXPLOITABLE 11.2.7-h13
fw1-prod-region2 192.0.2.20 11.0.3-h10 no no SAFE -
fw2-prod-region2 192.0.2.21 11.0.3-h10 no no SAFE -
-----------------------------------------------------------------------------------------------------
Total: 6 | Vulnerable: 0 | Not exploitable: 4 | Safe: 2 | Errors: 0
-----------------------------------------------------------------------------------------------------
STATUS tiene códigos de color:
Estado Color Significado
rojo en negrita Versión afectada y CAS configurado — parchea de inmediato
amarillo Versión afectada, pero CAS no está configurado — parchea en la próxima ventana de mantenimiento
verde La versión es igual o posterior al hotfix corregido para este CVE
Los estados de error (, , ) se enumeran en el bloque de detalle de errores debajo de la tabla.Cómo funciona Para cada dispositivo, el script abre una sesión SSH interactiva y ejecuta dos comandos:
show system info | match sw-
show config running | match cloud-authentication-service
El primero devuelve una línea como sw-version: 11.1.4-h7. El segundo está vacío si no hay ningún perfil de autenticación basado en CAS configurado en el dispositivo. El script combina estas dos respuestas con la tabla de versiones afectadas del aviso publicado.
Nota sobre la detección de CAS: cuando un filtro
matchno encuentra coincidencias, el dispositivo no devuelve nada más que el comando repetido y el siguiente prompt. El script tiene en cuenta que el propio comando repetido contiene la palabra clave y solo marca CAS como "configurado" cuando la palabra clave aparece más de una vez en la salida.
Descargo de responsabilidad Este script se proporciona tal cual para uso operativo y de seguridad defensiva. No está afiliado ni respaldado por Palo Alto Networks. Confirma siempre la aplicabilidad del CVE consultando el aviso oficial del fabricante antes de tomar decisiones de parcheo.
showuser@host(active)>AFFECTED BY CVECASSTATUSexitDEFAULT_USERbash python check_cve_2026_0265.py VULNERABLENOT_EXPLOITABLESAFEAUTH_FAILUNREACHABLEPARSE_ERRNOT_EXPLOITABLEcloud-authentication-serviceVULNERABLE