SlideShare ist ein Scribd-Unternehmen logo
1 von 36
ЛОМАТЬ
И СТРОИТЬ,
И СНОВА ЛОМАТЬ
Алексей Качалин
ЗАО «Перспективный
Мониторинг»
ЕСЛИ нас «сломают» 
КОГДА нас «сломают»
Сколько можно исследовать ИБ?
0
5
10
15
20
25
30
35
2011 2012 2013 2014
ПРИМЕРНО ЛЮБОЙ ОТЧЕТ О
ПЕРИОДИЧЕСКОМ АНАЛИЗЕ ИБ
Критических уязвимостей Найдено новых Закрыто уязвимостей
НЕНАВИСТЬ
О себе/О нас
О себе:
Занимаюсь исследованиями и
разработкой в ИБ
ЗАО «ПМ»
Аналитический и
инструментальный анализ ПО и
ИС
С 2012 года – работаем по
направлению повышения
безопасности разработки
В 2014 запустили ЦМ
Принимаем участие в работе с
регуляторами ИБ
О чём речь?
Наш опыт проведения работ по взлому
повышению защищённости разработки
Проблемы интеграции исследований ИБ в
цикл работ по созданию и обслуживанию
ПО/ИС
Дополнительные процессы и системы,
полезные в нашей борьбе
ИБ-портрет: Разработчик (СЗИ)
Компания – актуальны все угрозы для
организаций и сотрудников
Отрасль ИБ – активно вовлечен в
противоборство ИБ
Клиенты – информация о СЗИ, доступ,
доверие
Продукт – системный, инфраструктурный
компонент ИС
Жизненный цикл разработки ПО*: где ИБ?
03.06.2015 11
Проектирование
Требования
Разработка
Тестирование
Выпуск
Эксплуатация
Сертификация
Вывод из эксплуатации
*Аналогичная ситуация с
• Итеративными моделями разработки
• Моделью непрерывного размещения
Безопасная разработка продукта
 Мониторинг и реагирование
 Проверка и выпуск продукта
 Разработка
 Проектирование
 Требования
 Подготовка и обучение
разработчиков
 Внедрение практик
разработки
Что «вкусного» есть в ИС разработчика?
Системы учёта ошибок и улучшений
Системы версионного хранения кода
Системы хранения жалоб потребителей
Системы подготовки обновлений
------------------------------------------------------
Идеально для инжинерии атак
Можно грабить караваныTM
Подключение к сетям заказчиков
Тестовые устройства на периметре
Необходимость загружать и тестировать
недоверенное ПО
Организация методов
обновления Продукта
Продукт в конце концов
Разработчик СЗИ – интересная мишень
Интересны для атакующих «высоких классов»,
воспринимаются как активные участники
государственной политики, представители интересов
государства
Продукт : Исходники и собранное ПО для
исследования, алгоритмы
Технологические мощности: сборочные сервера -
возможность злоумышленнику собрать свою
«подлинную» версию СЗИ, сетевые и серверные
мощности
Эксплуатация доверия - Рассылка писем/переписка
от имени доверенной организации, люди –
сотрудники, внешние контакты
База установки Продукта: Контрактная
документация, Сервисные подразделения
Собственная безопасность разработчика
Регулярный аудит ИБ ИС
Центр Мониторинга*
* Нет мы не делаем “свой SIEM”, не умеем видеть невидимые вещи, спасибо за понимание
Развитие мониторинга и реагирования
Технический анализ (состояние узлов, трафик, журналы)
Обнаружить публикацию информации об уязвимости
Публикация информации об уязвимости в компоненте/продукте
Сети обмена информацией об уязвимостях
Получить и интерпретировать обращения пользователей
Сообщения о «странном поведении программы» (нет явного
подозрения на проблемы ИБ)
Попытки шантажа и ультиматумы, оскорбления и троллинг
Готовый метод компрометации ИБ (пошаговый, в виде PoCE)
Внутренние сообщение от разработчика – обратить внимание
Указания на строчку кода
Развёрнутый анализ с обоснованием неизбежности уязвимости
Тестирование и тестирование
Анализ ИБ – безусловно один из видов
тестирования продуктов
Свои методики и тест-планы
Автоматизация
Инструментарий
(инструкции)
Работающий вариант: разработка автотестов
для передачи в отдел тестирования
Ловушки для исследователя
Не читать документацию
Переписать документацию
Не согласовывать цели/прогресс с
заказчиком
Не осознать зоны ответственности
заинтересованных лиц
…
Готовы ли разработчики?
Выбор инструментов и компонентов
Удобство среды разработки
Использование знакомых компонентов
Борьба с унаследованным кодом
«Безопасное программирование» это достаточное ИБ?
Утечки памяти, переполнение буфера, падения/повисания
Безопасные опции компилятора
Инструменты те же, а сценарии нет
Практики управления
Менеджер форсирует: бюджет, сроки, функционал
Безопасная разработка: есть рецепты
Опыт
«первопроходцев»
Теория
Практика Инструменты
Безопасная разработка продукта
 Мониторинг и реагирование
 Проверка и выпуск продукта
 Разработка
 Проектирование
 Требования
 Подготовка и обучение
