Betterleaks: поиск утечек секретов в коде и конфигурациях

Betterleaks: поиск утечек секретов в коде и конфигурациях

Betterleaks — это инструмент для поиска утечек секретов в коде и конфигурациях. Он позволяет находить потенциальные уязвимости, связанные с конфиденциальной информацией, и делает это быстрее и точнее, чем его предшественник Gitleaks.

Проект отличается тем, что предлагает продвинутые функции валидации обнаруженных секретов, позволяя проверять, активны ли они, с помощью асинхронных HTTP-запросов. Удобная фильтрация с использованием правил на базе Expr и BPE-токенизации минимизирует ложные срабатывания. Кроме того, поддерживается множество источников, включая GitHub, GitLab и S3, с возможностью расширения списка.

Проект написан на Go, его можно запустить через командную строку. Обрати внимание, что он может находиться на стадии активной разработки, и лучше проверять совместимость с различными средами.

Betterleaks — это конфигурируемый, быстрый и глубокий сканер для поиска утечек секретов. Он поддерживается разработчиками Gitleaks, включая его оригинального автора. Проект имеет различные возможности для анализа, валидации и обработки данных, а также удобную интеграцию с несколькими источниками.

Ключевые возможности

  • Простая приоритизация: ранжирование по уровню доверия, статусу валидации и серьезности анализируемых данных.
  • Валидация секретов: проверка активности обнаруженных секретов путем асинхронных HTTP-запросов.
  • Анализ секретов: обогащение действительных учетных данных информацией о идентичности и возможности доступа.
  • Отзыв секретов: опциональная возможность отзыва действительных секретов.
  • Фильтрация на основе Expr: написание контекстных фильтров для уменьшения числа ложных срабатываний.
  • Поддержка новых источников: возможность работы с GitHub, GitLab, Hugging Face, S3 и др.
  • Контейнерные образы: поддержка сканирования всех платформ и исторических слоев.

Установка

Находясь на ветке `main`, проект находится в разработке версии 2.0. Для установки версии 1.0 перейди на ветку [`v1.x`](https://github.com/betterleaks/betterleaks/tree/v1.x). Вот несколько способов установки:

# Установка через пакетные менеджеры
brew install betterleaks
brew install --cask betterleaks/tap/betterleaks

# Для Fedora Linux
sudo dnf install betterleaks

# Установка через Docker
docker pull ghcr.io/betterleaks/betterleaks:v2

# Установка через Go
go install github.com/betterleaks/betterleaks/v2@latest

# Скачивание из исходников
git clone https://github.com/betterleaks/betterleaks
cd betterleaks
make build

Обрати внимание, что стабильные релизы версии 2 будут обновлять cask и Docker, связанные с `:v2` и `:latest` тегами. Для установки версии 1 вместе с версией 2, используй brew install --cask betterleaks/tap/betterleaks@1 или тег Docker `:v1`.

Использование

По умолчанию Betterleaks сканирует без запросов к поставщикам учетных данных. Используй параметры -v / --validate для проверки секретов или -a / --analyze для анализа идентичности и прав. Вот основные команды:

# Сканирование файловой системы
betterleaks /path/to/target

# Проверка обнаруженных учетных данных
betterleaks /path/to/target -v

# Сканирование git-репозитория
betterleaks git /path/to/repo

# Сканирование GitHub
betterleaks github https://github.com/betterleaks

Для получения детальной информации, настройки фильтров и валидации ознакомься с полным описанием в документации.

Ограничения и особенности

Поскольку проект еще находится в активной разработке, могут быть ограничения в функционале, особенно в части интеграции с новыми источниками. Кроме того, в процессе миграции с версии 1 на версию 2 необходимо внимательно следовать руководству по миграции, чтобы избежать потери функциональности и совместимости с конфигурациями.

Для настройки правил и фильтров Betterleaks использует expressive конфигурацию на языке Expr, что позволяет детально задавать условия проверки и обработки данных.

Интеграция с Go SDK

Ты можешь встроить Betterleaks в свои проекты как библиотеку на Go. Это позволяет использовать сканеры и анализаторы в своих приложениях без лишнего вывода в консоль.

go get github.com/betterleaks/betterleaks/v2

Таким образом, Betterleaks предоставляет мощные инструменты для поиска и анализа утечек секретов, оставаясь при этом достаточно гибким для интеграции в существующие процессы разработки и CI/CD.

Открыть на GitHub: betterleaks/betterleaks →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте