Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
gitGraber — gitGraber: мониторинг GitHub для поиска конфиденциальных данных в реальном времени для различных онлайн-сервисов, таких как: Google, Amazon, Paypal, Github, Mailgun, Facebook, Twitter, Heroku, Stripe... | Kitploit
Инструменты/GitHubGitHub/hisxo/gitgraber
OSINT (Разведка открытых источников)Анализ уязвимостейСбор информацииОбнаружение Секретов
GitHubhisxo/gitgraber

gitGraber

gitGraber: мониторинг GitHub для поиска конфиденциальных данных в реальном времени для различных онлайн-сервисов, таких как: Google, Amazon, Paypal, Github, Mailgun, Facebook, Twitter, Heroku, Stripe...

Репозиторий
2.3k3564 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

gitgraberlogo

сделано на Python 3.x

О gitGraber

gitGraber — это инструмент, разработанный на Python3 для мониторинга GitHub, поиска и обнаружения конфиденциальных данных в реальном времени для различных онлайн-сервисов, таких как: Google, Amazon (AWS), Paypal, Github, Mailgun, Facebook, Twitter, Heroku, Stripe, Twilio...

demo

Как это работает?

Важно понимать, что gitGraber не предназначен для проверки истории репозиториев — многие инструменты уже отлично справляются с этим. gitGraber изначально разрабатывался для мониторинга и анализа последних проиндексированных файлов на GitHub. Если gitGraber находит что-то интересное, вы получите уведомление в вашем канале Slack. Вы также можете использовать его для получения результатов непосредственно в командной строке.

Исходя из нашего опыта, мы убеждены, что утечки происходят не только от самих организаций, но и от поставщиков услуг и сотрудников, у которых не обязательно есть «профиль», указывающий на то, что они работают в конкретной организации.

Regex должны быть максимально точными. Иногда могут быть ложные срабатывания; не стесняйтесь вносить вклад в улучшение разведки и добавление новых regex для обнаружения шаблонов.

Мы предпочитаем уменьшать количество ложных срабатываний, а не отправлять уведомления на каждый «стандартный» ключ API, который может быть найден gitGraber, но не имеет значения для вашего мониторинга.

F.A.Q

Почему я вижу только «Github query» и «Status code : 200» в выводе?

gitGraber отображает некоторые вещи непосредственно в CLI: запрос GitHub, обнаружение злоупотреблений по коду состояния (200 или 403)... и если вы не видите что-то вроде [+] POSSIBLE FOO TOKEN FOUND, это просто означает, что gitGraber не нашел секретных токенов для вашего заданного ключевого слова.

Об ошибке «Abuse detection reached for token»

Это сообщение появляется, когда GitHub обнаруживает большое количество запросов от вашего собственного токена GitHub. Не волнуйтесь, gitGraber может справиться с этим и попытается использовать другой токен, определенный в файле config.py. Примечание: это временное ограничение, и вам не нужно создавать новый токен.

Буду ли я получать те же токены для одного и того же репозитория при каждом запуске gitGraber?

Нет, чтобы избежать этого, gitGraber сохраняет URL-адреса всех репозиториев в файле с именем rawGitUrls.txt. Если репозиторий уже был просканирован gitGraber и найден ключ API, вы не получите уведомление.

Как задать шаблон для черного списка для конкретного токена?

Вам нужно отредактировать файл tokens.py и добавить шаблон в качестве аргумента-списка при инициализации токена. Например, чтобы добавить шаблон XXXX к токену MAILCHIMP, строка tokensList.append(Token('MAILCHIMP', '\W(?:[a-f0-9]{32}(-us[0-9]{1,2}))\W')) становится tokensList.append(Token('MAILCHIMP', '\W(?:[a-f0-9]{32}(-us[0-9]{1,2}))\W', ['XXXX'])).

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

root@kitploit:~
usage: gitGraber.py [-h] [-k KEYWORDSFILE] [-q QUERY] [-s] [-w WORDLIST]

optional arguments:
  -h, --help                              Show this help message and exit
  -k KEYWORDSFILE, --keyword KEYWORDSFILE Specify a keywords file (-k keywordsfile.txt)
  -q QUERY, --query QUERY                 Specify your github query (-q "apikey")
  -m, --monitor                           Enable monitoring of your search query by creating cron job [Every 30 mins]
  -d, --discord                           Enable discord notifications
  -s, --slack                             Enable slack notifications
  -tg, --telegram                         Enable telegram notifications
  -w WORDLIST, --wordlist WORDLIST        Create a wordlist that fills dynamically with discovered filenames on GitHub
  -l LIMIT_DAYS, --limit LIMIT_DAYS       Limit the results to commits less than N days old

Например, для поиска определенного слова в github в сочетании с каждым словом из файла keywordsfile.txt и вывода результата в Slack:

root@kitploit:~
python3 gitGraber.py -k keywordsfile.txt -q YOURWORD -s

Можно искать, например, конкретное доменное имя, но оно должно быть в двойных кавычках:

root@kitploit:~
python3 gitGraber.py -k keywordsfile.txt -q \"yahoo.com\" -s

