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

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

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

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

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

Категории

Все категории
Loading categories
vinifera — Инструмент разведки/мониторинга GitHub для поиска внутренних утечек, принадлежащих вашей организации. | Kitploit
Инструменты/GitHubGitHub/zomato/vinifera
OSINT (Разведка открытых источников)РазведкаСбор информацииОбнаружение СекретовРеагирование на Инциденты
GitHubzomato/vinifera

vinifera

Инструмент разведки/мониторинга GitHub для поиска внутренних утечек, принадлежащих вашей организации.

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

Популярное

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

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

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

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

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

Vinifera - Мониторинг внутренних утечек на Github

Инструмент мониторинга Github 🤖

Vinifera Logo


Мы используем Vinifera в production с декабря 2019 года, и это помогло нам предотвратить инциденты безопасности. Vinifera начинался как внутренний проект для обеспечения безопасности наших публичных вкладов и мониторинга потенциальных утечек на Github. Мы считаем, что это поможет другим компаниям укрепить свою безопасность при работе с такими публичными источниками, как Github.

Статистика

Что такое Vinifera?

Vinifera позволяет компаниям/организациям отслеживать публичные активы для поиска ссылок на утечки внутреннего кода и потенциальные нарушения.

Иногда разработчики могут случайно раскрыть внутренний код и учетные данные. Vinifera призвана помочь компаниям своевременно обнаруживать такие утечки и реагировать на инцидент.

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

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

  • Vinifera работает путем синхронизации пользователей организации.
  • Для каждого пользователя регистрируются все публичные активы (если они еще не отслеживаются).
  • Каждый актив (Repo, Gist) затем сканируется на наличие изменений.
  • Каждое изменение затем сканируется, сохраняется и сообщается (если содержит утечки)

Рабочий процесс Vinifera

Что означает название?

Во время разработки и создания инструмента команда безопасности съела много винограда, поэтому мы назвали его в честь любимого фрукта :)

Vinifera вдохновлено биномиальным названием винограда

Настройка и использование.

Требования

Vinifera требует установки следующих инструментов:

  1. PostgreSQL
  2. Redis
  3. Docker
  4. Ruby (установка через rbenv/rvm)

Настройка

Токен доступа Github

Для сканирования участников вашей организации Vinifera требуется токен с возможностью чтения участников организации.

Создайте новый токен https://github.com/settings/tokens/new без специальных разрешений

Рекомендуется использовать токен администратора (без специальных разрешений), так как администратор может получить список всех пользователей организации.

https://docs.github.com/en/rest/reference/orgs#list-organization-members

Если аутентифицированный пользователь также является участником этой организации, то будут возвращены как скрытые, так и открытые участники.

Docker

  • Переименуйте .docker_env.example в .docker_env
root@kitploit:~
mv .docker_env.example .docker_env
  • Обновите .docker_env необходимыми переменными
root@kitploit:~
GITHUB_ACCESS_TOKEN=<REDACTED>
VINIFERA_ORG_NAME=<Your_org_name>

RAILS_MAX_THREADS=60 # This also controls DB pool

RAILS_MASTER_KEY=<ADD_YOUR_MASTER_KEY_HERE>

# set the environment
RAILS_ENV=<development|production>

# set the following if RAILS_ENV is set to production
SECRET_KEY_BASE=<YOUR_SECRET_KEY> # min 32 bits key is allowed

# add slack incoming webhook URLs for respective slack channels
SLACK_UPDATES_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_TARGETS_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_USER_TRACKING_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_VINIFERA_VIOLATION_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_ERROR_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>

# By default fork and big fork scanning is disabled
VINIFERA_ENABLE_FORK_SCANNING=false
VINIFERA_ENABLE_BIG_FORK_SCANNING=false
  • Сборка
root@kitploit:~
docker-compose build
  • Запуск
root@kitploit:~
docker-compose up
  • Пересборка после любых изменений
root@kitploit:~
docker-compose up --build
  • Синхронизация пользователей организации Github
root@kitploit:~
docker exec -it vinifera_sidekiq bundle exec rake periodic_syncs:sync_github_users

Команды Docker Compose для справки


Вручную

  • Установите необходимые зависимости
root@kitploit:~
cd <location_of_cloned_repo>
bundle install
  • Настройте базу данных и миграции
