Да-да, обещание сдержано! Вот примерное содержание от
@pavel_filonov Если поговорку "With great power comes a great responsibility" перевести на язык С++,
то получится что-то в духе "Если для оптимизации программ вы используете низкоуровневый доступ к памяти, то вы же и отвечаете за контроль этого доступа".
Непонимание этой ответственности - причина большого набора известных уязвимостей в программном обеспечении.
Когда я читал одноименной доклад на конференции CoreHard в 2019 году, то получил много позитивных отзывов.
3 из этих отзывов звучали так - а можно про эту тему, но развернуто и в формате мастер-класса. Так и родилась идея данного мероприятия
Сразу хочу предупредить - моя цель не научить слушателей взламывать программы. И примеры с уязвимостями нужны только чтобы показать образ мысли и инструментарий, который используется на темной стороне.
Главная цель - продемонстрировать на конкретных примерах и задачах из каких элементов состоит Secure Development Lifecycle (SDL) и с помощью каких инструментов его можно реализовать.
Мы пройдемся по следующим элементам SDL:
* составление модели угроз;
* безопасное кодирование и статический анализ;
* верификация через динамический анализ и fuzzing;
* контроль уязвимостей во внешних зависимостях;
* hardening приложения и сборочного конвейера;
* реагирование на найденные уязвимости.