Gitleaks и секреты, которые помнит Git (Рубрика #Software)
Рюкзак и кружка. Зак Райс вспоминает, как получил такой фидбэк от австралийской консалтинговой фирмы ещё до выхода Gitleaks 1.0. К подаркам прилагалось письмо: ребята уже прогоняли через его сканер сотни гигабайт репозиториев. А начиналось всё в 2018 году с экспериментов с Kali Linux после работы и желания выучить Go.
В десятиминутной документалке CultRepo Райс рассказывает, как из этого вырос инструмент, который дошёл до пайплайнов GitLab. Самое интересное в этой истории случилось, когда один из контрибьюторов сказал Райсу, что Gitleaks делает слишком много. Райс убрал часть возможностей и сосредоточился на одной задаче: искать секреты локально, без сетевых запросов.
Зачем вообще нужен такой сканер? Допустим, вы закоммитили рабочий API-ключ, заметили это и удалили строку следующим коммитом. Открываете файл — всё чисто. Открываете предыдущий коммит — ключ на месте. Gitleaks в режиме git читает патчи из git log -p и ищет в них строки, похожие на токены, пароли и приватные ключи. Для старого репозитория можно прогнать историю, а для новых изменений поставить проверку перед коммитом или в CI. Утёкший ключ при этом всё равно нужно отозвать.
Кстати, у истории есть продолжение. В марте 2026 года Райс представил Betterleaks. По его словам, к тому моменту у него уже не было полного контроля над репозиторием и названием Gitleaks. В README Gitleaks теперь обещают только исправления безопасности. Aikido Security поддерживает и новый проект, и сам фильм.
У Betterleaks поиск выходит за пределы файлов и истории Git. Сканер умеет сам читать комментарии к pull request на GitHub, логи CI в GitLab и объекты в S3. Правила можно точнее подстроить под репозиторий, например отфильтровать находки по пути к файлу и автору коммита. А если нужно понять, действует ли найденный токен, для поддерживаемых типов можно отдельно включить проверку у провайдера.
Если Gitleaks уже ловит нужные типы ключей в коммитах и не тормозит сборку, я бы его оставил. Betterleaks имеет смысл попробовать, когда секреты могут утекать ещё и в комментарии или логи, либо когда команда тратит время на ручную проверку, жив ли каждый токен. Для начала можно прогнать оба сканера на одном диапазоне коммитов и сравнить полезные находки, ложные срабатывания и время прогона.
На 6 ноября 2026 года стабильная ветка Betterleaks — 1.x, а 2.0 ещё в предрелизе. Если сканер уже встроен в CI, стоит проверить флаги, правила и формат отчёта перед переключением. Например, в 2.0 флаг -v включает сетевую проверку токенов. В Gitleaks и Betterleaks 1.x тот же флаг просто делает вывод подробнее.
Если есть только пара минут, можно начать с 5:27. Там Райс рассказывает, как сообщество помогло ему решить, какие возможности пора выкинуть из проекта, который уже прижился у пользователей.
#Software #Security #DevSecOps #DevTools #OpenSource