positive hack days. Гуркин. Нулевой день для scada (0-day)
TRANSCRIPT
Безопасность SCADA
Positive Hack Days.
Безопасность SCADA.
GLEG ltd,
Гуркин Юрий
http://www.gleg.net
Безопасность SCADA
План доклада
Рассматриваемые вопросы SCADA soft- «Обычный» софт для
специфической области — автоматизации на производстве
Примеры уязвимостей различных типов 0day exploit CoDeSys ENI Server Немного рассуждений
Безопасность SCADA
Supervisory Control and Data Aquisition
— конечные приборы (датчики), контроллеры (агрегирование и преобразование данных).
– «Программная» часть — Обработка поступающих данных + хранение в базе + GUI
С точки зрения получения контроля над системой, интересна ПО составляющая
Безопасность SCADA
Supervisory Control and Data Aquisition
Пример архитектуры системы:
Безопасность SCADA
Типовые уязвимости:
Сетевые сервисы+база данных делают возможными следующие «классы» уязвимостей:
Доступ к устройствам (auth bypass or steal login+pwd):
SQL injections, directory traversals, прошитый пароль Доступ к управляющему компьютеру:
Memory based bugs (если ПО не базируется на local auth) , remote cmds execution.
Все остальное...
Less sensitive info disclosure ( «limited» dir trav or sql inj), DoS, DdoS.
Безопасность SCADA
Типовые уязвимости
Рассмотрим пример sql injection:http://itdefence.ru/content/advisory/scada/10_02/
User ID = 1' or 1=(select top 1 password from Users)--
Password = blank
пример сессии CANVAS с эксплойтом из Agora SCADA Pack для этой уязвимости:
Безопасность SCADA
Типовые уязвимости
IGSS scada: dir trav, cmd exec, buffer overflow.
http://seclists.org/bugtraq/2011/Mar/187 - по IGSS валнс есть описание вида:
dc.exe is a server running on port 12397 active when the project is started.
…...
The opcodes 0xa and 0x17 are used for launching the executables located
in the folder of the software but through directory traversal is
possible to execute any arbitrary executable on the disk where is
located the software and specifying any argument for its execution.
…...
Видео ролик эксплуатации IGSS с помощью CANVAS и эксплойтов из Agora SCADA+ Pack:
Безопасность SCADA
Типовые уязвимости
Client side scada softАтаки могут быть произведены и на компьютеры с установленными
клиентскими приложениями для SCADA.
- ActiveX vulns
- Локальные файлы «проектов», «конфигураций»
Например:
Invensys Wonderware inBatch BatchField ActiveX Control Stack Buffer Overflow Vulnerability
http://www.us-cert.gov/control_systems/pdf/ICSA-11-094-01.pdf
Скрин успешной эксплуатации:
Безопасность SCADA
0Day CoDeSys exploit.
Точно также, как и в любом другом софте, в SCADA содержатся уязвимости...
Специально для Positive Hack Days мы продемонстрируем
пример эксплуатации 0day (неопубликованная до настоящего времени) уязвимость в
CoDeSys ENI Server ver 1.1.4.0
Входит в состав среды разработки АСУ CoDeSys (3s-software)
Найдена при исследовании данного софта на тестовых системах в компании GLEG.
Безопасность SCADA
0Day CoDeSys exploit.
чрезвычайно популярные продукты в области автоматизации - CoDeSys software.
Решения построенные на codesys используются на многих заводах по производству машин, на электростанциях, «интеллектуальных» машинах (экскаваторах, упаковочных машинах)
Безопасность SCADA
Резюме
Точно также, как и в любом другом софте, в SCADA содержатся уязвимости.
Лучшей защитой для SCADA систем, несомненно, является ПОЛНАЯ изоляция (без крайней на то необходимости) от интернет
Однако все равно нужно уделять внимание безопасности SCADA (на всякий случай e.g. Stuxnet)
Есть специфика безопасности SCADA систем (максимальный ущерб может быть от доступа к конечным устройствам, тяжело применять «заплатки», борьба с концепцией «работает, и не трогай» )
Помимо всех прочих мер по безопасности, надежный путь - это выявлять и устранять уязвимости.