Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
>
>
>
Secure Software Development Lifecycle (…

Secure Software Development Lifecycle (SSDLC)

20 Мар 2024

В классическом жизненном цикле программного обеспечения (SDLC) не предусмотрен анализ безопасности разрабатываемого продукта. В результате о безопасности начинают задумываться только на этапе тестирования или уже после релиза. Это значительно увеличивает стоимость обнаружения и устранения уязвимостей. Для исправления данного упущения была разработана расширенная версия SDLC — SSDLC.

Этапы Secure SDLC

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

Сбор и анализ требований

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

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

Планирование и анализ рисков

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

Дизайн/Проектирование

Проектирование системы выполняется с учётом модели угроз, составленной на предыдущем этапе.

Разработка

На этом этапе разработчики уделяют значительное внимание качеству кода с точки зрения безопасности. Для этого они:

  • руководствуются перечнями уязвимостей ПО, такими как CWE и OWASP Top 10;
  • используют решения для статического тестирования безопасности приложений (SAST);
  • анализируют зависимости на наличие уязвимостей (SCA) с помощью инструментов анализа состава ПО;
  • проводят дополнительные обзоры кода с целью обнаружения пропущенных дефектов безопасности и т.д.

Примечание. Статический анализатор кода PVS-Studio способен находить в коде не только обычные ошибки, но и уязвимости безопасности, выполняя роль как SCA-решения, так и SAST-решения.

Тестирование

На данном этапе внедряются дополнительные виды тестирования, такие как:

  • тестирование на проникновение (penetration testing);
  • тестирование путём имитации хакерских атак;
  • тестирование отказоустойчивости (fuzz testing — тестирование путём ввода случайных или заведомо неверных данных с целью вызвать сбой системы).

Развёртывание

Непосредственно перед развёртыванием выполняется оценка уровня безопасности и аудит безопасности ПО.

Поддержка

Даже если ответственно подходить к безопасности на предыдущих этапах, часть уязвимостей всё равно может ускользнуть от вашего внимания и попасть в релиз. Кроме того, уже после выпуска ранее неизвестные уязвимости могут обнаружиться не только в вашем коде, но и в коде зависимостей вашего ПО. Такие уязвимости называются "уязвимостями нулевого дня". Поэтому необходимо продолжать отслеживать и оперативно устранять новые уязвимости на протяжении всего периода поддержки ПО.

Популярные статьи по теме


Комментарии (0)

Следующие комментарии next comments
close comment form
close form

Заполните форму в два простых шага ниже:

Ваши контактные данные:

Шаг 1
Поздравляем! У вас есть промокод!

Тип желаемой лицензии:

Шаг 2
Team license
Enterprise license
** Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности
close form
Запросите информацию о ценах
Новая лицензия
Продление лицензии
--Выберите валюту--
USD
EUR
RUB
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Бесплатная лицензия PVS‑Studio для специалистов Microsoft MVP
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

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

close form
Мне интересно попробовать плагин на:
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
check circle
Ваше сообщение отправлено.

Мы ответим вам на


Если вы так и не получили ответ, пожалуйста, проверьте, отфильтровано ли письмо в одну из следующих стандартных папок:

  • Промоакции
  • Оповещения
  • Спам