Hackeando webcams y como evitarlo

En la actualidad, es cada vez más frecuente la instalación de cámaras de vídeo o webcams tanto en recintos privados como en la vía pública, con la finalidad de garantizar la seguridad de una instalación, la seguridad de las personas o el correcto desempeño de cualquier tarea en diversos ámbitos, esto presenta más oportunidades para hackear webcams por parte de los delincuentes.

De hecho, los sistemas de videovigilancia se publicitan como la solución para la seguridad debido en mayor medida a su gran facilidad de uso, ya que solo es necesario un dispositivo capaz de conectarse a la red para poder ver por ejemplo el tráfico en la m-30, nuestro negocio o incluso a nuestros hijos jugando en casa.

Sin embargo, ¿nos hemos planteado si estos sistemas son realmente fiables? ¿quién nos asegura que sólo estamos mirando nosotros? estas y otras cuestiones son las que hemos tratado de responder en el siguiente estudio: Cámaras IP de Videovigilancia: Seguridad y Protección, o Inseguridad y Exposición

Somos un grupo de estudiantes del Máster Universitario en Seguridad de las TIC que ofrece la UEM realizando el Proyecto Fin de Máster a cargo de Alejandro Ramos como Director de Proyecto, en el que elaboramos un análisis del estado actual en los sistemas de video.

Recopilación de información, modelos y cámaras.

Para comenzar la investigación se construyó un inventario de las principales marcas y modelos de cámaras y nos centramos en tres líneas de investigación básica: Firmware, Web, ActiveX-Applet.
Se intentó buscar los antecedentes de las vulnerabilidades para estas líneas de investigación y creamos una metodologías a aplicar para cada una de ellas.
Por otro lado se estudió de manera casi individual las cámaras, a través de la información que los propios fabricantes facilitan en sus páginas web, tales como manuales de usuario o datasheet.

Por último se comprobó la existencia en la web de las cámaras relacionadas con la investigación para ver el grado de productos expuestos y vulnerables en la red.

La siguiente imagen muestra una recopilación de simples búsquedas sobre algunas de las cámaras elegidas:

shodan_search1

DESARROLLO DE METODOLOGÍAS

Metodología firmware

En esta parte se analiza el firmware de las cámaras IP. Para ello, hay que obtener el firmware de las cámaras, que generalmente se encuentra en la página web del fabricante y suele estar compuesto por:
1.Firmware header , 2.Bootloader, 3.Kernel, 4. Filesystem
Se utiliza la herramienta binwalk para identificar y separar las partes que lo componen.
Se intenta buscar algún archivo oculto, información sobre la versión Linux, o sobre el Kernel. Gracias a comandos como “strings” se pueden buscar cadenas que puedan ser útiles. Por último se trata de extraer y montar el filesystem, con comandos como “mount”, para ver cómo está compuesto y ver si presenta alguna vulnerabilidad o nos puede ayudar con otras.

Metodología Web

Estas cámaras suelen usar un servicio web con HTTP sobre TCP en el puerto 80 para proveer a sus usuarios. Adicionalmente suelen usan protocolos como TELNET, FTP, RTSP, SMTP para los mismos fines u otros como pueden ser la gestión y configuración del dispositivo, un servidor ftp o de correo, transmitir audio o vídeo, etc y que también se deben chequear.

Para identificar y localizar las vulnerabilidades se ha utilizado metodología OWASP, adaptándola a este tipo de dispositivos para tratar de adecuar las pruebas lo máximo posible.

Metodología ActiveX-Applet

Todas estas cámaras utilizan siempre algún componente cliente (ActiveX o Applet) para mostrar y reproducir las imágenes.
En estos componentes se pueden detectar vulnerabilidades de todo tipo: corrupción de memoria, acceso a información sensible, modificación, escritura o eliminación de ficheros, accesos sin credenciales…
Para ello, durante la fase de análisis, se han buscado vulnerabilidades similares a éstas mediante pruebas manuales o por medio de diversas aplicaciones. En un artículo previo de SBD se explica de manera detallada cómo hacerlo.

