
trufflehog v3.99.3
Находите, проверяйте и анализируйте утекшие учетные данные
TruffleHog
Находит утёкшие учётные данные.
🔎 Сейчас сканирует
...и многое другое
Чтобы узнать больше о TruffleHog, его возможностях и функциях, посетите нашу страницу продукта.
🌐 TruffleHog Enterprise
Хотите непрерывно отслеживать Git, Jira, Slack, Confluence, Microsoft Teams, Sharepoint (и не только) на предмет учётных данных? У нас есть корпоративный продукт, который может помочь! Узнайте больше на https://trufflesecurity.com/trufflehog-enterprise.
Мы направляем выручку от корпоративного продукта на финансирование новых классных open source проектов, которые приносят пользу всему сообществу.
Что такое TruffleHog 🐽
TruffleHog — самый мощный инструмент для обнаружения, классификации, валидации и анализа секретов. В этом контексте секрет — это учётные данные, которые машина использует для аутентификации на другой машине. Сюда входят API-ключи, пароли к базам данных, закрытые ключи шифрования и многое другое.
Обнаружение 🔍
TruffleHog умеет искать секреты во множестве мест, включая Git, чаты, вики, логи, платформы тестирования API, объектные хранилища, файловые системы и не только.
Классификация 📁
TruffleHog классифицирует более 800 типов секретов, сопоставляя их с конкретной идентичностью, которой они принадлежат. Это секрет AWS? Секрет Stripe? Секрет Cloudflare? Пароль Postgres? Закрытый ключ SSL? Иногда это трудно определить на глаз, поэтому TruffleHog классифицирует всё, что находит.
Валидация ✅
Для каждого секрета, который TruffleHog может классифицировать, он также может выполнить вход, чтобы подтвердить, действует ли этот секрет. Этот шаг критически важен, чтобы понять, есть ли активная реальная угроза.
Анализ 🔬
Для примерно 20 наиболее часто утекающих типов учётных данных вместо отправки одного запроса для проверки возможности входа TruffleHog может отправлять множество запросов, чтобы узнать всё, что можно, о секрете. Кто его создал? К каким ресурсам он даёт доступ? Какие у него права на эти ресурсы?
📢 Присоединяйтесь к нашему сообществу
Есть вопросы? Отзывы? Заходите в Slack или Discord и общайтесь с нами.
Присоединяйтесь к нашему Slack-сообществу
Присоединяйтесь к Secret Scanning Discord
📺 Демо
docker run --rm -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --org=trufflesecurity
💾 Установка
Для вас доступно несколько вариантов:
Пользователи MacOS
brew install trufflehog
Docker:
Убедитесь, что Docker engine запущен, прежде чем выполнять следующие команды:
Unix
docker run --rm -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --repo https://github.com/trufflesecurity/test_keys
Командная строка Windows
docker run --rm -it -v "%cd:/=\%:/pwd" trufflesecurity/trufflehog:latest github --repo https://github.com/trufflesecurity/test_keys
Windows PowerShell
docker run --rm -it -v "${PWD}:/pwd" trufflesecurity/trufflehog github --repo https://github.com/trufflesecurity/test_keys
Mac на M1 и M2
docker run --platform linux/arm64 --rm -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --repo https://github.com/trufflesecurity/test_keys
Бинарные релизы
Download and unpack from https://github.com/trufflesecurity/trufflehog/releases
Сборка из исходного кода
git clone https://github.com/trufflesecurity/trufflehog.git
cd trufflehog; go install
Использование скрипта установки
curl -sSfL https://raw.githubusercontent.com/trufflesecurity/trufflehog/main/scripts/install.sh | sh -s -- -b /usr/local/bin
Использование скрипта установки, проверка подписи контрольной суммы (требуется установленный cosign)
curl -sSfL https://raw.githubusercontent.com/trufflesecurity/trufflehog/main/scripts/install.sh | sh -s -- -v -b /usr/local/bin
Использование скрипта установки для установки конкретной версии
curl -sSfL https://raw.githubusercontent.com/trufflesecurity/trufflehog/main/scripts/install.sh | sh -s -- -b /usr/local/bin <ReleaseTag like v3.56.0>
🔐 Проверка артефактов
Контрольные суммы применяются ко всем артефактам, а полученный файл контрольных сумм подписывается с помощью cosign.
Для проверки подписи вам потребуется следующий инструмент:
Шаги проверки следующие:
-
Скачайте нужные вам файлы артефактов, а также следующие файлы со страницы releases.
- trufflehog_{version}_checksums.txt
- trufflehog_{version}_checksums.txt.pem
- trufflehog_{version}_checksums.txt.sig
-
Проверьте подпись:
cosign verify-blob <path to trufflehog_{version}_checksums.txt> \ --certificate <path to trufflehog_{version}_checksums.txt.pem> \ --signature <path to trufflehog_{version}_checksums.txt.sig> \ --certificate-identity-regexp 'https://github\.com/trufflesecurity/trufflehog/\.github/workflows/.+' \ --certificate-oidc-issuer "https://token.actions.githubusercontent.com" -
После подтверждения действительности подписи можно перейти к проверке соответствия сумм SHA256 загруженному артефакту:
sha256sum --ignore-missing -c trufflehog_{version}_checksums.txt
Замените {version} на версию загруженных файлов
Кроме того, если вы используете скрипт установки, передайте опцию -v для выполнения проверки подписи.
Для этого требуется, чтобы бинарный файл Cosign был установлен до запуска скрипта установки.
🚀 Быстрый старт
1: Сканирование репозитория только на проверенные секреты
Команда:
trufflehog git https://github.com/trufflesecurity/test_keys --results=verified
Ожидаемый результат:
🐷🔑🐷 TruffleHog. Unearth your secrets. 🐷🔑🐷
Found verified result 🐷🔑
Detector Type: AWS
Decoder Type: PLAIN
Raw result: AKIAYVP4CIPPERUVIFXG
Line: 4
Commit: fbc14303ffbf8fb1c2c1914e8dda7d0121633aca
File: keys
Email: counter <[email protected]>
Repository: https://github.com/trufflesecurity/test_keys
Timestamp: 2022-06-16 10:17:40 -0700 PDT
...
2: Сканирование организации GitHub только на предмет подтверждённых секретов
trufflehog github --org=trufflesecurity --results=verified
3: Сканирование организации GitHub с исключением архивных репозиториев
trufflehog github --org=trufflesecurity --exclude-archived
4: Сканирование репозитория GitHub только на наличие подтверждённых секретов и получение вывода в формате JSON
Команда: