Herramienta OSINT para obtener información de un perfil de Github o Gitlab y encontrar las direcciones de correo electrónico de los usuarios filtradas en los commits.
¿Cómo funciona esto?
GitHub utiliza la dirección de correo electrónico asociada a una cuenta de GitHub para vincular las confirmaciones y otras actividades a un perfil de GitHub. Cuando un usuario hace commits en los repos públicos, su dirección de correo electrónico suele publicarse en el commit y pasa a ser accesible públicamente, si sabes dónde buscar.
GitHub proporciona algunas instrucciones sobre cómo evitar que esto ocurra, pero parece que la mayoría de los usuarios de GitHub no saben o no les importa que su dirección de correo electrónico pueda estar expuesta.
Encontrar la dirección de correo electrónico de un usuario de GitHub es a menudo tan simple como mirar sus eventos recientes a través de la API de GitHub.
Idea y texto de Nick Drewe.
Fuente: Encuentra la dirección de correo electrónico de (casi) cualquier usuario de GitHub. (ver aquí)
Instalación
Pre-requisitos:
Una vez obtenido Python3, ejecuta los siguientes comandos (asumiendo una terminal de Linux y Git instalado):
git clone https://github.com/GONZOsint/gitrecon.git
cd gitrecon/
python3 -m pip install -r requirements.txt
Es posible utilizar un token de acceso a Github editando la línea 3 del archivo modules/github_recon.py
. Esto evitará una posible prohibición de la API. Lo mismo para Gitlab (obtener token desde aquí)
Uso
Ejecuta el comando de ayuda para ver las opciones disponibles:
pytjon3 gitrecon.py -h
usage: gitrecon.py [-h] -s {github,gitlab} [-a] [-o] username
positional arguments:
username
optional arguments:
-h, --help show this help message and exit
-s {github,gitlab} sites selection
-a, --avatar download avatar pic
-o, --output save output
Por ejemplo, al escanear el usuario del autor de esta herramienta, obtenemos la siguiente información: (obviamente y con los consejos de seguridad al final de este artículo, el correo no será filtrado)
pytjon3 gitrecon.py -h -s github -a -o GONZOsint
Los resultados se guardan en la ruta results/<usuario>/
.
Características
- Gitlab y Github filtran correos electrónicos sobre los commits
- Claves SSH de Gitlab y Github
Github SSH keys | Gitlab SSH keys |
---|---|
ID | ❌ |
❌ | Tittle |
❌ | Created at |
❌ | Expires at |
Key | Key |
- Información del perfil de Gitlab y Github
Información Perfil Github | Información Perfil Gitlab |
---|---|
Username | Username |
Name | Name |
User ID | User ID |
❌ | State |
❌ | Status |
Avatar url | Avatar url |
Location | Location |
Bio | Bio |
Company | Organization |
Organizations | ❌ |
❌ | Job title |
❌ | Work information |
Blog | Web |
Gravatar ID | ❌ |
❌ | Skype |
❌ | |
Followers | Followers |
Following | Following |
Created at | Created at |
Updated at | ❌ |
Prevención
Configuraciones en Github:
Ir a la configuración haciendo clic aquí.
- Mantener mis direcciones de correo electrónico privadas
- Bloquear los push de línea de comandos que exponen mi correo electrónico
Configuraciones en Gitlab:
Ir a la configuración haciendo clic aquí.
- Correo electrónico público: no mostrar en el perfil
- Correo electrónico de compromiso: utilizar un correo electrónico privado
gitrecon (este enlace se abre en una nueva ventana) por GONZOsint (este enlace se abre en una nueva ventana)
OSINT tool to get information from a Github and Gitlab profile and find user’s email addresses leaked on commits.