
Escáner de vulnerabilidades no destructivo para CVE-2026-25075 en servidores VPN strongSwan. Detecta un subdesbordamiento de enteros en el plugin EAP-TTLS mediante un AVP manipulado sin causar interrupción.
Detecte de forma segura si un servidor VPN strongSwan es vulnerable a CVE-2026-25075 sin causar interrupciones. Consulte el análisis completo en el blog de Bishop Fox.
CVE-2026-25075 es una vulnerabilidad de desbordamiento por subestimación de enteros (integer underflow) en el plugin EAP-TTLS de strongSwan que permite a atacantes remotos no autenticados bloquear el daemon IKE mediante un mensaje EAP-TTLS especialmente manipulado. La vulnerabilidad afecta todas las versiones de strongSwan desde la 4.5.0 hasta la 6.0.4, abarcando más de 15 años de lanzamientos.
Esta herramienta realiza pruebas de vulnerabilidad no destructivas mediante:
length=1 pero sin datosEl envío de una cabecera AVP con un campo de longitud no válido pero sin datos acompañantes desencadena el integer underflow con fines de detección, pero evita la corrupción del heap porque memcpy(ptr, data, 0) es una operación nula. El servidor permanece estable y puede seguir manejando conexiones.
Servidores vulnerables aceptarán el AVP malformado y enviarán un acuse de recibo EAP-TTLS, confirmando la presencia de CVE-2026-25075.
Servidores parcheados (6.0.5+) rechazarán el AVP malformado debido a las comprobaciones de validación introducidas en la corrección.
Servidores no afectados no podrán realizar el handshake EAP-TTLS, en cuyo caso la vulnerabilidad queda efectivamente mitigada.
git clone https://github.com/BishopFox/CVE-2026-25075-check
cd CVE-2026-25075-check
python3 -m pip install pycryptodome tlslite-ng
Pruebe un servidor strongSwan en <TARGET>:<PORT>. El puerto IKE predeterminado es 500/UDP.
python3 CVE-2026-25075-check.py <TARGET> [PORT]
$ python3 CVE-2026-25075-check.py 192.168.1.100 500
======================================================================
strongSwan CVE-2026-25075 Vulnerability Scanner
Non-Destructive Detection
======================================================================
[*] Target: 192.168.1.100:500
[*] Testing for CVE-2026-25075 (non-destructive)
[1] IKE_SA_INIT... OK
[2] IKE_AUTH... OK
[3] EAP Identity... OK
[4] TLS handshake... OK
[5] Sending test AVP with length=1 (header only, no data)... SENT
[*] Analyzing server response...
[+] Server sent EAP-TTLS ACK (waiting for more data)
[!] Server accepted AVP with length < 8
[!] Integer underflow vulnerability confirmed
======================================================================
RESULT: VULNERABLE to CVE-2026-25075
Server version likely: 4.5.0 - 6.0.4
Recommendation: Upgrade to strongSwan 6.0.5+
======================================================================
$ python3 CVE-2026-25075-check.py 192.168.1.200 500
======================================================================
strongSwan CVE-2026-25075 Vulnerability Scanner
Non-Destructive Detection
======================================================================
[*] Target: 192.168.1.200:500
[*] Testing for CVE-2026-25075 (non-destructive)
[1] IKE_SA_INIT... OK
[2] IKE_AUTH... OK
[3] EAP Identity... OK
[4] TLS handshake... OK
[5] Sending test AVP with length=1 (header only, no data)... SENT
[*] Analyzing server response...
[!] No response from server
[-] Connection likely closed (AVP rejected)
======================================================================
RESULT: NOT VULNERABLE (or patched)
Server rejected AVP with invalid length
======================================================================
La herramienta solo puede detectar la vulnerabilidad si se cumplen las siguientes condiciones:
Si no se cumple alguna condición, la herramienta fallará de forma controlada en la etapa correspondiente e informará un resultado INCONCLUSIVE. Por ejemplo:
Este código se distribuye bajo una licencia MIT.
El uso de esta herramienta para atacar objetivos sin consentimiento mutuo previo es ilegal. Es responsabilidad del usuario final cumplir con todas las leyes locales, estatales y federales aplicables. Los desarrolladores no asumen ninguna responsabilidad y no se hacen responsables por cualquier uso indebido o daño causado por este programa.