Инвентаризируй это: строим автоматический DevSecOps для 40 тысяч репозиториев Безопасность
Окончил МИФИ по специальности «Информационная безопасность», общий опыт работы по специальности — более 8 лет. Работал в госструктуре, вендоре СЗИ, в настоящее время — руководитель группы развития инструментов в отделе DevSecOps департамента защиты приложений VK. Участвует в разработке внутренней платформы оркестрации SAST-сканирования.
Тезисы
VK развивает более 200 проектов — суммарно это более 40 тысяч репозиториев с кодом, который команды разработки хранят в разных системах контроля версий. Чтобы строить процессы безопасной разработки, инженерам ИБ нужно иметь под рукой актуальную информацию обо всех из них.
Для этого мы (департамент защиты приложений VK) своими силами разработали на Python инструмент, ежедневно осуществляющий обход всех систем контроля версий, укладываясь в rate-limit, и сохраняющий в БД информацию о репозиториях (и образах), хранящихся в них, чтобы мы могли быстро и эффективно искать уязвимый код, библиотеки и чувствительную информацию.
Расскажу, как выглядит процесс инвентаризации, что мы сохраняем в БД, как применять полученные данные для решения задач DevSecOps, даже если у вас далеко не 40 тысяч репозиториев, а также поделюсь исходным кодом наших наработок.