"Netgear Doomsday" con brecha critica afectando a unos 30 modelos

[h]CVE-2017-5521: Obtención de credenciales en varios Puntos de Acceso Netgear[/h]

La brecha salió ayer y querría comentar algo pero ayer no he tenido tiempo para nada. :confused:
Es una brecha “critica” (para ser más preciso son dos formas de explotar una brecha) ya que permite la obtención de la contraseña de administrador de los modelos afectados.
Lo más impresionante es la lista de modelos afectados que es propiamente descomunal.

[quote=modo 1]Finding 1: Remote and Local Password Disclosure
Credit: Simon Kenin of Trustwave SpiderLabs
CVE: CVE-2017-5521

Version affected:

AC1450 V1.0.0.34_10.0.16 (Latest)

AC1450 V1.0.0.22_1.0.10

AC1450 V1.0.0.14_1.0.6

D6400 V1.0.0.44_1.0.44 (V1.0.0.52_1.0.52 and above not affected)

D6400 V1.0.0.34_1.3.34

D6400 V1.0.0.38_1.1.38

D6400 V1.0.0.22_1.0.22

DC112A V1.0.0.30_1.0.60 (Latest)

DGN2200v4 V1.0.0.24_5.0.8 (V1.0.0.66_1.0.66 is latest and is not affected)

JNDR3000 V1.0.0.18_1.0.16 (Latest)

R6200 V1.0.1.48_1.0.37 (V1.0.1.52_1.0.41 and above are not affected)

R6200v2 V1.0.1.20_1.0.18 (V1.0.3.10_10.1.10 is latest and is not affected)

R6250 V1.0.1.84_1.0.78 (V1.0.4.2_10.1.10 is latest and is not affected)

R6300 V1.0.2.78_1.0.58 (Latest)

R6300v2 V1.0.4.2_10.0.74 (V1.0.4.6_10.0.76 is latest and is patched)

R6300v2 V1.0.3.30_10.0.73

R6700 V1.0.1.14_10.0.29 (Latest beta)

R6700 V1.0.0.26_10.0.26 (Latest stable)

R6700 V1.0.0.24_10.0.18

R6900 V1.0.0.4_1.0.10 (Latest)

R7000 V1.0.6.28_1.1.83 (V1.0.7.2_1.1.93 is latest and is patched)

R8300 V1.0.2.48_1.0.52

R8500 V1.0.2.30_1.0.43 (V1.0.2.64_1.0.62 and above is patched)

R8500 V1.0.2.26_1.0.41

R8500 V1.0.0.56_1.0.28

R8500 V1.0.0.20_1.0.11

VEGN2610 V1.0.0.35_1.0.35 (Latest)

VEGN2610 V1.0.0.29_1.0.29

VEGN2610 V1.0.0.27_1.0.27

WNDR3400v2 V1.0.0.16_1.0.34 (V1.0.0.52_1.0.81 is latest and is not affected)

WNDR3400v3 V1.0.0.22_1.0.29 (V1.0.1.2_1.0.51 is latest and is not affected)

WNDR3700v3 V1.0.0.38_1.0.31 (Latest)

WNDR4000 V1.0.2.4_9.1.86 (Latest)

WNDR4500 V1.0.1.40_1.0.68 (Latest)

WNDR4500v2 V1.0.0.60_1.0.38 (Latest)

WNDR4500v2 V1.0.0.42_1.0.25

WGR614v10 V1.0.2.60_60.0.85NA (Latest)

WGR614v10 V1.0.2.58_60.0.84NA

WGR614v10 V1.0.2.54_60.0.82NA

WN3100RP V1.0.0.14_1.0.19 (Latest)

WN3100RP V1.0.0.6_1.0.12

Lenovo R3220 V1.0.0.16_1.0.16 (Latest)

Lenovo R3220 V1.0.0.13_1.0.13[/quote]

[quote=modo 2]# AC1450 V1.0.0.34_10.0.16 (Latest)

AC1450 V1.0.0.22_1.0.10

