Восток — дело тонкое, или
Уязвимости медицинского
и индустриального ПО.
Олейников Эмиль, Гуркин Юрий
План Доклада
1. Ввводная часть. Общие черты и особенности
медицинского и промышленного оборудования и ПО
2. EAST framework, как основа тестирования и
иллюстрации уязвимостей — архитектура,
функционал, примеры
3. «0Days» . IGSS SCADA. Full pwn
www.gleg.net
www.eastfw.com
www.eastexploits.com
GLEG ltd. О компании.
На рынке Инфосек с 2004.
Находим и исследуем уязвимости в софте общего назначения и SCADA
разрабатываем exploit packs для Коммерческих фреймворков
Immunity Inc, Core Security Inc и др.
Особенности индустриального и медицинского ПО.
Много общего, но есть частности
 Программная часть — база данных, интерфейс через http сервер и браузер
 Аппаратная часть — контроллеры, конечные устройства, SCADA-HMI. Для мед — черный
ящик.
 Львиная часть мед оборудования и ПО производства США, Европа.
Ввиду нехватки данных об оборудовании для тестов «доступно» ПО. Например:
 SQL injections :
 Client sides - ActiveX
 Information leaks :
 RCE:
Примеры уязвимостей на видео.
YiRC file upload, HHIMS SQLi leveraged to shell upload, OpenEMR
SQLi
Несколько слов об инструментарии исследователя ИБ
Pentest and Security tools, Exploitation Frameworks, exploit packs
Наиболее развитые open-sourсe & commercial Frameworks (среда разработки):
Metasploit
CoreImpact, Canvas, Rapid7 Metasploit
Все они были разработаны в США. => многие эксплойты 0Day базирующиеся на данных
средах, в первую очередь чаще всего становятся доступны для США... в том числе их
коммерческих компаний и гос структур
Что имеем в ИБ индустриального и медицинского
ПО сейчас и что нужно делать
 Нет стандартов и даже специальности
для студентов ( разрабатывается)
 Нет собственной среды разработки
для обучения и создания
проприетарных эксплойтов
 Пока еще низкая квалификация
персонала компаний и госструктур в
области защиты от атак
 Зарождающаяся культура проведения
тестирований на проникновение
 Emergency response ?
 Разработать стандарты для
специалиста в ИБ, пентестера
 Развивать и использовать собственные
инструменты и софт
 Больше обмена информацией и
обучения
 Отдельный человек или отдел, для ИБ
крупных компаний и госструктур
 Открытый обмен информацией и
технологиями... но не забывать о
собственных интересах
Что изображено на картинке ?
Космический корабль «Восток» и EAST Framework, - что у
них общего ? - Сделано в России с любовью!
Рассмотрим примеры уязвимостей индустриального ПО, а
также покажем архитектуру и функционал EAST в
следующей части доклада:
• Язык программирования Python
• Кроссплатформенность
• Модульность
• API
• Работа в ГУИ и в консоли
• Простота написания модулей
• Общение по WebSocket.
• Изменение исходных текстов
модулей «на лету»
• Быстрая перезагрузка и работа
«Из коробки» доступны:
•Генераторы шеллкодов под Windows и Linux c
возможностью энкодирования и создания исполняемых
файлов.
•Генераторы шеллкодов Python, PHP, ASPX, JSP.
•Вспомогательные классы для разработчиков
эксплоитов.
И самое главное – простой и удобный
способ добавления своих доработок во
фреймворк.
EaST Core Canvas Metasploit
Простота освоения и
эксплуатация
+ - - -/+
Верифицируемость кода 100
%
0% 50% 50%
Материалы для
обучения(на русском)
+/- - - +
Наполнение(эксплойты,
эксплойт-паки, тулзы)
+/- + + +
Тип уязвимости: Remote Code Execution
CVE: public
Вектор атаки: XML инъекция приводящая к выполнению произвольного кода.
Тип уязвимости: Denial of Service
CVE: public
Вектор атаки: “miniweb.exe” крэшится при обработке специального HTTP
запроса.
Тип уязвимости: Directory Traversal
CVE: public
Вектор атаки: “miniweb.exe” подвержен уязвимости «directory traversal» при
использовании энкодированых обратных слешей.
Тип уязвимости: Remote Code Execution
CVE: 0day
Вектор атаки: XML инъекция приводящая к выполнению произвольного кода.
Резюме:
В докладе продемонстрировали уязвимости специализированного
ПО с использованием отечественного фреймворка.
Рассмотрены особенности областей индустриального и
медицинского ПО.
!!!Посетите наш стенд EAST 4 SCADA и напишите свой
первый эксплойт под EAST!!!
Приглашаем к сотрудничеству и широкому использованию
EAST Framework.
WWW.EASTFW.COM WWW.EASTEXPLOITS.COM
www.expocod.com

