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

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

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

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

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

Категории

Все категории
Loading categories
Gitmails — Инструмент для сбора информации, предназначенный для извлечения email-адресов из git-коммитов в сервисах хостинга систем контроля версий. | Kitploit
Инструменты/GitHubGitHub/giovanifss/gitmails
OSINT (Разведка открытых источников)РазведкаСбор информацииТестирование на ПроникновениеУтилиты и фреймворкиСбор Электронной ПочтыArchived
GitHubgiovanifss/gitmails

Gitmails

Инструмент для сбора информации, предназначенный для извлечения email-адресов из git-коммитов в сервисах хостинга систем контроля версий.

Репозиторий
151257 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

Разработка - ВАЖНО

Эта версия Gitmails больше не поддерживается. Ознакомьтесь с портом Gitmails Shell, если хотите использовать поддерживаемую и, предположительно, развиваемую версию.

Если вы не хотите использовать порт на Shell и предпочитаете версию на Python, можете свободно форкнуть Gitmails и направить его по тому пути, который сочтёте нужным.

Обзор

Gitmails использует тот факт, что коммиты git содержат имя и email, настроенные автором, а также то, что сервисы хостинга систем контроля версий используются для хранения множества проектов.

Что делает Gitmails:

  • Запрашивает у сервисов хостинга систем контроля версий информацию об организации, команде, группе, пользователе или отдельном репозитории;
  • Выводит список всех репозиториев (ограниченный аутентификацией), если не выбран режим одного репозитория;
  • Клонирует репозиторий или запрашивает историю коммитов через сервис хостинга;
  • Анализирует историю коммитов для выявления уникальных авторов. Авторы определяются по паре имя-email.

С помощью этих шагов Gitmails может собрать все email, найденные в истории коммитов для конкретной цели.

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

Сначала необходимо выбрать метод работы: сбор email организации, пользователя или одного репозитория. Это можно сделать с помощью опций: -u --username, -o --organization или -r --repository.

После указания метода работы необходимо задать цель. Её нужно указать сразу после метода работы: python3 gitmails.py -u some_username, python3 gitmails.py -o some_org или python3 gitmails.py -r some_repo_url. ПРИМЕЧАНИЕ: имена пользователей GitLab чувствительны к регистру, учитывайте это при попытке собрать там email.

С такой базовой настройкой Gitmails клонирует все репозитории для указанной цели (или клонирует репозиторий по указанному URL) и проанализирует его историю коммитов. Затем он выведет высокоуровневую информацию о пользователе или организации и, наконец, выведет в виде таблицы "fancy_grid" (из tabulate) все найденные пары Имя-Email.

Полезные опции:

  • --raw: Вывод результатов в виде простого текста, без таблиц, значения, разделённые запятыми;
  • -f | --file: Сохранить результат в указанный файл. Результаты будут в формате CSV без заголовка.
  • --include-repositories: Заставит Gitmails выводить результат с информацией о том, в каком репозитории был найден email.
  • -p | --path: Указать временный путь для клонирования репозиториев.
  • -e | --exclude: Игнорировать указанные репозитории. Будет сравниваться имя репозитория; если совпадёт, репозиторий будет пропущен, и будет выполнен переход к следующему.
  • --no-cleanup: Не удалять клонированные репозитории.
  • --include-forks: Включать форкнутые репозитории в анализ (только для GitHub).
  • --include-users: При сборе информации об организации также собирать информацию о её публичных участниках (только для GitHub).
  • --no-[gitlab|github|bitbucket]: Не собирать информацию с указанного сервиса хостинга.
  • --run-plugins: Выполнить плагины для собранных результатов.
  • : Попытаться собрать всю информацию только через API, без клонирования репозиториев. : Доступ к API без аутентификации приведёт к ограничению вашего IP. Кроме того, сбор только через API обычно медленнее, чем клонирование репозиториев.

Установка

Для установки Gitmails необходимо выполнить следующие шаги:

  • pip3 install -r requirements.txt
  • Установить pygit2 через менеджер пакетов вашей операционной системы.

Проблемы с Debian

Если вы используете Debian (возможно, Ubuntu тоже), пакет libgit2 не работает с Gitmails. Чтобы это исправить, нужно скомпилировать libgit2 вручную. Следующих шагов должно быть достаточно:

root@kitploit:~
wget https://github.com/libgit2/libgit2/archive/v0.27.0.tar.gz && \
      tar xzf v0.27.0.tar.gz && \
      cd libgit2-0.27.0/ && \
      cmake . && \
      make && \
      sudo make install
ldconfig
pip3 install pygit2

Или выполните скрипт debian install.

Docker

Вы также можете использовать Docker-версию инструмента, выполнив следующую команду:

  • docker run -it giovanifss/gitmails --help

Обратите внимание: если вы хотите записать в файл, вам нужно смонтировать Docker-том:

  • docker run -v /tmp/output:/opt -it giovanifss/gitmails -f /opt/result.txt

Вклад в развитие

Этот проект больше не поддерживается. Если вы хотите внести вклад, ознакомьтесь с Gitmails Shell.

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

Этот инструмент собирает данные, которые могут быть полезны для легитимных работ по offensive security. Авторы этого проекта снимают с себя всякую ответственность за любой ущерб или убытки, вызванные неправильным или злонамеренным использованием данного инструмента. Дополнительные сведения см. в LICENSE.

Скачать инструмент
--api
ПРИМЕЧАНИЕ