Если вы хотите создать собственный список слов на основе файлов, найденных на Github, чтобы затем использовать его с вашим любимым инструментом фаззинга, добавьте аргумент -w:

root@kitploit:~
python3 gitGraber.py -k keywordsfile.txt -q \"yahoo.com\" -s -w mysuperwordlist.txt

Если вы хотите отслеживать свой поисковый запрос каждые 30 минут, вы можете использовать флаг -m, который указывает gitGraber создать задачу cron на основе вашего запроса:

root@kitploit:~
python3 gitGraber.py -k keywordsfile.txt -q \"yahoo.com\" -s -m

Вышеуказанное будет искать секреты каждые 30 минут по вашему поисковому запросу и отправлять вам уведомление в Slack при обнаружении совпадений.

Зависимости

gitGraber требует некоторые зависимости; чтобы установить их в вашем окружении:

pip3 install -r requirements.txt

Конфигурация

Перед запуском gitGraber необходимо изменить файл конфигурации config.py:

  • Добавьте свои собственные токены Github (Personal access tokens): GITHUB_TOKENS = ['yourToken1Here','yourToken2Here']
  • Добавьте свой собственный вебхук Discord: DISCORD_WEBHOOKURL = 'https://discordapp.com/api/webhooks/7XXXX/XXXXXX'
  • Добавьте свой собственный вебхук Slack: SLACK_WEBHOOKURL = 'https://hooks.slack.com/services/TXXXX/BXXXX/XXXXXXX'
  • Добавьте свою собственную конфигурацию Telegram: TELEGRAM_CONFIG = { "token": "XXXXX:xXXXXXXXXXXXXX", "chat_id": -99999999 }

Чтобы запустить gitGraber: python3 gitGraber.py -k wordlists/keywords.txt -q "uber" -s

Какие ключи API и сервисы поддерживаются? (Последнее обновление: 12 сентября 2019 года)

В настоящее время gitGraber поддерживает 31 различный токен. Все эти модели обнаружения (regex) хранятся в файле tokens.py:

  • AWS
  • FACEBOOK
  • GITHUB_CLIENT_SECRET
  • GOOGLE_SECRET
  • GOOGLE_URL
  • GOOGLE_FIREBASE_OR_MAPS
  • GOOGLE_OAUTH_ACCESS_TOKEN
  • HEROKU
  • JSON_WEB_TOKEN
  • MAILCHIMP
  • MAILGUN
  • PAYPAL
  • PRIVATE_SSH_KEY
  • PRIVATE_RSA_KEY
  • PRIVATE_DSA_KEY
  • PRIVATE_EC_KEY
  • PRIVATE_PGP_KEY
  • PRIVATE_OPENSSH_KEY
  • SENDGRID_API_KEY
  • SENSITIVE_URL
  • SLACK_V2
  • SLACK_V1
  • SLACK_WEBHOOK_URL
  • SQUARE_APP_SECRET
  • SQUARE_PERSONAL_ACCESS_TOKEN
  • STRIPE_LIVE_SECRET_KEY
  • STRIPE_LIVE_RESTRICTED_KEY
  • TWITTER
  • TWILIO_AUTH
  • TWILIO_SID
  • TWILIO_API_KEY

Списки слов и ресурсы

Некоторые списки слов и regex созданы нами, а другие вдохновлены другими репозиториями/исследователями:

  • Link : https://gist.github.com/nullenc0de/fa23444ed574e7e978507178b50e1057
  • Link : https://github.com/streaak/keyhacks
  • Link : https://mathiasbynens.be/demo/url-regex

TODO

  • Добавить обнаружение ложных срабатываний
  • Добавить аргументы для вывода только результатов (скрыть код состояния и прочее)
  • Отправлять только одно уведомление для двойных токенов (для сервисов типа Twilio)
  • Фильтровать, чтобы отправлять уведомление только если дата коммита больше даты, заданной в аргументах
  • Улучшить уведомление о «дате коммита» для отображения чего-то вроде «[+] Commit date (5 days ago)»
  • Добавить аргументы для вывода результатов в файл
  • Добавить многопоточность
  • Улучшить вывод при очистке токенов
  • Добавить модуль «проверки комбинации» (для сервисов типа Twilio, требующих два токена)
  • Добавить отображение имен пользователей и организаций в уведомлениях
  • Добавить дату коммита
  • Управление ограничением скорости

Авторы

  • Reptou - Twitter : @R_Marot
  • Hisxo - Twitter : @adrien_jeanneau

Контрибьюторы

Спасибо за ваш вклад и помощь в улучшении gitGraber:

  • @Darkpills
  • @gwendallecoguic
  • @overjt
  • @Abss0x7tbh
  • @PatrikHudak

Отказ от ответственности

Этот проект создан только для образовательных целей и этического тестирования. Использование этого инструмента для атак на цели без предварительного взаимного согласия незаконно. Разработчики не несут ответственности и не отвечают за любое неправильное использование или ущерб, причиненный этим инструментом.

Скачать инструмент
СервисСсылка
GitHubКак создать токен API GitHub
DiscordКак создать URL вебхука Discord
SlackКак создать URL вебхука Slack
TelegramКак создать бота Telegram