Actualmente podemos encontrar enrutadores en prácticamente cualquier lugar, ya sean centros de trabajo, centros comerciales, escuelas y hogares, las personas necesitan (o creen necesitar) estar conectadas siempre a Internet. Sin embargo, a pesar de ser ampliamente utilizados, los enrutadores son de los dispositivos tecnológicos con más fallas de seguridad, aseguran expertos en hacking ético.
El equipo de investigación X-Force, de la reconocida firma tecnológica IBM, publicó un reporte sobre el hallazgo de una vulnerabilidad día cero en el firmware de los enrutadores Archer C5, versión 4, de la compañía TP-Link.
Este es el primer trabajo elaborado acerca de esta falla, presente en las soluciones de la compañía para entornos domésticos y empresariales. Acorde a los investigadores en hacking ético, de ser explotada, esta vulnerabilidad permitiría que un actor de amenazas remoto tome el control de las configuraciones del dispositivo mediante Telnet para conectarse a un servidor de Protocolo de Transferencia de Archivos (FTP) a través de LAN o WAN.
La explotación de esta vulnerabilidad brindaría al atacante privilegios de administrador debido a las características inherentes a estos dispositivos, por lo que es considerada de gravedad crítica.
Además, el riesgo aumenta en entornos empresariales, pues muchas ocasiones los enrutadores cuentan con la opción de WiFi de invitado habilitada. Un dispositivo comprometido en un entorno empresarial podría ser utilizado por un hacker para infiltrarse en las redes de la compañía con relativa facilidad, desde donde podría desplegar algunas maniobras de reconocimiento de red y ataques de canal lateral.
Después del hallazgo, el equipo de investigadores de IBM reportó la vulnerabilidad a TP-Link acorde a los parámetros establecidos por la comunidad de la ciberseguridad. La compañía reconoció el informe y anunció una serie de medidas para mitigar el riesgo de explotación.
En pocas palabras, las solicitudes HTTP vulnerables conducen a la anulación de la contraseña del administrador del dispositivo. Cuando una cadena más corta de lo esperado se envía como contraseña de usuario, el valor de la contraseña se distorsiona en algunos bytes no ASCII. Por otra parte, cuando la cadena es demasiado larga, la contraseña se anula completamente y es reemplazada por un valor vacío. Debido a que estos dispositivos sólo cuentan con un tipo de usuario (administrador con privilegios root), es posible que un hacker ocupe el lugar del administrador para tomar control del dispositivo afectado.
Para desencadenar la vulnerabilidad y tomar control del dispositivo sólo se requiere enviar la solicitud correcta, como se muestra en el ejemplo siguiente. Podría decirse que existen dos tipos de solicitudes: seguras y vulnerables. Una solicitud HTML no vulnerable cuenta con dos parámetros: el TokenID y el JSESSIONID. No obstante, la validación CGI sólo está basada en los encabezados HTTP del referente. Si esto coincide con la dirección IP o el dominio asociado, el servidor del enrutador lo reconocerá como válido.
Si ese referente se elimina del encabezado, la solicitud devolverá una respuesta “Prohibida”.
Este problema afecta a las solicitudes HTTP POST y GET de la misma manera, anulando la contraseña de administrador cuando la longitud de la cadena supera el número permitido de bytes; esta es, por tanto, una especie de falla de desbordamiento, mencionan los expertos en hacking ético.
Empleando el número de versión del chip de memoria, los investigadores encontraron toda la información del firmware del dispositivo. Durante la extracción de esta información se encontró una clave privada RSA almacenada en la memoria. Esta clave se usa para cifrar y descifrar las contraseñas de los usuarios al acceder a la interfaz web del enrutador.
Después de extraer el firmware, se encontraron datos de inicio de sesión almacenados en la carpeta rootfs/etc. El nombre de usuario y la contraseña predeterminados eran extremadamente débiles. Dejar la combinación predeterminada como está puede permitir el acceso a un servidor FTP y otorgar acceso a la consola.
Al contar con acceso root, los investigadores obtuvieron algún control sobre los binarios. Con la ayuda de algunas herramientas, se realizaron análisis estáticos y dinámicos para localizar dónde residía exactamente la vulnerabilidad. A continuación se muestra la parte relevante del encabezado HTTP analizado visto en IDA:
El siguiente paso fue verificar qué sucede con el archivo de contraseña cuando se envía una solicitud vulnerable mediante el uso de diferentes longitudes de cadena, enviando una contraseña más larga que la cantidad de caracteres permitida.
La contraseña se anula por completo y su valor se muestra vacío. A partir de este momento, es posible pudimos acceder a TELNET y FTP sin ninguna contraseña, utilizando solo “admin” como nombre de usuario, que es el único usuario disponible en el dispositivo de forma predeterminada.
Especialistas en hacking ético del Instituto Internacional de Seguridad Cibernética (IICS) recomiendan a los usuarios que no han actualizado sus sistemas dirigirse al sitio oficial de TP-Link, donde, además de las actualizaciones listas para ser instaladas, encontrarán otros detalles disponibles sobre el incidente.