Gitrecon : OSINT Tool To Get Information From A Github Profile

Gitrecon is a OSINT tool to get information from a Github or Gitlab profile and find user’s email addresses leaked on commits.

How does this work?

GitHub uses the email address associated with a GitHub account to link commits and other activity to a GitHub profile. When a user makes commits to public repos their email address is usually published in the commit and becomes publicly accessible, if you know where to look.

GitHub provide some instructions on how to prevent this from happening, but it seems that most GitHub users either don’t know or don’t care that their email address may be exposed.

Finding a GitHub user’s email address is often as simple as looking at their recent events via the GitHub API.

Installation

git clone https://github.com/GONZOsint/gitrecon.git
cd gitrecon/
python3 -m pip install -r requirements.txt

  • It is possible to use a Github access token by editing line 3 of the modules/github_recon.py file. This will prevent a possible API ban.
  • It is possible to use a Gitlab access token by editing line 3 of the modules/gitlab_recon.py file. This will prevent a possible API ban.

token = ‘<Access token here>‘

Usage

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

Results are saved in results// path.

Features

Gitlab and Github leaked emails on commits

  • Gitlab and Github SSH keys
Github SSH keysGitlab SSH keys
ID
Tittle
Created at
Expires at
KeyKey
  • Gitlab and Github profile info
Github profile infoGitlab profile info
UsernameUsername
NameName
User IDUser ID
State
Status
Avatar urlAvatar url
EmailEmail
LocationLocation
BioBio
CompanyOrganization
Organizations
Job title
Work information
BlogWeb
Gravatar ID
TwitterTwitter
Skype
Linkedin
FollowersFollowers
FollowingFollowing
Created atCreated at
Updated at
R K

Recent Posts

Nginx Commands in Linux: Start, Stop, Reload, Test, and Log

Nginx is a high-performance web server and reverse proxy trusted by some of the largest…

23 hours ago

ufw Command in Linux: Manage Firewall Rules with Examples

ufw (Uncomplicated Firewall) sits on top of iptables (or nftables on newer systems) and replaces…

23 hours ago

who Command in Linux: Show All Logged-In Users and Sessions

When you share a server with a team or investigate unexpected activity, the first question…

23 hours ago

file Command in Linux: Identify File Types Without Extensions

The file command inspects the actual contents of a file and reports its type — regardless of…

2 days ago

chattr Command in Linux: Set File Attributes with lsattr

chattr sets and removes special file attributes that operate at the filesystem level, separate from standard…

2 days ago

env Command in Linux: Show and Set Environment Variables

env prints the current environment, sets or removes variables for a single command, and can start…

2 days ago