October 22, 2019

Поиск союзников

Как обычно происходит взаимодействие ИБ и разработки?

"Мы тут провели пентест, вот критичные уязвимости, исправляйте, а то хрен вам а не релиз"

или

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

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

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

  1. В каждой команде разработки назначается лидер по безопасности. Это может быть самый толковый разработчик, или самый ленивый, или самый странный... главное, что бы он понимал, как работает приложение и мог расставить приоритеты и оценить угрозы.
  2. После анализа кода и выявления уязвимостей они попадают к лиду по ИБ, он проводит их оценку, отсеивает фолспозитивы и выделяет наиболее критичные.
  3. PM назначает разработчиков ответственных за устранение уязвимостей.
  4. Разработчик исправляет ошибки, повторное сканирование подтверждает корректность исправления.
  5. Ответственный специалист ИБ отслеживает прогресс исправлений.
Зачем тут столько стрелочек хз...

Таким образом, вокруг процесса разработки создаётся комьюнити любителей безопасности, их надо обучать, поддерживать, мотивировать.

Тогда ИБ остаётся подпитывать культуру DevSecOps, организовывать тренинги, учения, смотреть на графики исправлений и радоваться прогрессу...

Ну и, конечно, иногда истерично бегать с криками "Всё пропало..." при обнаружении во время пентест критичной уязвимости. Но, при сдвиге контролей ближе к разработчику, таких ситуаций будет все меньше, а Time2market все короче, авторитет ИБ все выше, а безопасности все больше.