Внедрение практик безопасного кодирования

Руслан Морозов

Разработчик в Лаборатории Касперского. Тружусь в команде, разрабатывающей решение по обеспечению кибербезопасности на обьектах критической инфраструкты - Kaspersky Industrial CyberSecurity. Отвечаю за внедрение практик безопасного кодирования, организацию модульного и fuzzing тестирования.


С++ - это мощнейший и очень динамически развивающийся язык программирования, позволяющий строить высокопроизводительные системы любой сложности. Один из главных принципов языка - "You don't pay for what you don't use". Такой подход возглагает большую отвественность на программиста в вопросах организации доступа к системным ресурсам. Из-за большого доверия, оказываемого компилятором программисту, любые ошибки в коде могут приводить к появлению уязвимостей в программной системе.

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

  • примеры типичных ошибок кода, приводящих к уязвимостям
  • существующие стандарты безопасного кодирования и как их внедрять
  • тандем GCC + Clang в контексте поиска проблемного кода и генерации более безопасного кода
  • использование санитайзеров
  • тестовое покрытие кода
  • статические анализаторы и почему их должно быть много
  • регулярное fuzzing тестирование

Gold спонсоры

Silver спонсоры

Community спонсоры