Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
GitMonitor — Una forma de monitorear continuamente información sensible que podría estar expuesta en Github | Kitploit
Herramientas/GitHubGitHub/talkaboutcybersecurity/gitmonitor
OSINT (Inteligencia de Fuentes Abiertas)ReconocimientoRecopilación de InformaciónDetección de Secretos
GitHubtalkaboutcybersecurity/gitmonitor

GitMonitor

Una forma de monitorear continuamente información sensible que podría estar expuesta en Github

Ver Repositorio

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
17240hace 6 añosRevisado por Kitploit

GitMonitor

License: GPL v3

GitMonitor

Una forma de monitorear continuamente información sensible que podría estar expuesta en Github

Resumen

Sé que hay muchas otras herramientas disponibles para encontrar información sensible actualmente filtrada en Github, yo mismo todavía uso algunas de ellas. Sin embargo, creo que aún carecen de algunas características como:

  • Otras herramientas se centran más en encontrar información sensible que existe en un repositorio al que se le ha pasado la dirección de Git. Solo hay un puñado de herramientas similares en el momento en que desarrollé GitMonitor enfocadas en encontrar primero los repositorios que necesitas considerar, encontrar todos los repositorios relevantes, luego verificar si existe información sensible entre ellos.

  • Además de las reglas para verificar información sensible, la herramienta también necesita reglas para buscar repositorios de interés. Los repositorios a considerar pueden ser aquellos que contengan palabras clave relacionadas con la empresa o el proyecto.

  • Si eres un cazador de bug bounty, solo te interesarán unos pocos objetivos a la vez. Sin embargo, si eres un ingeniero de seguridad de una empresa, necesitarás saber cuándo aparece un repositorio relacionado con tu empresa o proyecto y que pueda contener información sensible. Dichos repositorios pueden aparecer en cualquier parte de Github, con cualquier nombre y publicados por cualquier cuenta. También deberías recibir una alerta tan pronto como aparezca dicho repositorio (monitoreo continuo).

  • La herramienta tiene un mecanismo de reporte flexible.

Por eso creé esta herramienta - GitMonitor. GitMonitor utiliza dos conjuntos diferentes de reglas para encontrar lo que necesitas. El conjunto de reglas de búsqueda buscará repositorios que puedan estar relacionados con tu organización o proyectos internos, o cualquier otra cosa, clonará los repositorios que coincidan en local. Luego, el conjunto de reglas de filtrado sensible para verificar si esos repositorios contienen información sensible. Finalmente, la herramienta informará a través de Slack. Puedes usar esta herramienta con Cronjob para crear un sistema de monitoreo continuo para rastrear información sensible relacionada con tu organización que se haya filtrado en Github y recibir resultados a través de Slack.

Actualización 15 de junio de 2020: Hemos actualizado a la versión 1.0. Esta versión corrige algunos errores para que Gitmonitor funcione de manera estable. Recomendamos realizar un git pull si estás usando versiones anteriores.

Características

  • Usa dos conjuntos diferentes de reglas, un conjunto de reglas de búsqueda (yaml) para buscar el repositorio de interés, y un conjunto de reglas de filtro (regex) para verificar si esos contenedores de interés contienen información sensible. Las reglas de búsqueda (yaml) y las reglas de filtro (regex) se definen por separado. Los usuarios pueden definir reglas yaml y regex de manera fácil e intuitiva.

  • Conjunto de reglas de búsqueda: Puedes crear muchas reglas diferentes usando diferentes archivos yaml. Las reglas te permiten definir de manera flexible cómo deseas buscar repositorios, puedes usar palabras clave, o palabras clave asociadas con el idioma, nombre de archivo y extensión, o también puedes definir excluir repositorios de la búsqueda basándote en el idioma, nombre de archivo o extensión. Las palabras clave se buscarán a través de los nombres de los repositorios, los códigos de los repositorios y también los commits.

  • Conjunto de reglas de filtro: Puedes agregar o modificar regex fácilmente para encontrar información sensible que pueda existir en los repositorios.

  • El primer repositorio que coincida con el conjunto de reglas de búsqueda se clonará localmente. Luego, el conjunto de reglas de filtro verificará si este repositorio contiene información sensible. Después de terminar de verificar información sensible, Gitmonitor registrará los resultados y eliminará automáticamente este repositorio localmente para ahorrar espacio antes de continuar repitiendo este proceso hasta que se hayan encontrado y verificado todos los repositorios relevantes.