root@kitploit:~
bundle exec rails db:create
bundle exec rails db:migrate
  • Настройте переменные окружения и вебхук Slack Пример файла окружения доступен в .example_env
root@kitploit:~
GITHUB_ACCESS_TOKEN=<REDACTED>
VINIFERA_ORG_NAME=<Your_org_name> # Name of org for which token was generated.

VINIFERA_DATABASE_HOST=<localhost>
VINIFERA_DATABASE_PASSWORD=<YOUR_PASSWORD>

RAILS_MAX_THREADS=60 # This also controls DB pool

RAILS_MASTER_KEY=<REDACTED>


SLACK_UPDATES_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_TARGETS_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_USER_TRACKING_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_VINIFERA_VIOLATION_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>
SLACK_ERROR_GROUP_URL=https://hooks.slack.com/services/<YOUR_CONFIG_HERE>



# Add this only if you are using Docker over TLS, recommended way, if, on the same host as vinifera, you may skip it

DOCKER_CLIENT_CERT_PATH=/home/deployer/.docker
DOCKER_HOST=tcp://<IP>:<PORT>

# By default fork and big fork scanning is disabled
VINIFERA_ENABLE_FORK_SCANNING=false
VINIFERA_ENABLE_BIG_FORK_SCANNING=false

REDIS_URL=redis://<REDIS_URI>
SIDEKIQ_REDIS_URL=redis://<REDIS_URI>

# For PagerDuty Integration
DEFAULT_PD_INTEGRATION_KEY=<xxxxxxxx>
ENABLE_PAGER_DUTY_TRIGGER=true
  • Настройте Cron-задачи
root@kitploit:~
bundle exec whenever --update-crontab
  • Настройте свои пользовательские правила toml для Gitleaks. Подробнее
root@kitploit:~
[[rules]]
# Insert your rules here
# description = "Internal References"
# regex = '''(?i)((.*)<COMPANY_INTERNAL_REFERENCES>(.*))'''
# tags = ["internal", "company","references"]
  • Запустите Sidekiq
root@kitploit:~
bundle exec sidekiq
Datadog

Дополнительно, чтобы получать метрики в Datadog, как на скриншоте выше, вы можете использовать агент DataDog - https://docs.datadoghq.com/agent/

PagerDuty

Чтобы гарантировать, что команда не пропустит ни одного нарушения, доступна интеграция с PagerDuty:

Инцидент PagerDuty

Для интеграции с PagerDuty необходимо установить следующую переменную окружения в true

root@kitploit:~
ENABLE_PAGER_DUTY_TRIGGER=true

Затем создайте новый сервис и ключ интеграции, как описано в следующей документации - https://support.pagerduty.com/docs/services-and-integrations#create-a-new-service

Сервис PagerDuty

root@kitploit:~
DEFAULT_PD_INTEGRATION_KEY=<xxxxxxxx>

Участие в разработке

Мы открыты для вклада/исправления ошибок/улучшения производительности нашего проекта :)

Пожертвования

Если вы оценили созданный нами инструмент, не стесняйтесь вносить вклад/пожертвования в проекты, на основе которых был построен Vinifera :)

Vinifera построен на основе другого программного обеспечения с открытым исходным кодом:

  1. Rails (Наш любимый веб-фреймворк)
  2. Sidekiq (Обрабатывает жизненный цикл задач, планирование и повторные попытки)
  3. Gitleaks (Gitleaks обеспечивает сканирование кода через Docker-образы)
  4. Docker (Для запуска сканирования в изолированной среде)
  5. Docker-api (Ruby-клиент для взаимодействия с Docker Remote API)
  6. Sidekiq Throttled (Для ограничения воркеров)
  7. Octokit (Ruby-инструментарий для Github API)
  8. Whenever (Cron-задачи в Ruby)

.... (список будет продолж..., вы поняли идею ;) )

Вы также можете сделать пожертвование в Feeding India

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

Ни Zomato, ни разработчики этого инструмента не несут ответственности за любой ущерб, причиненный этим инструментом или его использованием. Используйте ответственно. См. LICENSE для получения дополнительной информации.

Лицензия

Vinifera лицензируется в соответствии с лицензией Apache, версия 2.0. См. LICENSE для полного текста лицензии.

Скачать инструмент