Ваша задача — создать безопасный пайплайн для open-source проекта. Он должен включать в себя статический анализатор, динамический анализатор, чекеры безопасности, Security Gateway и документацию процесса.
Вы должны сами выбрать проект, для которого будет выстроен пайплайн. Платформа для организации CI/CD тоже на ваш выбор. Рекомендуем взять за основу GitLab CI/CD, GitHub Actions, CircleCI. Сервер для разворачивания даёт дипломный руководитель или методист в виде VPS.
-
Требования к проекту. Проект должен быть с открытым исходным кодом, представлять из себя веб-сервис или сайт с функционалом, использованием баз данных или кеша. Например, можно взять за основу Defect Dojo или CMS, Netlify-CMS.
-
Требования к покрытию проекта тестами безопасности. Проект должен проверяться на наличие уязвимостей в коде. Ни один язык программирования или фреймворк не должны быть пропущены для конкретного проекта. Весь процесс должен быть задокументирован и описан с аналитикой выбора инструментов и зон роста.
Критерии достижения:
- Настроенный пайплайн по сборке и доставке программного обеспечения.
- Использование облачных сервисов для раскатки.
- Хорошо задокументированный процесс.
Критерии достижения:
- Покрытие кода проверками.
- Успешные проверки во время сборки.
- Выгрузка результатов в CI или систему менеджмента уязвимостей.
Критерии достижения:
- Покрытие сервиса проверками.
- Успешные сканы по всем имеющимся методам.
- Выгрузка результатов в CI или систему менеджмента уязвимостей.
Критерии достижения:
- Проверка репозиториев на секреты.
- Проверка конфигурации или образов.
Критерии достижения:
- Имеется триггер на остановку релиза при наличии уязвимостей.
- Сделаны дополнительные триггеры - оставление комментариев в MR, выгрузка рекомендаций по исправлению уязвимостей.