разработчиков
 Внедрение практик
разработки
Полнота требований:
Ваш лог не вреден полезен для ИБ?
24
Модель угроз и нарушителя. Теперь в 3D
Условия внедрения безопасной разработки
Осязаемые результаты: отдача от инвестиций в безопасность
Возврат инвестиций
ПО финансовых, подверженных фроду систем – возможно
Снижение количества инцидентов и уязвимостей
Снижение «стоимости» уязвимости
Оперативность реагирования на инциденты
Встраивание в существующий процесс разработки (заказа и
эксплуатации ПО)
Существующие продукты и компоненты
Вовлечение команды (мотивация исполнителя и
легитимизация затрат) на дополнительные практики ИБ
26
Стратегия внедрения безопасной
разработки (наивный алгоритм)
27
Вот и договоритесь о приоритетах
Проекты разработки
Продукты
Клиентские проекты
Безопасность 2.0
Необходимая скорость реакции
Сократить окно уязвимости (Window of Vulnerability)
Локализовать и ограничить инцидент
Выявить первопричину уязвимости (ошибку)
Разработать исправление
Не позволяющее «обойти» себя
Или атаковать аналогичную уязвимость
Надежно устранить уязвимости, «не вернуть» ошибку в
будущем
Что блокирует внедрение исследований ИБ
Слабая прогнозируемость по срокам
Непредсказуемость по результатам
Отсутствие гарантий полноты исследований
Отсутствие сходимости исследований
Проблема повторных исследований
Потребность: непрерывный адаптируемый
процесс с управляемыми характеристиками
Цикл Безопасной Разработки 
Свод Знаний
 Домены (Разделы) практик
 Мониторинг и реагирование
 Проверка и выпуск продукта
 Разработка
 Проектирование
 Требования
 Сторонние компоненты
 Соответствие требованиям регуляторов
 Инструменты и системы разработки
 Подготовка команды
Безопасность – командный вид спорта?
Менеджер продукта
Руководитель разработки
Аналитик
Архитектор
Программист
Тестировщик
Специалист сопровождения
Хакер
Хакер
Хакер
Хакер
Хакер
Хакер
Хакер
Осознать «свои» слабости
33
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
Не только сертификация
Выстроить чтобы ломать
Исследователи и программисты
Инструменты и методика
База знаний и терминология (язык общения)
Автоматизация консистентных процессов
Процесс безопасной разработки
Средства и процесс мониторинга
Начать с того что имеете
Использовать доступное
Делать возможное
Качалин Алексей
Директор ЗАО «ПМ»
@kchln
Kachalin@advancedmonitoring.ru

Weitere ähnliche Inhalte

Was ist angesagt?

2015 02 пм качалин sdl
2015 02 пм качалин sdl2015 02 пм качалин sdl
2015 02 пм качалин sdl
Alexey Kachalin
 
Жизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложенийЖизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложений
RISClubSPb
 
Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...
Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...
Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...
Kaspersky
 
Обеспечение качества ПО: международный опыт
Обеспечение качества ПО: международный опытОбеспечение качества ПО: международный опыт
Обеспечение качества ПО: международный опыт
Aleksey Lukatskiy
 
Контроль уязвимостей в программных приложениях
Контроль уязвимостей в программных приложенияхКонтроль уязвимостей в программных приложениях
Контроль уязвимостей в программных приложениях
jet_information_security
 
Построение процесса безопасной разработки - Стачка 2016
Построение процесса безопасной разработки - Стачка 2016Построение процесса безопасной разработки - Стачка 2016
Построение процесса безопасной разработки - Стачка 2016
Valery Boronin
 

Was ist angesagt? (20)

Цикл безопасной разработки
Цикл безопасной разработкиЦикл безопасной разработки
Цикл безопасной разработки
 