Восток — дело тонкое, или Уязвимости медицинского и индустриального ПО

  • 1.
    Восток — делотонкое, или Уязвимости медицинского и индустриального ПО. Олейников Эмиль, Гуркин Юрий
  • 2.
    План Доклада 1. Ввводнаячасть. Общие черты и особенности медицинского и промышленного оборудования и ПО 2. EAST framework, как основа тестирования и иллюстрации уязвимостей — архитектура, функционал, примеры 3. «0Days» . IGSS SCADA. Full pwn
  • 3.
    www.gleg.net www.eastfw.com www.eastexploits.com GLEG ltd. Окомпании. На рынке Инфосек с 2004. Находим и исследуем уязвимости в софте общего назначения и SCADA разрабатываем exploit packs для Коммерческих фреймворков Immunity Inc, Core Security Inc и др.
  • 4.
    Особенности индустриального имедицинского ПО. Много общего, но есть частности  Программная часть — база данных, интерфейс через http сервер и браузер  Аппаратная часть — контроллеры, конечные устройства, SCADA-HMI. Для мед — черный ящик.  Львиная часть мед оборудования и ПО производства США, Европа.
  • 5.
    Ввиду нехватки данныхоб оборудовании для тестов «доступно» ПО. Например:  SQL injections :  Client sides - ActiveX  Information leaks :  RCE: Примеры уязвимостей на видео. YiRC file upload, HHIMS SQLi leveraged to shell upload, OpenEMR SQLi
  • 10.
    Несколько слов обинструментарии исследователя ИБ Pentest and Security tools, Exploitation Frameworks, exploit packs Наиболее развитые open-sourсe & commercial Frameworks (среда разработки): Metasploit CoreImpact, Canvas, Rapid7 Metasploit Все они были разработаны в США. => многие эксплойты 0Day базирующиеся на данных средах, в первую очередь чаще всего становятся доступны для США... в том числе их коммерческих компаний и гос структур
  • 11.
    Что имеем вИБ индустриального и медицинского ПО сейчас и что нужно делать  Нет стандартов и даже специальности для студентов ( разрабатывается)  Нет собственной среды разработки для обучения и создания проприетарных эксплойтов  Пока еще низкая квалификация персонала компаний и госструктур в области защиты от атак  Зарождающаяся культура проведения тестирований на проникновение  Emergency response ?  Разработать стандарты для специалиста в ИБ, пентестера  Развивать и использовать собственные инструменты и софт  Больше обмена информацией и обучения  Отдельный человек или отдел, для ИБ крупных компаний и госструктур  Открытый обмен информацией и технологиями... но не забывать о собственных интересах
  • 12.
  • 13.
    Космический корабль «Восток»и EAST Framework, - что у них общего ? - Сделано в России с любовью! Рассмотрим примеры уязвимостей индустриального ПО, а также покажем архитектуру и функционал EAST в следующей части доклада:
  • 14.
    • Язык программированияPython • Кроссплатформенность • Модульность • API • Работа в ГУИ и в консоли • Простота написания модулей
  • 15.
    • Общение поWebSocket. • Изменение исходных текстов модулей «на лету» • Быстрая перезагрузка и работа
  • 16.
    «Из коробки» доступны: •Генераторышеллкодов под Windows и Linux c возможностью энкодирования и создания исполняемых файлов. •Генераторы шеллкодов Python, PHP, ASPX, JSP. •Вспомогательные классы для разработчиков эксплоитов. И самое главное – простой и удобный способ добавления своих доработок во фреймворк.
  • 17.
    EaST Core CanvasMetasploit Простота освоения и эксплуатация + - - -/+ Верифицируемость кода 100 % 0% 50% 50% Материалы для обучения(на русском) +/- - - + Наполнение(эксплойты, эксплойт-паки, тулзы) +/- + + +
  • 18.
    Тип уязвимости: RemoteCode Execution CVE: public Вектор атаки: XML инъекция приводящая к выполнению произвольного кода.
  • 20.
    Тип уязвимости: Denialof Service CVE: public Вектор атаки: “miniweb.exe” крэшится при обработке специального HTTP запроса.
  • 22.
    Тип уязвимости: DirectoryTraversal CVE: public Вектор атаки: “miniweb.exe” подвержен уязвимости «directory traversal» при использовании энкодированых обратных слешей.
  • 24.
    Тип уязвимости: RemoteCode Execution CVE: 0day Вектор атаки: XML инъекция приводящая к выполнению произвольного кода.
  • 26.
    Резюме: В докладе продемонстрировалиуязвимости специализированного ПО с использованием отечественного фреймворка. Рассмотрены особенности областей индустриального и медицинского ПО. !!!Посетите наш стенд EAST 4 SCADA и напишите свой первый эксплойт под EAST!!! Приглашаем к сотрудничеству и широкому использованию EAST Framework. WWW.EASTFW.COM WWW.EASTEXPLOITS.COM www.expocod.com

Editor's Notes

  • #16 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #17 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #18 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #19 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #20 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #21 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #22 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #23 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #24 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #25 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #26 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.
  • #27 Ист создан с использование яп “Python”. Это означает что он полностью кроссплатформенный. В данное время обеспечивается полная работоспособсть фреймворка на платформах windows и linux. В целом архитектура фреймворка предствавляет из себя вебсокет-сервер, который является сердцем фрейворка, а также модули, листенеры и GUI, которые подключаются к серверу и могут взаимодействовать между сервером и друг другом. Модуль – это эксплойт, написанный по правилам создания модулей фреймворка. Для каждого модуля доступна возможность включения листенера, который будет прослушивать определенный порт на машине юзера и ждать входящие tcp/ip соединения. Таким образом каждый листенер “привязан” к своему модулю.