Diagrama de trabajo

Requisitos

  • Python3
  • Python3-pip.
  • Probado en Ubuntu 18.04 y MacOS. Creemos que Gitmonitor puede funcionar bien en otros sistemas también.

Configuración

1. Instalar requisitos

root@kitploit:~
> python3 -m pip install -r requirements.txt

Asegúrate de tener instalada la versión 5x o superior de Pyyaml (pip3 install --ignore-installed PyYAML)

2. Asegúrate de haber configurado toda la información necesaria en el archivo de configuración (config.ini)

La siguiente tabla explica el significado de cada clave en el archivo de configuración:

3. Define las credenciales de la cuenta de Github. Tienes 2 formas de hacerlo

  • Define la información de credenciales en variables de entorno:
root@kitploit:~
> export GIT_USERNAME=tu nombre de usuario de Github
> export GIT_PASSWORD=tu clave personal o contraseña de Github
  • O define la información de credenciales en el archivo de configuración (No recomendado):

    • Abre el archivo config.ini.
    • Completa la información de credenciales en los valores de las claves user y password.

Ejemplo de archivo de configuración cuando defines las credenciales en variables de entorno

Ejemplo de archivo config

4. Escribe las reglas (Reglas de búsqueda). Coloca tus reglas en el directorio rules

Puedes crear muchos archivos yaml diferentes como la plantilla de regla para definir múltiples palabras clave. Un archivo de regla se verá como la imagen de abajo:

Ejemplo de archivo de regla

5. Agrega más expresiones regulares al archivo libs/regex.py - Reglas de filtrado sensible (Opcional)

6. Ejecuta Gitmonitor

root@kitploit:~
> python3 gitmonitor.py

7. Puedes programar la ejecución automática de la herramienta usando Cronjob.

Por ejemplo:

Ejemplo de cronjob

Por Hacer

  • Función: Reporte por correo electrónico.
  • Función: Enviar resultado a Elasticsearch.
  • Dev: Escribir setup.py
  • Dev: Escribir Dockerfile

Mi Equipo

  • Tony - Líder del Proyecto
  • musashi137 - Desarrollador Principal

Agradecimientos Especiales

  • GitMAD por el mecanismo de búsqueda de información sensible basado en expresiones regulares

Contribuciones

Muchas áreas de este proyecto podrían mejorarse y cambiar significativamente mientras se refactoriza el código actual y se implementan nuevas características. Los comentarios con mejoras y las solicitudes de extracción de la comunidad serán muy apreciados y aceptados.

En general, seguimos el flujo de trabajo Git de "fork-and-pull".

  1. Haz un fork del repositorio en GitHub
  2. Clona el proyecto en tu propia máquina
  3. Haz commit de los cambios en tu propia rama
  4. Sube tu trabajo de vuelta a tu fork
  5. Envía una Pull Request para que podamos revisar tus cambios

NOTA: ¡Asegúrate de fusionar lo último de "upstream" antes de hacer una pull request!

Donar

Buy Me A Coffee

Descargar herramienta
  • Reporte a través de Slack.

  • Esta herramienta puede programarse con Cronjob para monitoreo continuo.

  • ClaveDescripción
    userNombre de usuario de Github - Déjalo en blanco si has configurado las credenciales de Github mediante variables de entorno
    passContraseña de Github - Déjalo en blanco si has configurado las credenciales de Github mediante variables de entorno
    webhooksToken de Webhook entrante para enviar mensajes desde GitMonitor a Slack
    ruleEl directorio que contiene el conjunto de reglas de búsqueda
    sourceEl directorio para descargar el repositorio
    logEl directorio que contendrá el archivo JSON que registra el estado después de cada escaneo, este archivo JSON se utiliza para comparar resultados entre escaneos (Para identificar nuevos repositorios)
    startDefine el banner para iniciar el escaneo y el banner para el resultado del escaneo del Conjunto de Reglas de Filtrado Sensible - Se mostrará en los resultados enviados a Slack
    endDefine el banner para finalizar el escaneo y el banner para el resultado del escaneo del Conjunto de Reglas de Búsqueda - Se mostrará en los resultados enviados a Slack
    allDefine el banner para mostrar todos los repositorios - Se mostrará en los resultados enviados a Slack