AC1450 V1.0.0.14_1.0.6

D6300 V1.0.0.96_1.1.96 (Latest)

D6300B V1.0.0.36_1.0.36

D6300B V1.0.0.32_1.0.32

D6400 V1.0.0.44_1.0.44 (V1.0.0.52_1.0.52 is latest and is patched)

D6400 V1.0.0.22_1.0.22

DC112A V1.0.0.30_1.0.60 (Latest)

DGN2200v4 V1.0.0.76_1.0.76 (Latest)

DGN2200v4 V1.0.0.66_1.0.66

DGN2200Bv4 V1.0.0.68_1.0.68 (Latest)

JNDR3000 V1.0.0.18_1.0.16 (Latest)

R6200 V1.0.1.56_1.0.43 (Latest)

R6200 V1.0.1.52_1.0.41

R6200 V1.0.1.48_1.0.37

R6200v2 V1.0.3.10_10.1.10 (Latest)

R6200v2 V1.0.1.20_1.0.18

R6250 V1.0.4.6_10.1.12 (Latest beta)

R6250 V1.0.4.2_10.1.10 (Latest stable)

R6250 V1.0.1.84_1.0.78

R6300 V1.0.2.78_1.0.58 (Latest)

R6300v2 V1.0.4.2_10.0.74 (V1.0.4.6_10.0.76 is latest and is patched)

R6300v2 V1.0.3.6_1.0.63CH (Charter Comm.)

R6400 V1.0.0.26_1.0.14 (V1.0.1.12_1.0.11 is latest and is patched)

R6700 V1.0.0.26_10.0.26 (Latest)

R6700 V1.0.0.24_10.0.18

R6900 V1.0.0.4_1.0.10 (Latest)

R7000 V1.0.6.28_1.1.83 (V1.0.7.2_1.1.93 is latest and is patched)

R7000 V1.0.4.30_1.1.67

R7900 V1.0.1.8_10.0.14 (Latest beta)

R7900 V1.0.1.4_10.0.12 (Latest stable)

R7900 V1.0.0.10_10.0.7

R7900 V1.0.0.8_10.0.5

R7900 V1.0.0.6_10.0.4

R8000 V1.0.3.26_1.1.18 (Latest beta)

R8000 V1.0.3.4_1.1.2 (Latest stable)

R8300 V1.0.2.48_1.0.52

R8500 V1.0.0.56_1.0.28 (V1.0.2.64_1.0.62 and above is patched)

R8500 V1.0.2.30_1.0.43

VEGN2610 V1.0.0.35_1.0.35 (Latest)

VEGN2610 V1.0.0.27_1.0.27

VEGN2610-1FXAUS V1.0.0.36_1.0.36 (Latest)

VEVG2660 V1.0.0.23_1.0.23

WNDR3400v2 V1.0.0.52_1.0.81 (Latest)

WNDR3400v3 V1.0.1.4_1.0.52 (Latest)

WNDR3400v3 V1.0.1.2_1.0.51

WNDR3400v3 V1.0.0.22_1.0.29

WNDR3700v3 V1.0.0.38_1.0.31 (Latest)

WNDR4000 V1.0.2.4_9.1.86 (Latest)

WNDR4500 V1.0.1.40_1.0.68 (Latest)

WNDR4500 V1.0.1.6_1.0.24

WNDR4500v2 V1.0.0.60_1.0.38 (Latest)

WNDR4500v2 V1.0.0.50_1.0.30

WNR1000v3 V1.0.2.68_60.0.93NA (Latest)

WNR1000v3 V1.0.2.62_60.0.87 (Latest)

WNR3500Lv2 V1.2.0.34_40.0.75 (Latest)

WNR3500Lv2 V1.2.0.32_40.0.74

WGR614v10 V1.0.2.60_60.0.85NA (Latest)

WGR614v10 V1.0.2.58_60.0.84NA

WGR614v10 V1.0.2.54_60.0.82NA

Lenovo R3220 V1.0.0.16_1.0.16 (Latest)

