Секция безопасной разработки на форуме PHDays 8

n1lkt46dtn-x_-r1vig77vohigc.png

Несколько лет подряд сообщество безопасной разработки Positive Development User Group организует на площадке международного форума PHDays свои мероприятия. В прошлом году мы посвятили обсуждению разработки защищенных приложений один день, а в этом — устраиваем масштабный двухдневный марафон докладов с круглым столом.

Попасть на секцию можно бесплатно, но число мест ограничено, поэтому необходимо зарегистрироваться. Если не сможете присутствовать лично, не беда — после форума мы опубликуем презентации докладов и видео в открытом доступе (в том числе на Хабре).

Полная программа секции


15 мая


10:40 — 11:00 | Открытие


Владимир Кочетков, Positive Technologies

11:00 — 12:00 | Можно ли обобщить анализатор исходных кодов?


Иван Кочуркин, Positive Technologies

В докладе рассматриваются различные типы анализаторов кода, принимающие на вход регулярные выражения, токены, деревья разбора, графы потоков данных и инструкции символьного выполнения.

Докладчик опишет проблемы, возникающие при обобщении каждого типа анализатора на разные языки программирования, и предложит варианты решений. Также он продемонстрирует уязвимости и недостатки, которые можно найти с помощью каждого подхода (например, goto fail), опишет возможности открытого анализатора исходных кодов PT.PM, способы его использования и перспективы развития.

12:00 — 13:00 | Мифы и легенды безопасной разработки


Юрий Шабалин, Swordfish Security

Основываясь на опыте внедрения процессов Application Security как внутри компании, так и в качестве внешнего консультанта, автор доклада расскажет об основных мифах и стереотипах, которые преследуют это направление, о главных ошибках при планировании и старте, способных испортить и усложнить путь к совершенству.

С опорой на эти мифы, легенды и ошибки докладчик объяснит, как подойти к выстраиванию процессов, что нужно учитывать, как грамотно оценить свои силы и правильно запустить процесс безопасной разработки. В качестве основных примеров ошибок и способов их преодоления будут представлены организационные меры, технические средства (без указания вендоров), взаимодействие между разработкой и ИБ, awareness-программы, управление всем процессом, метрики эффективности.

13:00 — 14:00 | Защищенность целочисленных типов в C++


Игорь Собинов, эксперт по безопасности

Доклад посвящен вопросам обеспечения защищенности приложений на C++ от атак на переполнение целочисленных типов. Рассматриваются типовые кейсы возникновения уязвимостей, связанных с данным классом атак, возможные последствия их эксплуатации и способы защиты.

14:00 — 15:00 | Обнаружение уязвимостей в теории и на практике, или Почему не бывает идеального статического анализатора


Ярослав Александров, Александр Чернов и Екатерина Трошина, Solar Security

Сегодня сложно представить качественную разработку программного кода, отвечающего требованиям информационной безопасности, без привлечения статического анализа. Практика SDL требует проведения статического анализа с использованием инструментального средства на этапе разработки кода. В теории считается, что каждая из известных на сегодняшний день уязвимостей может быть идентифицирована в исходном коде, необходимо только подобрать качественный анализатор. На практике анализатор в качестве результата работы выдает многостраничные отчеты с ложными срабатываниями и, что еще хуже, пропущенными дефектами.

Несмотря на это, использовать качественный статический анализатор необходимо — он позволяет обнаруживать критические уязвимости, которые не удается обнаружить, используя другие методы анализа кода. Эффективное использование статического анализатора базируется на построении непрерывного процесса разработки с использованием этого инструмента и основано на организационной и технической составляющих. Но как построить такой процесс, учитывая все эти особенности?

В докладе будут рассмотрены основные принципы работы статического анализатора кода, будет дан сравнительный обзор методов и алгоритмов, лежащих в основе современных статических анализаторов. На конкретных примерах будет показано, как статический анализатор ищет уязвимости, и дан ответ на вопрос, почему не существует идеального статического анализатора, который работает быстро, не дает ложных срабатываний и не пропускает уязвимости. Мы расскажем, как встроить статический анализатор в процесс разработки так, чтобы она была эффективной с точки зрения ресурсов и давала качественные результаты.

15:00 — 16:00 | Идеальный статический анализ


Владимир Кочетков, Positive Technologies

