Алексей Рыбалко
Компания: Kaspersky
Современное ПО представляет собой взаимодействие множества компонентов, разделенных на микросервисы. Вместе эти компоненты создают поверхность для атак, потенциал для нецелевого использования ПО. Для защиты от атак необходимо сформировать понимание, что входит в состав ПО и что есть целевое использование такого ПО.
На помощь для решения задачи приходит инструментарий профилирования, подписи и применения созданных профилей для защиты ПО от подмены и иных воздействий.
Процесс профилирования ПО:
1. Разработчики и DevOps собирают состав ПО (Software Bill Of Materials, SBOM) и описывают взаимодействие компонент внутри контейнера (процессов execv()
) и между микросервисами (сетевые доступы).
2. Сделать это можно и нужно автоматизированно с помощью сканера в конвейере CI/CD, после чего сохранить по стандарту CycloneDX или SPDX.
3. Подпись результата сборки (с помощью Notary или Cosign).
4. Разрешаем запуск только подписанного содержимого.
5. Аудит и жесткое применение правил.
Защита ПО как итог профилирования:
execv()
.Компания: Kaspersky
Компания: Kaspersky