Внедрение безопасной разработки (Infosecurity 2014)
Внедрение безопасной разработки (Infosecurity 2014)Внедрение безопасной разработки (Infosecurity 2014)
Внедрение безопасной разработки (Infosecurity 2014)
 
2015 02 пм качалин sdl
2015 02 пм качалин sdl2015 02 пм качалин sdl
2015 02 пм качалин sdl
 
Опасная разработка. Дорожная карта движения к катастрофе
Опасная разработка. Дорожная карта движения к катастрофеОпасная разработка. Дорожная карта движения к катастрофе
Опасная разработка. Дорожная карта движения к катастрофе
 
Secure development
Secure developmentSecure development
Secure development
 
Внутренняя угроза: выявление и защита с помощью ObserveIT
Внутренняя угроза: выявление и защита с помощью ObserveITВнутренняя угроза: выявление и защита с помощью ObserveIT
Внутренняя угроза: выявление и защита с помощью ObserveIT
 
Жизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложенийЖизненный цикл безопасной разработки платежных приложений
Жизненный цикл безопасной разработки платежных приложений
 
Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...
Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...
Алексей Иванов. Реализация проектов АСУ ТП электрических подстанций ​в соотве...
 
Обеспечение качества ПО: международный опыт
Обеспечение качества ПО: международный опытОбеспечение качества ПО: международный опыт
Обеспечение качества ПО: международный опыт
 
Контроль уязвимостей в программных приложениях
Контроль уязвимостей в программных приложенияхКонтроль уязвимостей в программных приложениях
Контроль уязвимостей в программных приложениях
 
Anti-Malware. Илья Шабанов. "Как правильно выбрать антивирус?"
Anti-Malware. Илья Шабанов. "Как правильно выбрать антивирус?"Anti-Malware. Илья Шабанов. "Как правильно выбрать антивирус?"
Anti-Malware. Илья Шабанов. "Как правильно выбрать антивирус?"
 
Построение процесса безопасной разработки
Построение процесса безопасной разработкиПостроение процесса безопасной разработки
Построение процесса безопасной разработки
 
Построение процесса безопасной разработки - Стачка 2016
Построение процесса безопасной разработки - Стачка 2016Построение процесса безопасной разработки - Стачка 2016
Построение процесса безопасной разработки - Стачка 2016
 
Positive technologies а.гончаров
Positive technologies а.гончаровPositive technologies а.гончаров
Positive technologies а.гончаров
 
PT Application Inspector SSDL Edition листовка
PT Application Inspector SSDL Edition листовкаPT Application Inspector SSDL Edition листовка
PT Application Inspector SSDL Edition листовка
 
Метрики информационной безопасности
Метрики информационной безопасностиМетрики информационной безопасности
Метрики информационной безопасности
 
Противодействие мошенничеству и расследование инцидентов в страховых компаниях
Противодействие мошенничеству и расследование инцидентов в страховых компанияхПротиводействие мошенничеству и расследование инцидентов в страховых компаниях
Противодействие мошенничеству и расследование инцидентов в страховых компаниях
 
DLP 007: три элемента мобильной безопасности
DLP 007: три элемента мобильной безопасностиDLP 007: три элемента мобильной безопасности
DLP 007: три элемента мобильной безопасности
 
Безопасная разработка для руководителей
Безопасная разработка для руководителейБезопасная разработка для руководителей
Безопасная разработка для руководителей
 
Вычисление, визуализация и анализ метрик защищенности защищенности для монито...
Вычисление, визуализация и анализ метрик защищенности защищенности для монито...Вычисление, визуализация и анализ метрик защищенности защищенности для монито...
Вычисление, визуализация и анализ метрик защищенности защищенности для монито...
 

Andere mochten auch

Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...
Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...
Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...
PENSIA.ua
 
шевченко
шевченкошевченко
шевченко
gnezdilov
 

Andere mochten auch (16)

Aprender a escuchar, aprender a hablar
Aprender a escuchar, aprender a hablarAprender a escuchar, aprender a hablar
Aprender a escuchar, aprender a hablar
 
Pricing challenges and models for consumer goods companies
Pricing challenges and models for consumer goods companiesPricing challenges and models for consumer goods companies
Pricing challenges and models for consumer goods companies
 
Uk film consumption
Uk film consumption Uk film consumption
Uk film consumption
 
Bellissima
BellissimaBellissima
Bellissima
 
JTM_OpEssay
JTM_OpEssayJTM_OpEssay
JTM_OpEssay
 
272 .ppt
272  .ppt272  .ppt
272 .ppt
 