Lenovo R3220 V1.0.0.13_1.0.13[/quote]

Hay que decir que no se trata de viejos dispositivos caducados.
¡Para nada!
Si nos fijamos en los modelos afectados podemos ver que son puntos de accesso modernos y la brecha afecta a los mejores PA de Netgear.
Por ejemplo sus “Night Hawk” con wifi “ac” como el R8500:

[quote]AC5300
Router WiFi inteligente Nighthawk X8
Triple Banda 802.11ac Quad Stream Gigabit
Lo último en WiFi
El router WiFi inteligente Nighthawk X8 AC5300 es lo último en redes WiFi. El rendimiento de la triple banda WiFi y Quad Stream aumentan las velocidades inalámbricas por 8 hasta 5,3 Gbps. Cuatro antenas activas externas y cuatro antenas internas amplían la cobertura WiFi. Los seis puertos Gigabit Ethernet permiten conectar un número mayor de dispositivos por cable y mediante la agregación de puertos se pueden combinar dos puertos para duplicar las velocidades por cable. Nighthawk X8 es lo último en WiFi.
Modelo: R8500[/quote]
No es un modelo barato, se lo prometo…
…La brecha si que lo es un poco (barata)
[h]Obtención de la contraseña de administrador con una simple petición http[/h]
[h]primer modo[/h]
Cuando alguien intenta acceder a la interfaz de configuración del routeur se le pide, lógicamente, una contraseña.
Si el intruso cancela este paso esta dirigido hacía una pagina para recuperar la contraseña con una pregunta secreta.
Generalmente los fabricantes no ponen sistema de recuperación con pregunta secreta en sus routers.
Y no queda otra que hacer un “reset” a nivel de fabrica si hemos olvidado nuestro password.
La idea de Netgear no era mala, el problema es que la realización no fue buena.
Cuando se llega a la pagina para recuperar la contraseña se puede obtener la contraseña de administrador en uso…
Es decir:

  1. Entramos en la barra de navegación
    http://ip_router/.../
    No hemos proporcionado credenciales así que acabamos en
    http://ip_router/..../unauth.cgi?id=TOKEN /*]
  2. Luego usamos el TOKEN obtenido para forjar una petición
    http://router/passwordrecovered.cgi?id=TOKEN/*]

Y obtendremos el password
El truco funciona si el usuario no ha configurado una pregunta secreta.
Si se ha configurado una pregunta secreta pasa lo que debe pasar: se pide la respuesta a la pregunta secreta.
Podéis ver a continuación la cadena que abre las puertas:

[h]Segundo modo[/h]
Aquí también la brecha es explotable si el usuario no ha configurado una pregunta secreta (no está obligado a ello por la interfaz, es importante precisarlo)
Este modo funciona después reinicio del dispositivo y es aún más rápido porque podemos usar el valor que queremos en el TOKEN.
Solicitamos la recuperación de la contraseña así

http://ip_routeur/passwordrecovered.cgi?id=wifi-libre

(wifi-libre o pepitaflores… no importa, cualquier cadena vale)
Y obtendremos la contraseña root…

Hay dos exploits (scripts python) en el “dislcosure” (ver fuente en fin de tema)
Podemos ver también en el aviso que la brecha fue encontrada en junio 2016.
Los investigadores entraron en contacto con Netgear y Netgear hizo una actualización de seguridad el primer de enero.
La brecha se hizó publica el día 30.
Seis meses es mucho tiempo…
Hay parches para todos los Night Hawks pero algunos modelos (los más cutres) no tienen aún su parche…
La solución en este caso es habilitar la recuperación de contraseña definiendo una pregunta secreta.
Ya que si no hay un pregunta de seguridad definida no se puede explotar la brecha
Aquí tenéis el aviso de seguridad desde Netgear con la lista de material parcheado: Web GUI Password Recovery and Exposure Security Vulnerability

Fuente

  1. Netgear Router Password Disclosure by ** Simon Kenin** @ Packet storm/*]