Аудит исходного кода
Ручной аудит исходного кода с поддержкой статического анализа: уязвимости, которые не видны снаружи.
Безопасность приложений
Проверка пути от коммита до рабочей среды: репозитории, конвейеры, раннеры, зависимости и артефакты сборки.
Инфраструктура и облако
У конвейера, который собирает и развёртывает ваше ПО, больше привилегий, чем у большинства администраторов. Он читает исходный код, хранит ключи подписи и облачные учётные данные и пишет в рабочую среду. При этом он собран из сторонних actions, плагинов и пакетов, которые меняются без предупреждения.
Мы проверяем этот путь так, как это сделал бы злоумышленник: что может участник с минимальными правами, до чего дотянется вредоносная зависимость или pull request и можно ли доказать, что развёрнутый артефакт — именно тот, который прошёл проверку.
01Объём
02Подход
Прослеживаем путь от коммита до рабочей среды и перечисляем системы, учётные записи и секреты на этом пути.
Репозитории, конвейеры и реестры проверяются по OWASP Top 10 CI/CD Security Risks и требованиям SLSA.
С позиций внешнего участника, внутреннего разработчика и скомпрометированной зависимости пытаемся добраться до секретов и изменить результат сборки. Работа ведётся на форках и тестовых проектах везде, где этого достаточно для доказательства.
Изменения упорядочены по путям атаки, которые они закрывают. К каждому прилагается конфигурация, которая его реализует.
03
04
05Стандарты
Наиболее критичные риски конвейеров сборки и доставки.
OWASP Foundation
Требования к целостности и происхождению артефактов сборки.
Open Source Security Foundation
Практики безопасной разработки, с которыми сопоставляются находки.
NIST
Оценка и вектор критичности каждой находки.
FIRST
Класс недостатка, лежащего в основе каждой находки.
The MITRE Corporation
06Вопросы
Мы запускаем безвредный доказательный код, который показывает, что было бы достижимо, — например, имя секрета, но не его значение. Рабочие конвейеры затрагиваются только там, где это разрешено правилами проведения работ; большинство путей доказывается в тестовом проекте с той же конфигурацией.
Провайдер защищает платформу. То, что вы на ней разместили, — ваше: права, триггеры, секреты и сторонние компоненты. Именно здесь атаки на конвейеры достигают цели.
Мы проверяем, что перечень, который формирует ваша сборка, полон и соответствует артефакту. Его формирование и ведение — часть вашей сборки; мы рекомендуем, как это устроить.
08Заявка
Номер заявки
Сохраните номер: мы называем его во всей дальнейшей переписке с вами.
В первом ответе мы никогда не просим оплату, пароли или удалённый доступ.