
Herramienta de reconocimiento para organizaciones de GitHub
Gitrob es una herramienta que ayuda a encontrar archivos potencialmente sensibles publicados en repositorios públicos de Github. Gitrob clonará los repositorios de un usuario u organización hasta una profundidad configurable, recorrerá el historial de confirmaciones (commits) y marcará archivos que coincidan con firmas de archivos potencialmente sensibles. Los hallazgos se presentarán a través de una interfaz web para facilitar su navegación y análisis.
gitrob [options] target [target2] ... [targetN]
-bind-address string
Address to bind web server to (default "127.0.0.1")
-commit-depth int
Number of repository commits to process (default 500)
-debug
Print debugging information
-github-access-token string
GitHub access token to use for API requests
-load string
Load session file
-no-expand-orgs
Don't add members to targets when processing organizations
-port int
Port to run web server on (default 9393)
-save string
Save session to file
-silent
Suppress all output except for errors
-threads int
Number of concurrent threads (default number of logical CPUs)
Por defecto, gitrob almacena el estado de una evaluación en la memoria. Esto significa que los resultados de una evaluación se pierden cuando se cierra Gitrob. Puede guardar la sesión en un archivo usando la opción -save:
gitrob -save ~/gitrob-session.json acmecorp
Gitrob guardará toda la información recopilada en la ruta de archivo especificada como un documento JSON especial. El archivo se puede cargar nuevamente para navegarlo en otro momento, compartirlo con otros analistas o analizarlo para integraciones personalizadas con otras herramientas y sistemas.
Una sesión almacenada en un archivo se puede cargar con la opción -load:
gitrob -load ~/gitrob-session.json
Gitrob iniciará su interfaz web y servirá los resultados para su análisis.
Hay una versión precompilada disponible para cada lanzamiento; alternativamente, puedes usar la última versión del código fuente de este repositorio para compilar tu propio binario.
Asegúrate de tener un entorno Go >= 1.8 correctamente configurado y que $GOPATH/bin esté en tu $PATH:
$ go get github.com/michenriksen/gitrob
Este comando descargará gitrob, instalará sus dependencias, lo compilará y moverá el ejecutable gitrob a $GOPATH/bin.
Gitrob necesitará un token de acceso de Github para interactuar con la API de Github. Crea un token de acceso personal y guárdalo en una variable de entorno en tu .bashrc o archivo de configuración de shell similar:
export GITROB_ACCESS_TOKEN=deadbeefdeadbeefdeadbeefdeadbeefdeadbeef
Alternativamente, puedes especificar el token de acceso con la opción -github-access-token, ¡pero ten cuidado con el historial de comandos!