Ломать и строить. phdays 2015
TRANSCRIPT
![Page 1: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/1.jpg)
ЛОМАТЬ И СТРОИТЬ,
И СНОВА ЛОМАТЬ
Алексей КачалинЗАО «Перспективный
Мониторинг»
![Page 2: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/2.jpg)
![Page 3: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/3.jpg)
104
![Page 4: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/4.jpg)
ЕСЛИ нас «сломают»
КОГДА нас «сломают»
![Page 5: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/5.jpg)
ПОЛЬЗОВАТЕЛЬ
ПРОИЗВОДИТЕЛЬ
РЕГУЛЯТОРИССЛЕДОВАТЕЛЬ
НЕН
АВИ
СТЬ
![Page 6: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/6.jpg)
![Page 7: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/7.jpg)
О себе/О нас
О себе:
Занимаюсь исследованиями и разработкой в ИБ
ЗАО «ПМ»
Аналитический и инструментальный анализ ПО и ИС
С 2012 года – работаем по направлению повышения безопасности разработки
В 2014 запустили ЦМПринимаем участие в работе с регуляторами ИБ
![Page 8: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/8.jpg)
О чём речь?
Наш опыт проведения работ по взлому повышению защищённости разработки
Проблемы интеграции исследований ИБ в цикл работ по созданию и обслуживанию ПО/ИС
Дополнительные процессы и системы, полезные в нашей борьбе
![Page 9: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/9.jpg)
ИБ-портрет: Разработчик СЗИ
Компания – актуальны все угрозы для организаций и сотрудников
Отрасль ИБ – активно вовлечен в противоборство ИБ
Клиенты – информация о СЗИ, доступ, доверие
Продукт – системный, инфраструктурный компонент ИС
![Page 10: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/10.jpg)
04/15/2023 10
Жизненный цикл разработки ПО*: где ИБ?
ПроектированиеТребования
РазработкаТестирование
ВыпускЭксплуатация
Сертификация
Вывод из эксплуатации
*Аналогичная ситуация с• Итеративными моделями разработки• Моделью непрерывного размещения
![Page 11: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/11.jpg)
Безопасная разработка продукта
Мониторинг и реагирование Проверка и выпуск продукта Разработка Проектирование Требования Подготовка и обучение
разработчиков Внедрение практик разработки
![Page 12: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/12.jpg)
Что «вкусного» есть в ИС разработчика?
Системы учёта ошибок и улучшений
Системы версионного хранения кода
Системы хранения жалоб потребителей
Системы подготовки обновлений
------------------------------------------------------
Идеально для инжинерии атак
![Page 13: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/13.jpg)
Открытость инфраструктуры
Подключение к сетям заказчиков
Тестовые устройства на периметре
Необходимость загружать и тестировать недоверенное ПО
Организация методов обновления Продукта
![Page 14: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/14.jpg)
Разработчик СЗИ - ценная мишень
Интересны для атакующих «высоких классов», воспринимаются как активные участники государственной политики, представители интересов государства
Продукт : Исходники и собранное ПО для исследования, алгоритмы
Технологические мощности: сборочные сервера - возможность злоумышленнику собрать свою «подлинную» версию СЗИ, сетевые и серверные мощности
Эксплуатация доверия - Рассылка писем/переписка от имени доверенной организации, люди – сотрудники, внешние контакты
База установки Продукта: Контрактная документация, Сервисные подразделения
![Page 15: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/15.jpg)
Собственная безопасность разработчика
Регулярный аудит ИБ ИС
Центр Мониторинга
![Page 16: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/16.jpg)
Развитие мониторинга и реагирования
Технический анализ (состояние узлов, трафик, журналы)
Обнаружить публикацию информации об уязвимости
Публикация информации об уязвимости в компоненте/продукте
Сети обмена информацией об уязвимостях
Получить и интерпретировать обращения пользователей
Сообщения о «странном поведении программы» (нет явного подозрения на проблемы ИБ)
Попытки шантажа и ультиматумы, оскорбления и троллинг
Готовый метод компрометации ИБ (пошаговый, в виде PoCE)
Внутренние сообщение от разработчика – обратить внимание
Указания на строчку кода
Развёрнутый анализ с обоснованием неизбежности уязвимости
![Page 17: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/17.jpg)
Тестирование и тестирование
Анализ ИБ – безусловно один из видов тестирования продуктов
Свои методики и тест-планы
Автоматизация
Инструментарий (инструкции к общему инструментарию)
Работающий вариант: разработка автотестов для передачи в отдел тестирования
![Page 18: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/18.jpg)
Ловушки для исследователя
Не читать документацию
Переписать документацию
Не согласовывать цели/прогресс с заказчиком
Не осознать зоны ответственности заинтересованных лиц
![Page 19: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/19.jpg)
![Page 20: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/20.jpg)
Готовы ли разработчики?
Выбор инструментов и компонентов
Удобство среды разработки
Использование знакомых компонентов
Борьба с унаследованным кодом
«Безопасное программирование» это достаточное ИБ?
Утечки памяти, переполнение буфера, падения/повисания
Безопасные опции компилятора
Инструменты те же, а сценарии нет
Практики управления
Менеджер форсирует: бюджет, сроки, функционал
![Page 21: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/21.jpg)
Безопасная разработка: есть рецепты
Опыт«первопроходцев»
Теория
Практика Инструменты
![Page 22: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/22.jpg)
22
Полнота требований: Ваш лог не вреден полезен для ИБ?
![Page 23: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/23.jpg)
Модель угроз и нарушителя. Теперь в 3D
![Page 24: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/24.jpg)
24
Цели внедрения безопасной разработки
Осязаемые результаты: отдача от инвестиций в безопасность
Возврат инвестиций
ПО финансовых, подверженных фроду систем – возможно
Снижение количества инцидентов и уязвимостей
Снижение «стоимости» уязвимости
Оперативность реагирования на инциденты
Встраивание в существующий процесс разработки (заказа и эксплуатации ПО)
Существующие продукты и компоненты
Вовлечение команды (мотивация исполнителя и легитимизация затрат) на дополнительные практики ИБ
![Page 25: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/25.jpg)
25
Стратегия внедрения безопасной разработки (наивный алгоритм)
![Page 26: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/26.jpg)
Вот и договоритесь о приоритетахПроекты разработки
Продукты
Клиентские проекты
![Page 27: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/27.jpg)
Безопасность 2.0
Необходимая скорость реакции
Сократить окно уязвимости (Window of Vulnerability)
Локализовать и ограничить инцидент
Выявить первопричину уязвимости (ошибку)
Разработать исправление
Не позволяющее «обойти» себя
Или атаковать аналогичную уязвимость
Надежно устранить уязвимости, «не вернуть» ошибку в будущем
![Page 28: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/28.jpg)
Что блокирует внедрение исследований ИБ
Слабая прогнозируемость по срокам
Непредсказуемость по результатам
Отсутствие гарантий полноты исследований
Отсутствие сходимости исследований
Проблема повторных исследований
Потребность: непрерывный адаптируемый процесс с управляемыми характеристиками
![Page 29: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/29.jpg)
Цикл Безопасной Разработки Свод Знаний
Домены (Разделы) практик Мониторинг и реагирование
Проверка и выпуск продукта
Разработка
Проектирование
Требования
Сторонние компоненты
Соответствие требованиям регуляторов
Инструменты и системы разработки
Подготовка команды
![Page 30: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/30.jpg)
Безопасность – командный вид спорта?
Менеджер продукта
Руководитель разработки
Аналитик
Архитектор
Программист
Тестировщик
Специалист сопровождения
Хакер
Хакер
Хакер
Хакер
Хакер
Хакер
Хакер
![Page 31: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/31.jpg)
Не только сертификация
УБИ ФСТЭК СОПКА
ФСБ
ГОСТ поРазработкеФСТЭК
![Page 32: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/32.jpg)
Знать «свои» слабости
32
The CVE Identifier CVE-2014-0160 was released on April 7, 2014—the same day the Heartbleed bug was made public.
This type of weakness is described in detail by CWE-130: Improper Handling of Length Parameter Inconsistency. The second weakness is an out-of-bounds memory read, which is described inCWE-125: Out-of-Bounds Read. These CWEs were first defined more than eight years ago
CAPEC-540: Overread Buffers defines the general pattern commonly used by an attacker including how the attack is crafted, its potential severity and consequences
![Page 33: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/33.jpg)
Выстроить чтобы ломать
Исследователи и программисты
Инструменты и методика
База знаний и терминология (язык общения)
Автоматизация консистентных процессов
Процесс безопасной разработки
Средства и процесс мониторинга
![Page 34: Ломать и строить. PHDays 2015](https://reader036.vdocuments.net/reader036/viewer/2022062420/55b63b26bb61ebd70f8b4792/html5/thumbnails/34.jpg)
Начать с того что имеете
Использовать доступное
Делать возможное
Качалин АлексейДиректор ЗАО «ПМ»
@kchln [email protected]