Herramienta de código abierto para el monitoreo de redes con dispositivos IoT

Te contamos qué es IoT Inspector y cómo funciona.

Herramienta de código abierto para el monitoreo de redes con dispositivos IoT
/ фото PxHere PD

Sobre la seguridad del internet de las cosas

En la firma de consultoría Bain & Company (PDF, p.1) se dice que de 2017 a 2021 el volumen del mercado IoT se duplicará: de 235 a 520 mil millones de dólares. Los dispositivos para el hogar inteligente representarán 47 mil millones de dólares. Para los expertos en ciberseguridad, tales tasas de crecimiento generan preocupaciones.

Por los datos de Avast, en el 40% de los casos, al menos un dispositivo inteligente presenta una vulnerabilidad crítica, poniendo en peligro toda la red doméstica. En Kaspersky Lab se estableció, que en el primer trimestre del año pasado, los dispositivos inteligentes sufrieron tres veces más ataques que durante todo 2017.

Para proteger los dispositivos inteligentes, empleados de empresas de TI y universidades están desarrollando nuevas herramientas de software. Un equipo de ingenieros de la Universidad de Princeton creó plataforma abierta Princeton IoT Inspector. Es una aplicación de escritorio que monitorea el comportamiento y funcionamiento de los dispositivos IoT en tiempo real.

Cómo funciona el sistema

IoT Inspector rastrea la actividad de los dispositivos IoT en la red utilizando la técnica de ARP-spoofing. Se puede utilizar para analizar el tráfico de los dispositivos. El sistema recopila información anónima sobre el tráfico de red para detectar actividad sospechosa. En este proceso, datos como las direcciones IP y MAC no se consideran.

Al enviar paquetes ARP, se utiliza el siguiente código:

class ArpScan(object):

    def __init__(self, host_state):

        assert isinstance(host_state, HostState)

        self._lock = threading.Lock()
        self._active = True

        self._thread = threading.Thread(target=self._arp_scan_thread)
        self._thread.daemon = True

    def start(self):

        with self._lock:
            self._active = True

        utils.log('[ARP Scanning] Starting.')
        self._thread.start()

    def _arp_scan_thread(self):

        utils.restart_upon_crash(self._arp_scan_thread_helper)

    def _arp_scan_thread_helper(self):

        while True:

            for ip in utils.get_network_ip_range():

                time.sleep(0.05)

                arp_pkt = sc.Ether(dst="ff:ff:ff:ff:ff:ff") /
                    sc.ARP(pdst=ip, hwdst="ff:ff:ff:ff:ff:ff")
                sc.sendp(arp_pkt, verbose=0)

                with self._lock:
                    if not self._active:
                        return

    def stop(self):

        utils.log('[ARP Scanning] Stopping.')

        with self._lock:
            self._active = False

        self._thread.join()

        utils.log('[ARP Scanning] Stopped.')

Después de analizar la red, el servidor IoT Inspector identifica con qué sitios intercambian datos los dispositivos IoT, con qué frecuencia lo hacen y en qué volúmenes envían y reciben paquetes. Como resultado, el sistema ayuda a identificar recursos sospechosos a los que pueden enviarse datos personales sin el conocimiento del usuario.

Actualmente, la aplicación solo funciona en macOS. Se puede descargar el archivo zip en el sitio del proyecto. Para la instalación, se necesita macOS High Sierra o Mojave, y el navegador Firefox o Chrome. En Safari, la aplicación no funciona. La guía de instalación y configuración está disponible en YouTube.

Este año, los desarrolladores prometieron agregar una versión para Linux y en mayo, una aplicación para Windows. El código fuente del proyecto está disponible en GitHub.

Potencial y desventajas

Los desarrolladores afirman que el sistema ayudará a las empresas de TI a buscar vulnerabilidades en el software de dispositivos IoT y a crear dispositivos inteligentes más seguros. El instrumento ya puede detectar vulnerabilidades relacionadas con la seguridad y el rendimiento.

IoT Inspector encuentra dispositivos que intercambian datos con demasiada frecuencia, incluso cuando no se están utilizando. También ayuda a detectar dispositivos inteligentes que ralentizan la red, como aquellos que descargan actualizaciones con demasiada frecuencia.

Por el momento, IoT Inspector tiene desventajas. Dado que la aplicación es experimental, aún no se ha probado en todos los dispositivos IoT con diferentes configuraciones. Por lo tanto, el propio instrumento puede tener un impacto negativo en el rendimiento de los gadgets inteligentes. Por esta razón, los autores no recomiendan conectar la aplicación a dispositivos médicos.

Ahora, los desarrolladores se han enfocado en corregir errores, pero en el futuro, el equipo de la Universidad de Princeton planea expandir la funcionalidad de su aplicación e incorporar algoritmos de aprendizaje automático. Esto ayudará a aumentar la probabilidad de detección de ataques DDoS hasta el 99%. Se pueden consultar todas las ideas de los investigadores en este informe en PDF.

Otros proyectos en el ámbito IoT

Un grupo de desarrolladores estadounidenses, que colabora con Danny Goodman, autor de libros sobre JavaScript y HTML, está creando una herramienta para monitorear el ecosistema del Internet de las Cosas — The Thing System.

El objetivo del proyecto es unir los gadgets IoT del hogar inteligente en una sola red y centralizar su gestión. Los desarrolladores dicen que los dispositivos de diferentes fabricantes a menudo no pueden interactuar entre sí y funcionan de manera aislada. Para resolver este problema, los autores de la iniciativa crearon un software que puede trabajar con diferentes protocolos de red, gadgets y aplicaciones de cliente.

La lista de dispositivos compatibles está en el sitio web del proyecto. Allí también se puede encontrar código fuente y una guía para comenzar rápidamente.

Otro proyecto abierto es PrivateEyePi. Los autores de la iniciativa comparten soluciones de software y código fuente para crear una red IoT personalizada basada en Raspberry Pi. En el sitio hay una gran cantidad de guías que permiten construir una red inalámbrica de sensores de temperatura, de humedad, así como configurar un sistema de seguridad para el hogar.

Herramienta de código abierto para el monitoreo de redes con dispositivos IoT
/ фото PxHere PD

El futuro de soluciones similares

En el mercado de IoT, cada vez surgen más proyectos, bibliotecas y frameworks de código abierto. En la Linux Foundation, que también trabaja en el ámbito de IoT (crearon el sistema operativo Zephyr), afirman que las herramientas de código abierto se consideran más seguras. Esta opinión se debe a que en su desarrollo participa el 'conocimiento colectivo' de la comunidad de expertos en ciberseguridad. De todo esto se puede concluir que proyectos como IoT Inspector aparecerán con mayor frecuencia y ayudarán a hacer este segmento de dispositivos más seguro.

Publicaciones del Primer Blog sobre IaaS corporativo:

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster