SCADA и мобильники: оценка безопасности приложений,...
Transcript of SCADA и мобильники: оценка безопасности приложений,...
SCADA и мобильники: оценка безопасности приложений,
превращающих смартфон в пульт управления заводом
Иван Юшкевичаудитор Digital Security
© 2002—2015, Digital Security
План
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
2
• Типы мобильных ICS-‐приложений• Тестирование• Уязвимости и векторы атак• Выводы
© 2002—2015, Digital Security
ICS (АСУ)
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
3
АСУ – автоматизированная система управления– Широко распространены – предприятия, заводы, даже дома! – Собирает данные с удаленных («полевых») устройств, обрабатывает
их и отправляет обратно команды для устройств (с помощью оператора или автономно)
• Передатчики/RTU• PLC (программируемые логические контроллеры)• SCADA• OPC – Open Platform Communications• HMI – Human-‐machine interfaces• MES – Manufacturing executioning system
© 2002—2015, Digital Security
ICS
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
4
© 2002—2015, Digital Security
Классификация мобильных приложений
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
5
• Приложения для конфигурации/взаимодействия с PLC• SCADA-‐клиент• HMI-‐панель
Control room
MES/HMI/Historian
Remote SCADA
© 2002—2015, Digital Security
Мобильные приложения в ICS
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
6
Internet Corporate Network
PLCs…HMI
SCADA servers
OPC, MES, Historians
(3) Remote SCADA client
(1) Mobile HMI panel
(2) Mobile OPC/MES client
© 2002—2015, Digital Security
Control room
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
7
• Управление/конфигурация/контроль технологического процесса и/или его компонентов
• Типы:‒ Приложения для конфигурации/взаимодействия с PLC‒ SCADA-‐клиенты‒ Мобильная HMI-‐панель
• Находятся в «доверенном» сегменте сети• Могут предоставлять полный контроль над
технологическим процессом
© 2002—2015, Digital Security
MES/HMI/Historian
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
8
• Данные доступны только для чтения
• Нет прямого доступа к PLC, HMI или SCADA
• Могут только читать некоторые значения или агрегированные данные
© 2002—2015, Digital Security
Remote SCADA
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
9
• Приложения, которые позволяют удаленно (из-‐за пределов «безопасного» периметра) следить за технологическим процессом или управлять им
© 2002—2015, Digital Security
Векторы атак
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
10
• Утеря (кража) смартфона/планшета• MitM (Wi-‐Fi, GSM/GPRS)• Незаблокированное устройство• Компрометация данных на SD-‐карте• Компрометация сервера – SQL-‐инъекции, DoS и т. п.
© 2002—2015, Digital Security
Основные угрозы безопасности
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
11
• Недостаточная проверка данных• Компрометация данных, хранящихся на SD-‐карте (модификация интерфейса HMI)
Control room
• Утечка данных или компрометация технологического процесса из-‐за уязвимости в протоколе
• DoS сервера или приложения• Скрытие сообщений о тревоге или их изменение для обмана оператора
MES/OPC/Historian
• Утечка данных или компрометация технологического процесса из-‐за уязвимости в протоколе
• DoS сервера или приложения• Недостаточная проверка данных• Серверные уязвимости
SCADA remote control app
© 2002—2015, Digital Security
Процесс анализа приложения
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
12
Предварительный анализ приложения по плану
Фаззинг
Реверс и анализ приложения
© 2002—2015, Digital Security
Анализ приложения. Приложение
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
13
• Назначение приложения: SCADA/HMI/PLC/OPC• Права
– Какие права требуются для установки приложения?
• Защита паролем для доступа к функционалу– Можно ли сразу приступить к работе с приложением?
• Наличие нативного кода• Наличие веб-‐компонентов
© 2002—2015, Digital Security
Анализ приложения. Протокол
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
14
• Аутентификация– Где и как происходит процесс аутентификации?
• Наличие токенов/cookie для идентификации• Используется ли SSL?
– Настройки SSL
• XML– Какой парсер используется? – Настройки парсера
• Доступные серверные API
© 2002—2015, Digital Security
Анализ приложения. Данные
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
15
• Строки подключения, пароли• Данные/проекты/HMI-‐интерфейсы• Логи работы программ• Конфигурационные файлы
© 2002—2015, Digital Security
Фаззинг
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
16
• Использование собственных протоколов для взаимодействия
• Полный анализ протокола может занять много времени L
© 2002—2015, Digital Security
Фаззинг. UIautomator
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
17
• Мобильные приложения –это «оконные» приложения: обычно не взаимодействуют с сервером без участия пользователя L
• UIAutomator (инструмент для тестирования GUI) эмулирует действия пользователя в мобильном приложении
© 2002—2015, Digital Security
Фаззинг. Пример
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
18
© 2002—2015, Digital Security
Исследуемые приложения
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
19
Afcon Pulse Autobase SCADA CyBroDroid Ellat SCADA HMI MASTER
HMI OBA7 MiScout OPC XML DA client
OPC XML DA Explorer
PLC-‐5 HMI
Pro-‐face Remote HMI
ProficySCADA Prosys OPC UA client lite
S7 Android Movicon Progea Web Client
ScadaTouch Siemens LOGO! App
Wagoid Watch*IT WHS Live Light
Remote SCADA client
OPC/MES/ Historian
Control room app
© 2002—2015, Digital Security
Результаты
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
20
0 5 10 15 20 25 30 35
Control-‐room apps
OPC/Historian clients
SCADA remote clients
Control-‐room apps OPC/Historian clients SCADA remote clientsУязвимости 2 2 9Слабости 4 12 20
Уязвимость/слабость Control room app OPC/MES client Remote SCADA client
Отсутствие аутентификации n/a 3 3
Аутентификация по имени пользователя
0 0 1
Передача пароля в открытом виде
0 0 2
Использование «уязвимых» крипт. примитивов
0 0 2
Отсутствие проверки параметров
n/a 0 1
© 2002—2015, Digital Security
Результаты
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
21
Уязвимость/слабость Control room app OPC/MES client Remote SCADA client
Вшитые в код ключи шифрования
0 1 3
Уязвимости, связанные с SSL
0 1 2
SQL-‐инъекции 1 1 0
Отсутствие защиты паролем 4 5 4
Передача данных в открытом виде
0 3 4
DoS 1 0 3
Данные на SD-‐карте 2 0 3
© 2002—2015, Digital Security
Результаты
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
22
© 2002—2015, Digital Security
Примеры уязвимостей
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
23
© 2002—2015, Digital Security
Примеры уязвимостей
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
24
© 2002—2015, Digital Security
Проблемы с аутентификацией
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
25
© 2002—2015, Digital Security
Примеры уязвимостей. Вшитые в код ключи
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
26
© 2002—2015, Digital Security
Примеры уязвимостей. Уязвимые алгоритмы хеширования
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
27
pi – i-‐ый символ в пароле:
225 значений ~ 33 млн комбинаций
© 2002—2015, Digital Security
SQL-‐инъекции
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
28
© 2002—2015, Digital Security
Отказ в обслуживании. Сервер
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
29
© 2002—2015, Digital Security
Отказ в обслуживании. Клиент
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
30
© 2002—2015, Digital Security
RCE?
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
31
© 2002—2015, Digital Security
Вектор: недостаточная проверка входных параметров с мобильного приложения
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
32
Атакующий:‒ Должен быть подсоединен к сети, где находится уязвимое
приложение или сервер‒ Должен знать адрес SCADA-‐сервера и иметь данные для входа
Пользователь подключает смартфон к Wi-‐Fi-‐сети в общественном месте (ресторан, торговый центр). Если приложение не использует шифрование при передаче данных, злоумышленник, организовав MitM (с помощью ARP-‐спуфинга), может прослушивать данные или изменять команды от клиента к серверу
© 2002—2015, Digital Security
Вектор: недостаточная проверка входных параметров с мобильного приложения
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
33
GET /scgi/?c8785.<removed>=26999& HTTP/1.1
Cookie: sessionid=98aec9bc19d2bed32d3cc9a1140920e2
Host: <removed>Proxy-Connection: close
Connection: close
© 2002—2015, Digital Security
Вектор: недостаточная проверка входных параметров с мобильного приложения
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
34
© 2002—2015, Digital Security
Вектор: компрометация данных на SD-‐карте
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
35
• Некоторые приложения сохраняют БД HMI (интерфейсы, параметры подключения, проекты и данные) на SD-‐карте
• Если HMI-‐данные скомпрометированы ( с помощью вируса, другого приложения), злоумышленник может изменить конфигурацию или настройки интерфейса: настройки триггеров событий, работу самих компонентов и многое другое
• Оператор, пользуясь измененным приложением, получает неверные данные и может принять неверное решение
© 2002—2015, Digital Security
Вектор: компрометация данных на SD-‐карте
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
36
© 2002—2015, Digital Security
Вектор: компрометация данных на SD-‐карте
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
37
© 2002—2015, Digital Security
Вектор: компрометация данных на SD-‐карте
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
38
© 2002—2015, Digital Security
Вектор: компрометация данных на SD-‐карте
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
39
© 2002—2015, Digital Security
Вектор: компрометация данных на SD-‐карте
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
40
© 2002—2015, Digital Security
Выводы
SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом
41
• 20 приложений для Android• Во всех приложениях присутствует как минимум одна
уязвимость или слабость безопасности• Наиболее опасные уязвимости – те, которые позволяют
ввести оператора в заблуждение относительно состояния технологического процесса
[email protected]@DSecRU
© 2002—2015, Digital Security
Digital Security в Москве: (495) 223-‐07-‐86Digital Security в Санкт-‐Петербурге: (812) 703-‐15-‐47
42