Detección y recopilación de vulnerabilidades

Se han detectado un total de 14 vulnerabilidades en 7 modelos distintos de cámaras IP de los 9 totales analizados, la siguiente tabla muestra un resumen de las mismas:

Resumen de vulnerabilidades encontradas

Resumen de vulnerabilidades encontradas

Para más información, las vulnerabilidades fueron reportadas en fulldisclosure en este enlace.
A continuación, se va a dar un repaso a las más importantes de todas las encontradas, para mostrar la peligrosidad de las vulnerabilidades.

CVE-2013-3542, GrandStream GXV Series. TELNET backdoor.
Se ha encontrado una puerta trasera en el protocolo TELNET, que permite acceder remotamente a estos dispositivos con credenciales de superadministrador para gestionar o configurar la cámara mediante línea de comandos. Únicamente hay que conectar con el dispositivo mediante TELNET e introducir la cadena mágica “!#/” como usuario y contraseña. Esto implica que, usando esta vulnerabilidad, se pueda acceder a todos los modelos citados en el reporte y hacernos con el control de estas cámaras.

El vídeo se divide en dos partes: en la primera, se muestra los usuarios que hay creados en una de estas cámaras mediante la interfaz web, después se conecta con la misma mediante TELNET y se accede usando la puerta trasera. En la segunda, se simula como se accedería remotamente a una cámara de la que se desconocen las credenciales mediante TELNET, para restaurar la configuración de fábrica y finalmente acceder a la cámara usando el interfaz web para confirmar que se ha logrado.

CVE-2013-3541, Airlive WL2600CAM. Relative Path Traversal.
Este tipo de vulnerabilidad permite leer información sensible perteneciente al sistema de ficheros del dispositivo vulnerable.

Debido a este tipo de vulnerabilidad somos capaces de leer cualquier fichero que esté dentro del directorio “/etc/” . Previamente se analizó el firmware para obtener el sistema de ficheros y ver hasta dónde se tenía acceso.

En el vídeo se observa cómo se accede a los ficheros “passwd” y “device.conf” usando las siguientes URLs:
– http://xx.xx.xx.xx/cgi-bin/admin/fileread?READ.filePath=../../../../etc/passwd
– http://xx.xx.xx.xx/cgi-bin/admin/fileread?READ.filePath=../../../../etc/device.conf

Estos ficheros contienen entre otras cosas, las contraseñas de todos los usuarios del sistema de ficheros, todo el archivo de configuración del sistema, direcciones IPs, DNS por defecto, privilegios de usuarios, modos de lectura/escritura, servicios activos, etc.

En la siguiente imagen se muestra algunas como ejemplo:
ficheros-privilegios

CVE-2013-3691, Airlive. Denegación de Servicio (DoS).
Es posible crear una denegación de servicio sobre el servicio web que corre en este tipo de dispositivos. Este DoS será causado lanzando una petición sobre la ruta “/” que contenga una gran número de caracteres.
http://xx.xx.xx.xx/[a*3000]
CVE-2013-3688, TP-LINK. Execute Remote Command bypassing authentication.
Se ha encontrado que es posible la ejecución remota de comandos por HTTP, sin necesidad de estar autenticado.

El vector de ataque que se muestra en el vídeo es:
– http://xx.xx.xx.xx/cgi-bin/hardfactorydefault

Mediante este ataque se consigue restaurar la configuración de fábrica de la cámara y obtener el control del dispositivo haciendo uso de las credenciales por defecto.

CVE-2013-3689, Brickcom. Authentication Bypass & Clear Text Storage of Sensitive Information
Esta vulnerabilidad permite descargar todo el archivo de configuración del dispositivo mediante la copia de seguridad o backup, sin tener ninguna credencial ni estar autenticado, permitiendo obtener toda la información sensible del dispositivo.

