ADVANCED ICS HACKING
Abstract:
Los sistemas de control industrial (ICS) suelen ser un blanco atractivo para los ciberdelincuentes.
La mayoría de estos sistemas supervisan procesos industriales complejos e infraestructuras críticas que suministran energía, agua, transporte, manufactura y otros servicios esenciales.
Existen muchas vulnerabilidades en estos sistemas que podrían exponer una instalación a ataques.
Un ataque en una red de ICS podría dar lugar a interrupciones masivas, cientos de miles de usuarios afectados e incluso a un desastre nacional. El pentesting en los sistemas de control industrial es un campo muy específico que requiere un vasto conocimiento y disponibilidad de hardware.
Este training lo ayudará a entender los sistemas ICS, analizar sus debilidades, aprender a atacarlos y diseñar estrategias para protegerlos. Está dirigido a los profesionales de seguridad que quieran profundizar su conocimiento sobre la seguridad de los sistemas de control industrial, mejorar sus
habilidades de pentesting sobre los mismos o especializarse en la protección de sistemas de control industrial, y lo llevará desde los fundamentos de la seguridad de ICS hasta técnicas avanzadas de hacking.
Nos centraremos en la metodología y herramientas necesarias para realizar pentesting de dispositivos de control industrial y proporcionaremos una excelente oportunidad para que los participantes adquieran experiencia práctica en el pentesting de estos dispositivos y sistemas, ya que la mayor parte del training está conformada por laboratorios prácticos y ejercicios. La
configuración del ICS simulará la infraestructura de un sistema de control industrial con PLCs en tiempo real y aplicaciones SCADA. Analizaremos los protocolos ICS más utilizados (Modbus, S7, DNP3, OPC, Profinet), realizaremos capturas de paquetes y aprenderemos a utilizar estos protocolos para comunicarnos con los PLCs y también para atacarlos. Aprenderemos a programar un PLC en Ladder Logic, para entender mejor cómo comprometer este tipo de dispositivos. Aprenderemos a atacar sistemas air-gapped y también a defender este tipo de sistemas. También aprenderemos las técnicas y tácticas que los adversarios utilizan para comprometer los ICS, las debilidades que normalmente poseen este tipo de sistemas y las técnicas que podemos utilizar para protegerlos. Finalmente terminaremos con un caso de estudio en el cual aplicaremos todos los conocimientos obtenidos.
A lo largo del training, utilizaremos una máquina virtual creada por nosotros específicamente para el pentesting de ICS, tiene todas las herramientas necesarias para este propósito. El training está estructurado para asistentes de nivel principiante e intermedio y no es necesario tener experiencia
previa en ICS, programación o hardware.
Course Outline
Dia 1: Overview de ICS, Protocolos & Hacking
Fundamentos de ICS
1.1 Introducción a ICS
1.2 Vocabulario
1.3 El modelo CIM
1.4 Arquitecturas clásicas
1.5 Historia de los sistemas industriales
1.6 ISA99/IEC62443, NIST 800-82
1.7 IT vs OT
1.8 Sistemas ICS expuestos en Internet
Componentes de sistemas ICS
2.1 Arquitectura, componentes y roles
2.1.a. RTU
2.1.b. HMI
2.1.c. DCS
2.1.d. Sensores
2.1.e. PLC
2.1.f. SCADA
2.1.g. Historian
Programando PLCs
3.1 Cableado de PLCs
3.1.1 PLC Inputs
3.1.2 PLC Outputs
3.2 Lenguajes de Programacion para PLCs
3.3 Como se ejecutan los programas en los PLCs
3.4 Programación de PLCs en Ladder Logic
3.4.1 Fundamentos y Principios de Ladder Logic
3.4.2 Simuladores de PLCs para practicar programación
3.5 Ejercicios prácticos de programación de PLCs
Protocolos de ICS
4.1 Modbus
4.1.a. Introducción y resumen del protocolo
4.1.b. Ataques y ejercicios prácticos
4.1.c. Sniffing, Eavesdropping
4.1.d. Baseline Response Replay
4.1.e. Modbus Flooding
4.1.f. Modifying PLC values
4.1.g. Rogue Interloper
4.2 S7
4.2.a. Introducción y resumen del protocolo
4.2.b. Ataques y ejercicios prácticos
4.2.c. Sniffing, Eavesdropping
4.2.d. Uploading and downloading PLC programs
4.2.e. Start and Stop PLC CPU
4.3 DNP3
4.3.a. Introducción y resumen del protocolo
4.3.b. Ataques y ejercicios prácticos
4.3.c. Length Overflow Attack
4.3.d. Reset Function Attack
4.3.e. Rogue Interloper
4.4 Profinet
4.4.a. Introducción y resumen del protocolo
4.4.b. Ataques y ejercicios prácticos
4.4.c. Sniffing, Eavesdropping
4.4.d. Replay Attacks
4.4.e. Packet Forging Attacks
4.5 OPC/OPC-UA
4.5.a. Introducción y resumen del protocolo
4.5.b. Ataques a OPC y ejercicios prácticos
Dia 2: Airgap, Pentesting & Attacks
Comprometiendo Sistemas ICS “Air-gapped”
5.1 Que es un Airgap?
5.2 Problemas de los Airgaps
5.3 Realmente hay un Airgap?
5.4 Airgap, Firewall o Data Diode?
5.5 Ataques a Airgaps y Ejemplos
5.6 Canales de Entrada / Salida de información
5.6.1 Canales Termales
5.6.2 Canales Electromagneticos
5.6.3 Canales Acusticos
5.6.4 Canales Opticos
5.6.5 Canales Electricos
5.6.6 Canales Magnéticos
5.7 Protegiendo Sistemas ICS “Air-gapped”
Vulnerabilidades Comunes en Sistemas ICS
6.1 Debilidades en la segmentación de red
6.2 Exposición a internet o redes inseguras
6.3 Uso de Protocolos Inseguros
6.4 Uso de software antiguo y falta de mantenimiento
6.5 Credenciales por defecto y configuraciones inseguras
6.6 Falta de concientización en seguridad
6.7 Politicas débiles para el uso de USB y dispositivos personales
6.8 Otras vulnerabilidades
Análisis de Ataques Reales a Sistemas ICS
7.1 Alertas de ISC-CERT
7.2 ATT&CK for ICS
7.2.1 Técnicas y tácticas de adversarios
7.2.2 Ataques e incidentes relacionados a ICS
Pentesting de sistemas ICS
8.1 Pentesting ICS 101
8.2 Precauciones y Advertencias
8.2.1 Incidentes Reales durante Pentesting de ICS
8.2.2 Mejores prácticas para el Pentesting de ICS
8.3 Herramientas para el Pentesting ICS
8.4 Teoría y Metodología para el Pentesting de ICS
8.4.1 Architecture Review
8.4.2 Information gathering
8.4.3 Vulnerability Scanning
8.4.4 Exploitation
8.4.5 Protocols Testing
Ejercicios Prácticos de Pentesting ICS
9.1 PLC Scanning and Information Gathering
9.2 Network capture analysis & replaying packets
9.3 Attacking ICS protocols
9.4 Fuzzing ICS protocols
9.5 Attacking PLC standard interfaces and features
9.6 Attacking HMI
9.7 Attacking Windows ICS components
Protegiendo Sistemas ICS
10.1 Politica de seguridad de ICS
10.2 Análisis de riesgo para ICS
10.3 Security Awareness and Training Program para ICS
10.4 Segmentación de red
10.4.1 Evaluar y limitar las conexiones con redes inseguras
10.5 Políticas y restricciones en el uso de USB y dispositivos personales
10.6 Hardening de sistemas ICS
10.7 Aplicar el principio de ‘defense in depth’ para proteger dispositivos ICS
10.8 Monitoreo y supervisión de sistemas ICS
Caso de Estudio de ICS
11.1 Caso de estudio para aplicar los conocimientos adquiridos durante el training
Los estudiantes obtendrán:
Profundo conocimiento de los componentes y protocolos de ICS
Experiencia práctica en pentesting de componentes y protocolos clave de sistemas
industriales
Estrategias y métodos para para proteger sistemas industriales
Lecture vs hands-on:
El tiempo se distribuirá en un 40% de teoría contra un 60% de práctica. El enfoque del curso estará
mayormente dedicado a los laboratorios prácticos. Las lecciones teóricas se usarán para explicar
los conceptos necesarios para los ejercicios prácticos.
Ejercicios Prácticos:
Programación de PLCs: 30 minutos.
Modbus: ~ 30 minutos.
DNP3: ~ 30 minutos.
S7: ~ 30 minutos.
OPC: ~ 30 minutos.
Profinet: ~ 30 minutos.
PLC Scanning: ~ 30 minutos.
Network Capture and Replay: ~ 30 minutos.
Attacking ICS Protocols: ~ 1 hora.
Fuzzing ICS Protocols: ~ 1 hora.
Attacking PLC: ~ 1 hora.
Attacking HMI: ~ 1 hora.
Attacking Windows ICS Components: ~ 30 minutos.
Caso de estudio de sistemas ICS: ~ 1 hora.
Requerimientos para los estudiantes:
Conocimientos básicos de Linux
Conocimientos básicos de Redes y Pentesting
Que deben traer los estudiantes:
Notebook con al menos 40GB de espacio libre
8 GB minimo de RAM
Software de Virtualización VMWare
Que les proveeremos a los estudiantes:
Presentaciones, lecturas y materiales adicionales del training
Maquina virtual con ambiente de test, herramientas necesarias y ejercicios planteados en clase
1 mes de soporte de los capacitadores para resolver los ejercicios del training
Español |
2 días
|
22nd, 23rd September
|
ONLINE
|
Costo
Up to 31/08
USD 1250
Escribinos a capacitacion@ekoparty.org
Instructor
Yamila Vanesa Levalle is an Information Systems Engineer, Security Researcher and Offensive
Security Professional with more than 15 years of experience in the InfoSec field with expertise on
ICS systems security.
Yamila currently works as Security Researcher and Consultant in Dreamlab Technologies, where she
conducts researches, publishes investigations regarding several information security topics and
spread her skills giving trainings. She is an international security conferences speaker and has
presented her researches at important events, such as BlackHat Arsenal Las Vegas, PHDays Moscow, Northsec Montreal, AusCERT Australia, OWASP Latam Tour, and others.