Pares craneanos
Pares craneanosPares craneanos
Pares craneanos
 
1. ICV Kongres controllera Srbije 2013, Danijela Medić, šef finanasijske anal...
1. ICV Kongres controllera Srbije 2013, Danijela Medić, šef finanasijske anal...1. ICV Kongres controllera Srbije 2013, Danijela Medić, šef finanasijske anal...
1. ICV Kongres controllera Srbije 2013, Danijela Medić, šef finanasijske anal...
 
виткова
витковавиткова
виткова
 
Networking success
Networking successNetworking success
Networking success
 
Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...
Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...
Павло Розенко: «Пенсійний фонд має не просто пливти за течією, а бути локом...
 
02 ninguna-institución
02 ninguna-institución02 ninguna-institución
02 ninguna-institución
 
шевченко
шевченкошевченко
шевченко
 
Final
FinalFinal
Final
 
Placas examen
Placas examenPlacas examen
Placas examen
 
Chapter03
Chapter03Chapter03
Chapter03
 

Ähnlich wie ЛОМАТЬ И СТРОИТЬ, И СНОВА ЛОМАТЬ

тест на проникновение
тест на проникновение тест на проникновение
тест на проникновение
a_a_a
 
Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...
Dmitry Evteev
 
Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...
Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...
Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...
Expolink
 

Ähnlich wie ЛОМАТЬ И СТРОИТЬ, И СНОВА ЛОМАТЬ (20)

Проблемы безопасной разработки и поддержки импортных средств защиты информации
Проблемы безопасной разработки и поддержки импортных средств защиты информацииПроблемы безопасной разработки и поддержки импортных средств защиты информации
Проблемы безопасной разработки и поддержки импортных средств защиты информации
 
Принципы защиты информации и метрики ИБ
Принципы защиты информации и метрики ИБПринципы защиты информации и метрики ИБ
Принципы защиты информации и метрики ИБ
 
Безопасная разработка (СТАЧКА 2015)
Безопасная разработка (СТАЧКА 2015)Безопасная разработка (СТАЧКА 2015)
Безопасная разработка (СТАЧКА 2015)
 
Security as a Service = JSOC
Security as a Service = JSOCSecurity as a Service = JSOC
Security as a Service = JSOC
 
5.про soc от jet
5.про soc от jet5.про soc от jet
5.про soc от jet
 
Основной вектор атак — приложения
Основной вектор атак — приложенияОсновной вектор атак — приложения
Основной вектор атак — приложения
 
тест на проникновение
тест на проникновение тест на проникновение
тест на проникновение
 
Microsoft. Никита Трубецкой. "Облачные сервисы – головная боль для служб безо...
Microsoft. Никита Трубецкой. "Облачные сервисы – головная боль для служб безо...Microsoft. Никита Трубецкой. "Облачные сервисы – головная боль для служб безо...
Microsoft. Никита Трубецкой. "Облачные сервисы – головная боль для служб безо...
 
Тесты на проникновение как основа реальной оценки состояния ИБ в организации
Тесты на проникновение как основа реальной оценки состояния ИБ в организацииТесты на проникновение как основа реальной оценки состояния ИБ в организации
Тесты на проникновение как основа реальной оценки состояния ИБ в организации
 
Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...
 
Внедрение СУИБ, соответствующей ИСО 27001 в ИТ компании
Внедрение СУИБ, соответствующей ИСО 27001 в ИТ компанииВнедрение СУИБ, соответствующей ИСО 27001 в ИТ компании
Внедрение СУИБ, соответствующей ИСО 27001 в ИТ компании
 
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
 
SOC vs SIEM
SOC vs SIEMSOC vs SIEM
SOC vs SIEM
 
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
пр Спроси эксперта. Все, что вы хотели узнать про «дыры» в коде, но не у кого...
 
Positive Technologies Application Inspector
Positive Technologies Application InspectorPositive Technologies Application Inspector
Positive Technologies Application Inspector
 
Андрей Уразов - Методы раннего обнаружения ошибок
Андрей Уразов - Методы раннего обнаружения ошибокАндрей Уразов - Методы раннего обнаружения ошибок
Андрей Уразов - Методы раннего обнаружения ошибок
 
Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...
Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...
Microsoft. Никита Трубецкой. "Защита корпоративной информации при доступе из ...
 
Угрозы ИБ - retail edition (2016)
Угрозы ИБ - retail edition (2016)Угрозы ИБ - retail edition (2016)
Угрозы ИБ - retail edition (2016)
 
пр 5 почему аутсорсинга ИБ
пр 5 почему аутсорсинга ИБпр 5 почему аутсорсинга ИБ
пр 5 почему аутсорсинга ИБ
 
Solar Security. Андрей Прозоров. "5 "почему" аутсорсинга ИБ"
Solar Security. Андрей Прозоров. "5 "почему" аутсорсинга ИБ"Solar Security. Андрей Прозоров. "5 "почему" аутсорсинга ИБ"
Solar Security. Андрей Прозоров. "5 "почему" аутсорсинга ИБ"
 

Mehr von Positive Hack Days

Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»
Positive Hack Days
 
Эвристические методы защиты приложений
Эвристические методы защиты приложенийЭвристические методы защиты приложений
Эвристические методы защиты приложений
Positive Hack Days
 
Уязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на граблиУязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на грабли
Positive Hack Days
 
Механизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET CoreМеханизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET Core
Positive Hack Days
 

Mehr von Positive Hack Days (20)

Инструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesИнструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
 
Как мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows DockerКак мы собираем проекты в выделенном окружении в Windows Docker
Как мы собираем проекты в выделенном окружении в Windows Docker
 
Типовая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive TechnologiesТиповая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive Technologies
 
Аналитика в проектах: TFS + Qlik
Аналитика в проектах: TFS + QlikАналитика в проектах: TFS + Qlik
Аналитика в проектах: TFS + Qlik
 
Использование анализатора кода SonarQube
Использование анализатора кода SonarQubeИспользование анализатора кода SonarQube
Использование анализатора кода SonarQube
 
Развитие сообщества Open DevOps Community
Развитие сообщества Open DevOps CommunityРазвитие сообщества Open DevOps Community
Развитие сообщества Open DevOps Community
 
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
Методика определения неиспользуемых ресурсов виртуальных машин и автоматизаци...
 
Автоматизация построения правил для Approof
Автоматизация построения правил для ApproofАвтоматизация построения правил для Approof
Автоматизация построения правил для Approof
 
Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»Мастер-класс «Трущобы Application Security»
Мастер-класс «Трущобы Application Security»
 
Формальные методы защиты приложений
Формальные методы защиты приложенийФормальные методы защиты приложений
Формальные методы защиты приложений
 
Эвристические методы защиты приложений
Эвристические методы защиты приложенийЭвристические методы защиты приложений
Эвристические методы защиты приложений
 
Теоретические основы Application Security
Теоретические основы Application SecurityТеоретические основы Application Security
Теоретические основы Application Security
 
От экспериментального программирования к промышленному: путь длиной в 10 лет
От экспериментального программирования к промышленному: путь длиной в 10 летОт экспериментального программирования к промышленному: путь длиной в 10 лет
От экспериментального программирования к промышленному: путь длиной в 10 лет
 
Уязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на граблиУязвимое Android-приложение: N проверенных способов наступить на грабли
Уязвимое Android-приложение: N проверенных способов наступить на грабли
 
Требования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПОТребования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПО
 
Формальная верификация кода на языке Си
Формальная верификация кода на языке СиФормальная верификация кода на языке Си
Формальная верификация кода на языке Си
 
Механизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET CoreМеханизмы предотвращения атак в ASP.NET Core
Механизмы предотвращения атак в ASP.NET Core
 
SOC для КИИ: израильский опыт
SOC для КИИ: израильский опытSOC для КИИ: израильский опыт
SOC для КИИ: израильский опыт
 
Honeywell Industrial Cyber Security Lab & Services Center
Honeywell Industrial Cyber Security Lab & Services CenterHoneywell Industrial Cyber Security Lab & Services Center
Honeywell Industrial Cyber Security Lab & Services Center
 
Credential stuffing и брутфорс-атаки
Credential stuffing и брутфорс-атакиCredential stuffing и брутфорс-атаки
Credential stuffing и брутфорс-атаки
 

ЛОМАТЬ И СТРОИТЬ, И СНОВА ЛОМАТЬ

  • 1. ЛОМАТЬ И СТРОИТЬ, И СНОВА ЛОМАТЬ Алексей Качалин ЗАО «Перспективный Мониторинг»
  • 2.
  • 3.
  • 4. ЕСЛИ нас «сломают»  КОГДА нас «сломают»
  • 5. Сколько можно исследовать ИБ? 0 5 10 15 20 25 30 35 2011 2012 2013 2014 ПРИМЕРНО ЛЮБОЙ ОТЧЕТ О ПЕРИОДИЧЕСКОМ АНАЛИЗЕ ИБ Критических уязвимостей Найдено новых Закрыто уязвимостей
  • 7.
  • 8. О себе/О нас О себе: Занимаюсь исследованиями и разработкой в ИБ ЗАО «ПМ» Аналитический и инструментальный анализ ПО и ИС С 2012 года – работаем по направлению повышения безопасности разработки В 2014 запустили ЦМ Принимаем участие в работе с регуляторами ИБ
  • 9. О чём речь? Наш опыт проведения работ по взлому повышению защищённости разработки Проблемы интеграции исследований ИБ в цикл работ по созданию и обслуживанию ПО/ИС Дополнительные процессы и системы, полезные в нашей борьбе
  • 10. ИБ-портрет: Разработчик (СЗИ) Компания – актуальны все угрозы для организаций и сотрудников Отрасль ИБ – активно вовлечен в противоборство ИБ Клиенты – информация о СЗИ, доступ, доверие Продукт – системный, инфраструктурный компонент ИС
  • 11. Жизненный цикл разработки ПО*: где ИБ? 03.06.2015 11 Проектирование Требования Разработка Тестирование Выпуск Эксплуатация Сертификация Вывод из эксплуатации *Аналогичная ситуация с • Итеративными моделями разработки • Моделью непрерывного размещения
  • 12. Безопасная разработка продукта  Мониторинг и реагирование  Проверка и выпуск продукта  Разработка  Проектирование  Требования  Подготовка и обучение разработчиков  Внедрение практик разработки
  • 13. Что «вкусного» есть в ИС разработчика? Системы учёта ошибок и улучшений Системы версионного хранения кода Системы хранения жалоб потребителей Системы подготовки обновлений ------------------------------------------------------ Идеально для инжинерии атак
  • 14. Можно грабить караваныTM Подключение к сетям заказчиков Тестовые устройства на периметре Необходимость загружать и тестировать недоверенное ПО Организация методов обновления Продукта Продукт в конце концов
  • 15. Разработчик СЗИ – интересная мишень Интересны для атакующих «высоких классов», воспринимаются как активные участники государственной политики, представители интересов государства Продукт : Исходники и собранное ПО для исследования, алгоритмы Технологические мощности: сборочные сервера - возможность злоумышленнику собрать свою «подлинную» версию СЗИ, сетевые и серверные мощности Эксплуатация доверия - Рассылка писем/переписка от имени доверенной организации, люди – сотрудники, внешние контакты База установки Продукта: Контрактная документация, Сервисные подразделения
  • 16. Собственная безопасность разработчика Регулярный аудит ИБ ИС Центр Мониторинга* * Нет мы не делаем “свой SIEM”, не умеем видеть невидимые вещи, спасибо за понимание
  • 17. Развитие мониторинга и реагирования Технический анализ (состояние узлов, трафик, журналы) Обнаружить публикацию информации об уязвимости Публикация информации об уязвимости в компоненте/продукте Сети обмена информацией об уязвимостях Получить и интерпретировать обращения пользователей Сообщения о «странном поведении программы» (нет явного подозрения на проблемы ИБ) Попытки шантажа и ультиматумы, оскорбления и троллинг Готовый метод компрометации ИБ (пошаговый, в виде PoCE) Внутренние сообщение от разработчика – обратить внимание Указания на строчку кода Развёрнутый анализ с обоснованием неизбежности уязвимости
  • 18. Тестирование и тестирование Анализ ИБ – безусловно один из видов тестирования продуктов Свои методики и тест-планы Автоматизация Инструментарий (инструкции) Работающий вариант: разработка автотестов для передачи в отдел тестирования
  • 19. Ловушки для исследователя Не читать документацию Переписать документацию Не согласовывать цели/прогресс с заказчиком Не осознать зоны ответственности заинтересованных лиц …
  • 20.
  • 21. Готовы ли разработчики? Выбор инструментов и компонентов Удобство среды разработки Использование знакомых компонентов Борьба с унаследованным кодом «Безопасное программирование» это достаточное ИБ? Утечки памяти, переполнение буфера, падения/повисания Безопасные опции компилятора Инструменты те же, а сценарии нет Практики управления Менеджер форсирует: бюджет, сроки, функционал
  • 22. Безопасная разработка: есть рецепты Опыт «первопроходцев» Теория Практика Инструменты
  • 23. Безопасная разработка продукта  Мониторинг и реагирование  Проверка и выпуск продукта  Разработка  Проектирование  Требования  Подготовка и обучение разработчиков  Внедрение практик разработки
  • 24. Полнота требований: Ваш лог не вреден полезен для ИБ? 24
  • 25. Модель угроз и нарушителя. Теперь в 3D
  • 26. Условия внедрения безопасной разработки Осязаемые результаты: отдача от инвестиций в безопасность Возврат инвестиций ПО финансовых, подверженных фроду систем – возможно Снижение количества инцидентов и уязвимостей Снижение «стоимости» уязвимости Оперативность реагирования на инциденты Встраивание в существующий процесс разработки (заказа и эксплуатации ПО) Существующие продукты и компоненты Вовлечение команды (мотивация исполнителя и легитимизация затрат) на дополнительные практики ИБ 26
  • 28. Вот и договоритесь о приоритетах Проекты разработки Продукты Клиентские проекты
  • 29. Безопасность 2.0 Необходимая скорость реакции Сократить окно уязвимости (Window of Vulnerability) Локализовать и ограничить инцидент Выявить первопричину уязвимости (ошибку) Разработать исправление Не позволяющее «обойти» себя Или атаковать аналогичную уязвимость Надежно устранить уязвимости, «не вернуть» ошибку в будущем
  • 30. Что блокирует внедрение исследований ИБ Слабая прогнозируемость по срокам Непредсказуемость по результатам Отсутствие гарантий полноты исследований Отсутствие сходимости исследований Проблема повторных исследований Потребность: непрерывный адаптируемый процесс с управляемыми характеристиками
  • 31. Цикл Безопасной Разработки  Свод Знаний  Домены (Разделы) практик  Мониторинг и реагирование  Проверка и выпуск продукта  Разработка  Проектирование  Требования  Сторонние компоненты  Соответствие требованиям регуляторов  Инструменты и системы разработки  Подготовка команды
  • 32. Безопасность – командный вид спорта? Менеджер продукта Руководитель разработки Аналитик Архитектор Программист Тестировщик Специалист сопровождения Хакер Хакер Хакер Хакер Хакер Хакер Хакер
  • 33. Осознать «свои» слабости 33 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
  • 35. Выстроить чтобы ломать Исследователи и программисты Инструменты и методика База знаний и терминология (язык общения) Автоматизация консистентных процессов Процесс безопасной разработки Средства и процесс мониторинга
  • 36. Начать с того что имеете Использовать доступное Делать возможное Качалин Алексей Директор ЗАО «ПМ» @kchln Kachalin@advancedmonitoring.ru

Hinweis der Redaktion

  1. "Ломать и строить, и снова ломать"   Исследование информационной безопасности создаваемых информационных систем и разрабатываемых приложений стало достаточно распространенной практикой. Специалисты по практической безопасности получили заслуженное признание и "включены в цикл" разработки, их "вписывают" в нормативку, создают базы знаний для хранения результатов исследований уязвимостей. Обсудим ожидания разработчиков и владельцев информационных систем от работ исследователей, задачи, которые предстоит решать, аспекты качества исследований, проводимых на регулярной основе. 
  2. Недовольны вендорами
  3. Недоволен регулятор Априорная безопасность не тру
  4. Все не довольны
  5. Пиджак/футболка – кому какое дело – была бы работа сделана
  6. В широком смысле – т.е. по всем аспектам ИБ для п.п. выше
  7. Модель зрелости должна быть Подходящая этапность внедрения? Домены Можно суммировать и расширить Готовые методы, инструменты, классификации Моделирование угроз, трассировка уязвимостей для оценки ущерба
  8. Проекты по развитию существующих продуктов Критичность Распространение на рынке Критичность сценариев Пилотные и исследовательские проекты Новые продукты «Агрессивность» среды Модель угроз/нарушителя Статистика инцидентов Подверженность атакам на распространённые заимствованные компоненты
  9. Проекты по развитию существующих продуктов Критичность Распространение в организации Критичность сценариев «Агрессивность» среды Подверженность атакам на распространённые заимствованные компоненты Возможность доступа для анализа Компактность системы Скорость изменения Новые продукты Пилотные и исследовательские проекты Все проекты со значимыми угрозами
  10. Cybersecurity Security Standards Help Stop Heartbleed May 7, 2014Software Assurance: Post by Drew Buttner   PRINT The Heartbleed bug (CVE-2014-0160) is a critical vulnerability that first came to the attention of the public in early April and has been making headlines ever since. The vulnerability exists in certain versions of OpenSSL where it enables remote attackers to obtain sensitive information, such as passwords and encryption keys. Many popular websites have been affected or are at risk, which in turn, puts countless users and consumers at risk. Cybersecurity experts have mounted an aggressive and multi-faceted global response to Heartbleed, and security automation standards have played an important role in this effort. These standards were created to categorize and share information about system vulnerabilities and attacks to help the security community communicate consistently. Having a common language helps in understanding these issues and determining appropriate mitigation strategies. Effective communication about bugs also helps developers prevent them from reappearing in other applications. Specifically, these three security automation standards have been particularly helpful in dealing with Heartbleed: Common Vulnerabilities and Exposures (CVE®) provides unique identifiers for known information security vulnerabilities. CVE enables the fast, efficient, and effective correlation and sharing of information related to critical and time sensitive vulnerability. Common Weakness Enumeration (CWE™) provides an index of different types of software code weaknesses and serves as an information repository for the types of security problems found in a software application’s architecture, design, code, and setup. CWE helps developers prevent these mistakes from being repeated. Common Attack Pattern Enumeration and Classification (CAPEC™) is a publicly available catalogue of common attack patterns, along with a classification taxonomy that identifies relationships among attack patterns. An attack pattern is an abstraction mechanism for describing how an attack is executed. Many successful attacks are conducted in multiple, discrete, identifiable steps.  CVE and Heartbleed The CVE Identifier CVE-2014-0160 was released on April 7, 2014—the same day the Heartbleed bug was made public.  The existence of this identifier has enabled the worldwide community to converse and share information about this bug at an astonishingly rapid pace. The CVE Identifier (ID) quickly became so ubiquitous (with more than 100,000 lookups in the first few days alone) that simply entering its name into any search engine resulted in thousands of hits and a range of useful information including the official OpenSSL Security Advisory, major application vendors, details from industry experts, and guidance from security organizations. All of these search results underscores the main purpose of CVE:  to allow people to correlate information. For example, using the CVE identifier in a search engine could lead system administrators to the blog post at Fox-It with information on how to test for the Heartbleed vulnerability and what to do if it they find it. The CVE identifier could also further help system administrators ensure that they are using the appropriate security tools and vendor patches to address the issue. Without CVE, there would likely be a surfeit of proprietary and non-standard names—such as Heartbleed, Heartbeat, and SOL15159—making it difficult to track down critical information in a timely manner. For example, the official OpenSSL Security Advisory doesn't even mention the term “Heartbleed.” CWE and Heartbleed The Heartbleed bug exists because of two separate mistakes in the code. The first is an inconsistency between the stated length of the message body and its actual length. 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 and both provide information about the respective problem—how to detect it, why it occurs, how to fix it, and how to prevent it from happening again. In the case of Heartbleed, developers could use CWE to quickly determine if they have the types of code analysis tools needed to ferret out these types of mistakes. Many tools can check for instances of CWE-125. CWE also helps developers know why Heartbleed occurred and how to avoid this type of mistake in future development. Without CWE, developers would be forced to perform hours of research to understand the root of the issue and how to correct it in their code. If you don't want your software to have the same issue as Heartbleed, ask your vendors about these weaknesses and educate your developers about CWE-130 and CWE-125. CAPEC and Heartbleed To prevent future attacks, security professionals need to know how an attacker thinks and operates. CAPEC helps expose the attacker mindset by shedding light on how a particular vulnerability has been exploited to launch an attack. Without CAPEC, organizations are likely to be stuck in a reactionary mode, addressing known vulnerabilities, while being blind-sided when the next "Heartbleed" arrives. Software designers, testers, and assessment teams can use CAPEC to sleuth out the next piece of software that might be similarly susceptible and eliminate it as a target. They can also look for the underlying weaknesses that make such attacks possible. CAPEC-540: Overread Buffersdefines the general pattern commonly used by an attacker including how the attack is crafted, its potential severity and consequences, as well as possible solutions and mitigating factors. CAPEC continually adds new attack patterns, such as the specific pattern used in Heartbleed, so be sure to visit the website for updates. Future Heartbleeds Security automation efforts such as CVE, CWE, and CAPEC can help reduce the possibility of similar severe vulnerabilities such as Heartbleed in the future. But it is incumbent upon developers and other security professionals to actively leverage resources such as these to be better prepared for the next Heartbleed. About Drew Buttner Drew Buttner leads a software assurance group at MITRE specializing in secure code review. He has worked on improving application security for both MITRE and its customers since joining the organization in 2001. An expert in the field of source code weaknesses, Drew is also involved in a number of research efforts related to secure software development and