En el vídeo se muestra cómo se obtendría este archivo, siguiendo la siguiente URL.
– http://xxx.xxx.xxx.xxx/configfile.dump?action=get

En el vídeo y en la siguiente imagen, se puede ver cómo se localizan los usuarios y contraseñas, entre otros datos sensibles, al instante:

contrasenas

CVE-2013-3690, Brickcom. Cross Site Request Forgery (CSRF) + Privilege Escalation.
Este ataque permite manipular los parámetros que usa la interfaz web, pudiendo crear, modificar o eliminar usuarios con credenciales de administrador, reiniciar la cámara o restaurarla a su configuración de fábrica original, etc.

En el vídeo se muestra cómo a través de esta vulnerabilidad, se consigue una escalada de privilegios de un usuario “observador” a uno “administrador”, insertando un vector de ataque en un documento .HTML específicamente creado para ello.

El siguiente vídeo muestra los detalles sobre los últimos 5 CVE’s de los que se han hablado:

CVE-2013-3543, Axis. File Corruption.
La vulnerabilidad afecta a la última versión de “AXIS Media Control“ (6.2.10.11, publicada el 19 de Octubre de 2012), software recomendado por el fabricante para ver imágenes de video en Internet Explorer. Ésta herramienta incluye una serie de métodos ActiveX inseguros dentro de la librería “AxisMediaControlEmb.dll”: “StartRecord()”, “SaveCurrentImage()” y “StartRecordMedia()”.

Con esto, un usuario malintencionado puede explotar esta vulnerabilidad para dejar en un estado inconsistente el sistema de la victima, sobrescribiendo cualquier fichero o generando archivos aleatorios con contenido basura.

A continuación se incluye un video a modo de ejemplo en el que se detalla como explotar la vulnerabilidad mediante el uso de uno de los métodos ActiveX vulnerables:

Herramienta de búsqueda de vulnerabilidades

Como complemento al proyecto, hemos generado un script en Python que analiza un total de 9 pruebas de concepto relativas a los protocolos RTSP y HTTP empleados por todas las cámaras.
RTSP es un protocolo de nivel de aplicación no orientado a conexión similar a HTTP. Sin embargo, se diferencian en los siguientes aspectos:
RTSP introduce nuevos métodos y tiene un identificador de protocolo diferente.
Un servidor RTSP necesita mantener el estado de la conexión.
Tanto el servidor como el cliente pueden hacer solicitudes.
Los datos son transportados por un protocolo diferente.
El código, junto con un manual de usuario, están disponibles en el siguiente enlace:

busqueda-vulnerabilidades

Conclusiones

La finalidad de este estudio es evaluar el estado actual de seguridad de las cámaras de videovigilancia. Para ello, hemos analizado un total de 9 marcas distintas: Airlive, Axis, Brickcom, Grandstream, Samsung, Sony, TP-Link, AV-Tech y Geovision. El resultado ha sido bastante clarificador: 14 vulnerabilidades en 7 de las 9 marcas auditadas.

Todas estas vulnerabilidades comprometen gravemente la seguridad y privacidad de la información además del correcto funcionamiento del servicio.
El 90% de las cámaras encontradas en Internet tienen credenciales por defecto.
Además, hemos reportado todas y cada una de las vulnerabilidades a los fabricantes. Únicamente 2 de los 7 fabricantes (Grandstream y TP-Link) nos han comunicado que han desarrollado un parche tras nuestro reporte, solucionando alguna de las vulnerabilidades detectadas.

En conclusión, podemos afirmar que la gran mayoría de las Cámaras de Videovigilancia IP no están preparadas para conectarse en una red abierta, debido a la gran cantidad de fallos de seguridad que poseen. Esto obviamente choca completamente con su función y nos hace preguntarnos cómo es posible que un dispositivo destinado a la seguridad acabe resultando un foco de exposición.

Autores:
Eliezer Varadé Lopez
Javier Repiso Sánchez
Jonás Ropero Castillo

Fuente: Security by default

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *