IoT pentest
Contenido
- Introducción
- Capas de la arquitectura IoT
- Estapas de la prueba de penetración
- Capas vs Estapas
- Certificaciones
- Instalación de laboratorio
Spider foot Foga
Introducción: El pentest de IoT (Internet de las cosas) implica evaluar la seguridad de dispositivos IoT, redes y servicios web. Esta guía te guiará a través de las habilidades, herramientas y pasos esenciales necesarios para realizar un pentest de IoT exitoso.
Guiás
- Web Penetration Testing Methodologies:
- OWASP Web Security Testing Guide
- External Network Penetration Testing Methodologies
- Aiming at Higher Network Security through Extensive Penetration Tests https://doi-org.ezproxy.unal.edu.co/10.1109/TLA.2012.6222581
- RdTeam Security https://www.redteamsecure.com/approach/network-penetration-testing-methodology
- Secure Ideas https://www.secureideas.com/hubfs/Detailed%20Network%20Penetration%20Testing%20Methodology.pdf
- Hardware Penetration Testing Methodologies
- OWASP FSTM Firmware Security Testing Methodology
Otras guías: https://owasp.org/www-project-web-security-testing-guide/v42/3-The_OWASP_Testing_Framework/1-Penetration_Testing_Methodologies
Estado del arte
Certificaciones
Consulta de identificadores
CPE NVD –> CVE NVD –> CWE MITRE && CAPEC MITRE
Protocolos de comunicación IoT[^3]
- Protocolos de comunicación en capa 7 del modelo OSI
Taxonomía de TIC
- IT (Tecnologías de la Información): Soportan sistemas de información empresariales
- Cloud computing
- Amazon EC2 (Elastic Compute Cloud)
- Amazon S3 (Simple Storage Service)
- Sistemas Operativos
- RTOS (Real-Time Operating System)
- FreeRTOS de Amazon
cpe:2.3:o:Amazon:FreeRTOS:?:*:*:*:*:*:*:*
cpe:2.3:a:Amazon:amazon_web_services_freertos:?:*:*:*:*:*:*:*
- Zephyr de Zephyr Project
cpe:2.3:o:ZephyrProject:Zephyr:?:*:*:*:*:*:*:*
- Distribuciones Linux - Raspberry Pi Os Lite de Raspberrypi
cpe:2.3:o:raspberrypi:raspberry_pi_os_lite:?:*:*:*:*:*:*:*
- FreeRTOS de Amazon
- Aplicaciones Web
- Frameworks de Aplicaciones web
- Django
cpe:/a:djangoproject:django:
- Node.js
cpe:/a:nodejs:node.js:
- Django
- Frameworks de Aplicaciones web
- RTOS (Real-Time Operating System)
- Internet de las Cosas (IoT)
- IoT gateways (Puertas de enlace IoT)
- Dispositivos Inteligentes (Smart Devices)
- Bombillas Inteligentes
- Termostatos Inteligentes
- Cerraduras Inteligentes
- Cámaras de Seguridad Inteligentes
- Redes de Sensores Inalámbricos (WSN)
- Automatización del Hogar (Domótica)
- Ciudades Inteligentes (Smart Cities)
- Big data
- AI (Artificial Intelligence)
- Cloud computing
- OT (Tecnologías Operativas): Soportan control y supervición de procesos físicos industriales
- ICS, Sistemas de Control Industrial
- DCS (Sistemas de Control Distribuido)
- PLC (Controladores Lógicos Programables)
- CPE: CompactLogix de Rockwell Automation
- PAC (Controladores de Automatización Programables)
- SCADA (Sistemas de Control Supervisorio y Adquisición de Datos)
- HMI (Human-Machine Interface)
- Sistemas de Control de Procesos Continuos
- Sistemas de Control de Procesos Discretos
- Tecnología de Automatización Industrial
- Sistemas Embebidos
- CPE: ¿Arduino?
- ESP32
- ICS, Sistemas de Control Industrial
- Tecnologías de comunicación
- Tecnologías de aplicaciones en red: Servicios o aplicaciones finales
- DNS (Protocolo de Resolución de Nombres de Dominio)
- HTTP (Protocolo de Transferencia de Hipertexto)
- Aplicaiones Web
- API Webs
- Modbus (Modular Digital Bus[^?])
- OPC-UA (OLE for Process Control - Unified Architecture)
- CoAP (Constrained Application Protocol)
- AMPQ (Advanced Message Queuing Protocol)
- DNS (Domain Name System)
- MQTT (Message Queuing Telemetry Transport)
- SSH (Secure Shell)
- VoIP (Voice over Internet Protocol)
- Tecnologías de transporte de datos: Utilizadas para segmentar y garantizar el transporte de paquetes de datos
- SSL (Capa de Sockets Seguros) / TLS (Segurtidad de Capa de Transporte)
- TCP (Protocolo de Control de Transmisión)
- UPD (Protocolo de Datagramas de Usuario)
- Tecnologías de red: Utilizadas para enrutar los paquetes de datos del tráfico de la red
- ARP (Address Resolution Protocol)
- IPv4 (Internet protocol Versión 4)
- IPv5 (Internet protocol Versión 6)
- IPSec (Internet Protocol Security)
- Tecnologías de acceso de red: Utilizados para transmitir información de un punto a otro.
- Tecnologías Alámbricas: utilizan cables físicos para la comunicación
- Tecnologías de red Alámbricas: utilizan conexiones alámbricas para interconectar sistemas abiertos
[^?]
en una red.- LAN (Local Area Network): conecta dispositivos en un área geográfica limitada.
- IEEE Ethernet
- MAN (Metropolitan Area Network)
- Metro Ethernet
- WAN (Wide Area Network): cubre un área geográfica más amplia, como una ciudad, un país o incluso a nivel global (internet).
- DSL (Digital Subscriber Line)
- Cable modem
- Fibra óptica
- LAN (Local Area Network): conecta dispositivos en un área geográfica limitada.
- USB (Universal Serial Bus)
- RS-232 (Recommended Standard 232)
- RS-485 (Recommended Standard 485)
- Serial
- SPI
- JTAG
- Tecnologías de red Alámbricas: utilizan conexiones alámbricas para interconectar sistemas abiertos
- Tecnologías Inalámbricas: no requieren cables físicos para la comunicación.
- Proximidad
- RFID (Radio-Frequency Identification)
- ISO/IEC ? - NFC (Near Field Communication) - ISO/IEC 18092 - ISO/IEC 14443- Tecnologías Inalámbricas de Red: permiten la conexión y comunicación inalámbrica entre interconectar sistemas abiertos
[^?]
en una red.- WPAN (Wireless Personal Area Network) - IEEE 802.15.1 Bluetooth y BLE (Bluetooth Low Energy) - High-Rate WPAN - UWB Ultra-Wideband - Wirelss USB - WiMedia - Low-Rate WPAN - ZigBee (IEEE 802.15.4) - ISA-100 - Wirelss HART - Z-wave
- WLAN (Wireless Local Area Network) - Wi-Fi - IEEE 802.11ad - IEEE 802.11ac - IEEE 802.11n - IEEE 802.11a/g - IEEE 802.11b
- WMAN (Wireless Metropolitan Area Network) - Fixed WiMAX (IEEE 802.16)
- WWAN (Wireless Wide Area Network)
- Mobile WiMAX (IEEE 802.16e)
- Celular - 2G - 3G - 4G - LTE (Long-Term Evolution) - 5G
- LPWAN (Low-Power Wide Area Network)
- NB-IoT
- LoRa
- LTE-M
- Tecnologías Inalámbricas de Red: permiten la conexión y comunicación inalámbrica entre interconectar sistemas abiertos
- Tecnologías Alámbricas: utilizan cables físicos para la comunicación
- Tecnologías de aplicaciones en red: Servicios o aplicaciones finales
Maket share
![5 things to know about the LPWAN market in 2021]
(https://h9e3r9w2.rocketcdn.me/wp/wp-content/uploads/2021/10/LPWAN-Market-2021-v2-min.png)
Marker snapshot: LPWAN Market 2021[^2]
Support data raises and typical ranges of wireless and mobile technologies
Aruitectura IoT de 3 capas X Metodología de Prueba de penetración de 5 etapas
Las capas de una Arquitectura IoT de 3 capas son:
- Percepción:
- Firmware
- Hardware
- Red:
Sección 1: Introducción a los servicios web de redes IoT
En esta sección, aprenderás los fundamentos de la seguridad de IoT y cómo el pentest puede abordar los problemas de seguridad. Se cubrirán conceptos clave que incluyen reconocimiento de red, vulnerabilidades de aplicaciones web comúnmente encontradas en dispositivos IoT, solicitudes de API y técnicas de explotación.
Habilidades:
- Comprender los objetivos del curso y la metodología para probar IoT.
- Familiarizarte con las herramientas utilizadas para el pentest de IoT.
- Aprender técnicas de descubrimiento y reconocimiento de redes.
- Explorar técnicas de explotación de redes específicas para dispositivos IoT.
- Comprender los servicios web en IoT y cómo realizar reconocimiento de aplicaciones web y API.
- Conocer las herramientas utilizadas para probar servicios web.
- Identificar diferentes tipos de ataques a servicios web y métodos de explotación.
Pasos:
- Aprender a utilizar filtros de Wireshark e inspeccionar archivos PCAP.
- Realizar un escaneo Nmap de un dispositivo IoT y explotar vulnerabilidades utilizando Metasploit.
- Parte 1: Interceptación de secretos utilizando Burp Suite en un portal web de IoT.
- Parte 2: Utilizar Postman para enviar datos de contraseña a una API de IoT.
- Parte 1: Explotar vulnerabilidades en portales de IoT de grado de consumo.
- Parte 2: Inyectar comandos en servicios web vulnerables de IoT.
IDs CWE:
- CWE-200: Exposición de información.
- CWE-287: Autenticación inadecuada.
- CWE-89: Inyección de SQL.
- CWE-94: Inyección de código.
IDs CAPEC:
- CAPEC-7: Inyección de código.
- CAPEC-88: Relleno de credenciales.
- CAPEC-155: Ataque de intermediario.
- CAPEC-234: Inyección de comandos.
IDs CPE:
- CPE-2.3:N:A:IoTDevice:*
Sección 2: Explotación de interfaces de hardware IoT y análisis de firmware
Esta sección se centra en la recolección de información sobre dispositivos de hardware y en el análisis de firmware. Aprenderás sobre la identificación de hardware, interfaces de comunicación y técnicas de explotación. Además, se cubrirá la recuperación y análisis del firmware de dispositivos para identificar fallas de implementación y extraer secretos almacenados.
Habilidades:
- Comprender la importancia del hardware IoT en el pentest.
- Aprender a abrir dispositivos IoT e identificar sus componentes.
- Descubrir e identificar diferentes puertos de hardware.
- Obtener una introducción a las técnicas de soldadura.
- Aprender a espiar, interactuar y explotar puertos de hardware (Serie, SPI, JTAG).
- Dominar el proceso de recuperación de firmware de dispositivos IoT.
- Obtener conocimientos sobre técnicas de análisis de firmware.
- Extraer información valiosa del firmware.
Pasos:
- Obtener y analizar hojas de especificaciones de dispositivos IoT.
- Espiar la comunicación serie y SPI para recopilar datos.
- Recuperar firmware de archivos PCAP capturados.
- Utilizar binwalk para extraer y analizar sistemas de archivos dentro del firmware.
- Extraer información valiosa mediante el análisis del sistema de archivos.
IDs CWE:
- CWE-327: Uso de un algoritmo criptográfico roto o riesgoso.
- CWE-78: Neutralización inadecuada de elementos especiales utilizados en un comando de sistema operativo.
- CWE-494: Descarga de código sin verificación de integridad.
- CWE-119: Desbordamiento de búfer.
IDs CAPEC:
- CAPEC-28: Inyección de comandos de sistema operativo.
- CAPEC-186: Extraer configuraciones de seguridad del hardware.
- CAPEC-221: Manipulación de firmware.
- CAPEC-226: Extracción de firmware.
IDs CPE:
- CPE-2.3:H:IoTDevice:Firmware:*
Sección 3: Explotación de IoT inalámbrico:
WiFi, BLE, Zigbee, LoRA y SDR Esta sección se centra en las tecnologías inalámbricas comúnmente utilizadas en dispositivos IoT. Aprenderás técnicas para capturar tráfico, obtener acceso a redes, interactuar con datos cifrados y comprometer dispositivos IoT. La sección también cubre el análisis y la explotación de comunicaciones RF no estándar y propietarias utilizadas en dispositivos IoT.
Habilidades:
- Comprender los conceptos básicos de Wi-Fi, Bluetooth Low Energy (BLE), Zigbee, LoRA y Software-Defined Radio (SDR).
- Aprender técnicas para descifrar claves precompartidas (PSK) de Wi-Fi.
- Comprender la interacción y explotación de dispositivos BLE.
- Capturar y analizar tráfico Zigbee.
- Realizar ataques de transmisión de repetición en dispositivos IoT utilizando comunicaciones RF no estándar.
Pasos:
- Descifrar claves precompartidas de Wi-Fi para obtener acceso a la red.
- Interactuar y explotar dispositivos BLE.
- Capturar y analizar el tráfico de la red Zigbee.
- Realizar ataques de transmisión de repetición en dispositivos IoT.
IDs CWE:
- CWE-798: Uso de credenciales codificadas en el firmware.
- CWE-250: Ejecución con privilegios innecesarios.
- CWE-327: Uso de un algoritmo criptográfico roto o riesgoso.
- CWE-319: Transmisión en texto claro de información sensible.
IDs CAPEC:
- CAPEC-108: Sniffing y secuestro de sesión en Wi-Fi.
- CAPEC-141: Escucha secreta.
- CAPEC-199: Suplantación de BLE.
- CAPEC-545: Sniffing.
IDs CPE:
- CPE-2.3:A:WiFiDevice:*
- CPE-2.3:A:BLEDevice:*
- CPE-2.3:A:ZigbeeDevice:\
Etapas
1. Information Gatherin
1.1. Reconocimeinto y descubrimiento de activos
Capa IoT de aplicación
Exposiciones
Capa IoT de comunicación
Exposiciones
Capa IoT de percepción
Exposiciones
1.1. Fingerprinting
Análisis de vulnerabilidades
Modelado de amenazas
Explotación
Reporte
Capas vs Estapas
Referencias
[^?]
: Se necesita referencia.
[^1]
: Singh, H., & Singh, J. (2017). Penetration Testing in Wireless Networks. International Journal of Advanced Research in Computer Science, 8(5). http://www.ijarcs.info/index.php/Ijarcs/article/view/4012
[^2]
: 5 things to know about the LPWAN market in 2021. (2021, octubre 20). IoT Analytics. https://iot-analytics.com/5-things-to-know-lpwan-market
[^3]
: Ivezic, M. (2023, June 2). IoT Wireless Protocols - Speed & Range - Spreadsheet - 5G Security. Retrieved from https://5g.security/5g-business-policy/iot-speed-range-spreadsheet
[^4]
: IBM Developer. (2023, March 8). IoT LP101: Connectivity network protocols. Retrieved March 8, 2023, from https://developer.ibm.com/articles/iot-lp101-connectivity-network-protocols
[^5]
: https://cpe.mitre.org/specification
> Exit code: 1 █