Идеальный статанализ как инструмент не существует. Но существует ли идеальный статанализ как процесс? Каким должно быть распределение ролей в нем между человеком и инструментарием SAST? Каким должен быть инструментарий, чтобы максимально облегчить человеку решение задачи статанализа?

16:00 — 18:00 | Круглый стол: «SAST и его место в SDLC»


Модератор: Владимир Кочетков, Positive Technologies

Участники: Positive Technologies, SolidLab, Mail.ru, Solar Security, PVS-Studio, ИСП РАН


11:00 — 12:00 | LibProtection: 6 месяцев спустя


Владимир Кочетков, Positive Technologies

Докладчик расскажет об итогах публичного тестирования библиотеки, рассмотрит в деталях найденные байпассы и способы их устранения, а также представит планы по развитию библиотеки на текущий год.

12:00 — 13:00 | Основы безопасности алгоритмов консенсуса в блокчейне (доклад на английском языке)


Евангелос Дейрмендзоглу (Evangelos Deirmentzoglou), Positive Technologies

Алгоритмы консенсуса являются неотъемлемой частью любой блокчейн-платформы. Будь то Bitcoin, Ethereum или даже технология распределенного реестра без использования блокчейна (например, hashgraph), достижение консенсуса является обязательным этапом при выполнении транзакций. В ближайшем будущем мы станем свидетелями перехода от алгоритма Proof of Work к более продвинутым распределенным алгоритмам консенсуса.

В докладе будут освещены принципы работы таких алгоритмов консенсуса, как Proof of Work (доказательство выполнения работы), Proof of Stake (доказательство доли владения), Delegated Proof of Stake (делегированное подтверждение доли) и Proof of Authority (доказательство полномочий). При анализе различий этих алгоритмов будут рассмотрены наиболее распространенные атаки в отношении систем на базе этих технологий, такие как двойное расходование (Double-spending), атака 51%, атака с подкупом, атака Сивиллы, атака Nothing-At-Stake и другие.

13:00 — 14:00 | Предсказываем случайные числа в умных контрактах Ethereum


Арсений Реутов, Positive Technologies

Смарт-контракты применяются не только при первичном размещении токенов криптовалют. На языке Solidity реализованы различные лотереи, казино и карточные игры, доступные любому, кто использует блокчейн Ethereum. Автономность блокчейна ограничивает источники энтропии для генераторов случайных чисел (ГСЧ). Не существует и общей библиотеки, с помощью которой разработчики создавали бы безопасные ГСЧ. Именно по этой причине реализация собственного ГСЧ может создать немало проблем.

Далеко не всегда удается реализовать безопасный ГСЧ, что дает злоумышленникам возможность предсказывать результат и похищать значительные суммы денег. В докладе представлен анализ основанных на блокчейне смарт-контрактов для индустрии азартных игр. Автор доклада продемонстрирует реальные примеры неправильной реализации ГСЧ. Участники узнают, как выявить проблемы в ГСЧ и создать свой безопасный генератор с учетом ограничений блокчейна.

14:00 — 15:00 | Подводные камни параметризации и объектного подхода


Владимир Кочетков, Positive Technologies

Всегда ли использование средств параметризации и переход к объектной модели позволяют эффективно решать задачи обеспечения защищенности приложений? Какие риски влекут за собой эти подходы? Возможно ли появление уязвимостей в коде проекта при их использовании? Автор доклада ответит на эти вопросы, используя конкретные примеры и реальные кейсы.

15:00 — 16:00 | Method Hooking в Android


Александр Гузенко, Tinkoff

Автор доклада расскажет, что такое Method Hooking и Injector, и объяснит, каким образом, зная два этих понятия, применить их к Android и заставить чужое приложение делать то, что нужно вам.

16:00 — 17:00 | Как создать быстрый WAF. Построение высокопроизводительной системы анализа сетевого трафика


Михаил Бадин, Wallarm

В ходе доклада будут рассмотрены стадии обработки пакета в WAF, вопросы получения необходимой информации из запроса, оптимизация процессов токенизации, фильтрация на базе регулярных выражений и реализация поведенческого анализа в рамках постобработки трафика.

***


Любые свои вопросы, связанные с секцией или работой сообщества, присылайте на pdug@ptsecurity.com.

© Habrahabr.ru