Как разобрать сетевой протокол и найти уязвимости в устройстве без использования прошивки — показываем на примере ПЛК Mitsubishi

Информационная безопасность

Инфобезопасность

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Доклад о том, как ломают промышленные контроллеры, которые могут устроить взрыв на электростанции или затопить маленький город. Теперь вы знаете, о чём спросить риелтора перед покупкой дома.

Целевая аудитория

Исследователи безопасности, реверс-инженеры, разработчики систем безопасности. Разработчики и исследователи встроенных устройств от IoT до промышленных ПЛК. Специалисты по информационной безопасности и системные администраторы, которые занимаются безопасностью промышленных предприятий. Профессионалы, которым интересна безопасность различных умных устройств, в частности промышленных ПЛК.

Тезисы

Миллионы умных устройств участвуют в нашей жизни: телефоны, компьютеры, принтеры, устройства IoT, промышленные ПЛК и др. Внутри каждого из них есть микросхемы и программный код в виде прошивок устройств, который может содержать уязвимости. Когда в руки исследователя безопасности попадает устройство с недокументированным сетевым протоколом, возникают следующие задачи: разобрать протокол и получить его описание, научиться общаться с устройством по сети, например, с помощью самописных скриптов, выявить уязвимости в устройстве.

Для исследования хорошо бы иметь прошивку. Но что делать, когда она зашифрована или ее невозможно достать из микросхем? Казалось бы, можно сложить руки и оставить устройство пылиться на полке. Но! Мы не отступили, когда такая ситуация встретилась нам в процессе исследования ПЛК FX5U от компании Mitsubishi. Мы прошли долгий путь, полный открытий, переоткрытий, использования передовых техник и в итоге получили описание протокола, набор скриптов для работы с ним и даже пачку CVE.

В докладе мы поделимся опытом, как по крупицам собрать информацию и восстановить протокол, используя документацию от других протоколов, утилиты от производителя, симулятор ПЛК, коды ошибок, полный перебор и другие методы. Покажем, как анализ протокола помог выявить целый набор уязвимостей: CVE-2022-25161, CVE-2022-25162, CVE-2022-25155 и др. Мы расскажем о них и покажем, как их вызвать, в многочисленных демонстрациях.

Антон Дорфман

Positive Technologies

Ведущий специалист отдела анализа приложений компании Positive Technologies. Кандидат технических наук, занимается реверс-инжинирингом более 23 лет.
Увлекается исследованием прошивок с редкими процессорными архитектурами и автоматизацией задач обратного проектирования. Специализируется на исследовании промышленных ПЛК и других встроенных устройств: восстановлении протоколов и форматов данных, поиске уязвимостей, разработке шелл-кодов — имплантов в прошивки.
Нашел более 25 уязвимостей в промышленных системах и устройствах следующих производителей: Mitsubishi Electric, Schneider Electric, WAGO, CODESYS. Разработал процессорный модуль NIOS II для IDA Pro, с которым поучаствовал в Hex-Rays Plugin Contest. Показал различные сценарии атак на ПЛК с принтера с модифицированной прошивкой.
Выступал на конференциях PHDays, HITBSecConf, Hackron, Zeronights.

Positive Technologies

Positive Technologies создаёт продукты в области кибербезопасности. Уже 20 лет основная задача компании — предотвращать хакерские атаки до того, как они причинят неприемлемый ущерб бизнесу и целым отраслям экономики. Продукты и сервисы Positive Technologies используют более 2300 компаний по всему миру.

Видео