
PoC multilingüe (Python · Go · JS · C) y documentación técnica para CVE-2025-63353, una vulnerabilidad crítica de clave PSK predeterminada predecible en dispositivos FiberHome HG6145F1 GPON ONT.
Kit de herramientas de investigación educativa y PoC multilingüe para CVE-2025-63353, una vulnerabilidad crítica de PSK predeterminado predecible que afecta a los dispositivos GPON ONT FiberHome HG6145F1 RP4423.
La clave precompartida Wi-Fi predeterminada de fábrica de los dispositivos FiberHome HG6145F1 afectados es una función determinista del SSID emitido. Un atacante que observe una trama de baliza de un dispositivo vulnerable puede derivar el PSK WPA2 en tiempo constante, sin capturar un handshake, sin diccionario, sin GPU y sin interacción con el cliente.
Para un dispositivo que emite el SSID fh_<hex_a>, el PSK predeterminado es:
PSK = "wlan" + hex(0xFFFFFF XOR hex_a)
Ejemplo: fh_a1f9d1 → wlan5e062e
El espacio de claves efectivo por dispositivo es 1. El espacio de claves a nivel de población en todos los despliegues de HG6145F1 es de como máximo 2²⁴ ≈ 16,7 millones de pares (SSID, PSK) y, dado que el SSID se emite, la correspondencia entre SSID y PSK es biunívoca.
Este trabajo se basa enteramente en la investigación y divulgación original de la vulnerabilidad realizada por Hani Anis Bouzid:
Todo el crédito por el descubrimiento de la vulnerabilidad y la divulgación pública inicial corresponde a Hani Anis Bouzid. Este repositorio amplía la divulgación original con implementaciones PoC en varios lenguajes y un conjunto de documentación técnica seleccionada.
.
├── README.md
├── LICENSE
├── docs/
│ ├── vulnerability.md Technical analysis of the algorithm
│ ├── timeline.md Disclosure chronology and vendor response
│ ├── affected-deployments.md Device specifications and known deployments
│ ├── related-research.md Lineage of predictable-PSK vulnerabilities
│ ├── references.md Curated bibliography
│ └── mitigation.md Guidance for users, ISPs, and vendors
└── poc/
├── python/ pure-Python implementation, no dependencies
├── go/ standalone Go binary
├── javascript/ browser-friendly JS / Node.js
└── c/ portable single-file ANSI C (compiles anywhere)
# Python
python3 poc/python/fh-poc.py fh_a1f9d1
# wlan5e062e
# Go
cd poc/go && go run fh-poc.go fh_a1f9d1
# wlan5e062e
# JavaScript (Node)
node poc/javascript/fh-poc.js fh_a1f9d1
# wlan5e062e
# C
cc poc/c/fh-poc.c -o fh-poc && ./fh-poc fh_a1f9d1
# wlan5e062e
Las cuatro implementaciones están escritas de forma independiente, no tienen dependencias y producen una salida idéntica. Use la que mejor se adapte a su entorno.
| Campo | Valor |
|---|---|
| Fabricante | FiberHome (Wuhan FiberHome International Technologies) |
| Modelo | HG6145F1 |
La vulnerabilidad está divulgada actualmente solo para el firmware HG6145F1 RP4423. La verificación en la familia de modelos más amplia HG6145 / HG6243 / HG6821 es una cuestión de investigación abierta. Consulte docs/affected-deployments.md.
Para usuarios finales de un HG6145F1:
Consulte docs/mitigation.md para obtener orientación específica para ISP y fabricantes.
Este repositorio se publica solo con fines educativos y de investigación de seguridad defensiva. La vulnerabilidad documentada aquí se divulga públicamente bajo CVE-2025-63353 y ha recibido una calificación de severidad crítica por parte de CISA-ADP.
El uso del código de este repositorio contra redes que no sean de su propiedad o para las que no tenga autorización escrita explícita para realizar pruebas es ilegal en la mayoría de las jurisdicciones, incluida la Ley marroquí 07-03 sobre ciberdelincuencia, los marcos de la UE sobre uso indebido de ordenadores, la Ley de Fraude y Abuso Informático de EE. UU. y la legislación equivalente en otros países. Los autores no aceptan ninguna responsabilidad por el uso no autorizado de este material.
Se mantiene una bibliografía completa de fuentes primarias, vulnerabilidades relacionadas y literatura académica en docs/references.md.
Se agradecen los resultados de pruebas verificados contra modelos adicionales de FiberHome, versiones de firmware o variantes personalizadas por ISP mediante pull request a docs/affected-deployments.md. Incluya la versión de firmware, el prefijo SSID de la etiqueta del dispositivo y el método de verificación.
Ayman Wadi — Ingeniero de Seguridad
| Firmware | RP4423 |
| Tipo de dispositivo | GPON ONT, Wi-Fi 6 (802.11ax), doble banda 2.4/5 GHz |
| Estándares | ITU-T G.984 Class B+, IEEE 802.11 a/b/g/n/ac/ax |