Hack all the things

OWASPEl movimiento de Internet de las Cosas, IoT en sus siglas inglesas, cada día está más en auge. Este movimiento, caminando de la mano de la filosofía Do-It-Yourself (DIY) ha hecho que proliferen los proyectos basados en open-hardware, utilizando placas Arduino, BeagleBoard , Raspberry Pi y Teensy entre otras muchas.

Muchos de estos proyectos suelen tener una arquitectura común, en la que por un lado tenemos (i) la placa encargada de manejar diferentes sensores y/o actuadores, (ii) un servidor central, que recoge los datos de los sensores o,  al que enviamos las ordenes a realizar por los actuadores, y finalmente (iii) los clientes. Esta arquitectura se puede apreciar en FarmBot, un robot agricultor para producir comida en pequeña escala y SecurityPi un sistema para la automatización de la seguridad en casa.

Desde el punto de vista de la seguridad, no hay que centrarse únicamente en proteger al dispositivo, sino en toda la superficie que engloba la arquitectura. En un proyecto de IoT la superficie es muy amplia, ya que toca las áreas de seguridad física, web, cloud, comunicaciones, móvil y sofware en general. Desde el punto de vista de un atacante, cada una de estas áreas presenta muchas oportunidades para poder hacerse con el control de tu sistema.

En posts anteriores hemos hablado de cómo están proliferando los ataques contra este tipo de sistemas o incluso coches, en este en cambio, queremos proporcionar unas recomendaciones básicas de seguridad, basadas en las buenas prácticas y ataques más comunes detectados por la fundación OWASP.  Primero, y más importante, tenemos que detectar cuáles son las superficies de ataque a las que está expuesto nuestro proyecto, en las que se encuentran: la memoria del dispositivo, interfaces físicas del dispositivo, interfaz web, firmware del dispositivo, servicios de red, interfaz administrativa, APIs de terceros… Segundo, por cada superficie identificada miraremos en OWASP las vulnerabilidades más comunes, por ejemplo, para “Memoria de dispositivo” tenemos contraseñas y nombres de usuario en texto plano; en “Interfaz web”, SQL injection y cross-site scriptiong; en “Interfaces físicas” escalado de privilegios etc. Tercero, comprobaremos por cada superficie de ataque que estamos protegidos. Para esto es recomendable usar la guía de OWASP.

En resumen, los proyectos de IoT abarcan una amplia gama de áreas en las que puede haber brechas de seguridad, es por eso necesario que detectemos a tiempo cuáles son las superficies de ataque a las que nos exponemos y nos preparemos para ello. Finalmente, os dejamos el vídeo de la DEFCON 22 – Hack All The Things, que da nombre  a este post, donde el equipo de exploitee.rs se hace con el control de dispositivos de lo más variopintos con técnicas muy sencillas, que en muchos casos presentan vulnerabilidades en el top 10 de IoT-OWASP y unas trasparencias de DEFCON 23 donde se amplía la información de este post.

Irene Díez
Acerca de
Investigadora de DT
Expertise: Operating systems, program analysis