Skip to main content

Track down GitHub users.

Project description


Python minimum version

🐍 Now Python 3.13 compatible !

Description

GitFive is an OSINT tool to investigate GitHub profiles.

Main features :

  • Usernames / names history
  • Usernames / names variations
  • Email address to GitHub account
  • Find GitHub's accounts from a list of email addresses
  • Lists identities used by the target
  • Clones and analyze every target's repos
  • Highlights emails tied to GitHub's target account
  • Finds local identities (UPNs, ex : jeanpierre@My-Computer.local)
  • Finds potential secondary GitHub accounts
  • Don't need repos to work (but better)
  • Generates every possible email address combinations and looks for matchs
  • Dumps SSH public keys
  • JSON export

Optimizations :

  • Very low API consumption, stays under the rate-limit
  • Multi-processing tasks (bypassing Python's GIL)
  • Async scraping

Workflow

Click here for a full view


Requirements

  • Git
  • Python >= 3.10

Installation

$ pip3 install pipx
$ pipx ensurepath
$ pipx install gitfive

It will automatically use venvs to avoid dependency conflicts with other projects.

Usage

First, login to GitHub (preferably with a secondary account) :

$ gitfive login

Then, profit :

usage: gitfive [-h] {login,user,email,emails,light} ...

positional arguments:
  {login,user,email,emails,light}
    login               Let GitFive authenticate to GitHub.
    user                Track down a GitHub user by its username.
    email               Track down a GitHub user by its email address.
    emails              Find GitHub usernames of a given list of email addresses.
    light               Quickly find emails addresses from a GitHub username.

options:
  -h, --help            show this help message and exit

PS : plz avoid testing on torvalds or other authors of repos with 1 million commits

📄 You can also use --json with user and email modules to export in JSON ! Example :

$ gitfive user mxrch --json mxrch_data.json

Have fun 🥰💞

Video demo

https://github.com/mxrch/GitFive/assets/17338428/28a22d30-f651-483f-84e8-7fc6e00b831f

Obvious disclaimer

This tool is for educational purposes only, I am not responsible for its use.

Less obvious disclaimer

The use of this tool in an automated paid service / software is strictly forbidden without my personal agreement.
Please use it only in personal, criminal investigations, or open-source projects.

Thanks

Sponsors

Thanks to these awesome people for supporting me !

BlWasp  C3n7ral051nt4g3ncy  im-hanzou  gingeleski  ItsMalware  


You like my work ?
Sponsor me on GitHub ! 🤗

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

gitfive-1.1.9-py3-none-any.whl (46.7 kB view details)

Uploaded Python 3

File details

Details for the file gitfive-1.1.9-py3-none-any.whl.

File metadata

  • Download URL: gitfive-1.1.9-py3-none-any.whl
  • Upload date:
  • Size: 46.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0rc3

File hashes

Hashes for gitfive-1.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 1b74ecdbe12a87b13a3db081b5201f35e3696412a9c5278b9336b0d8a891e629
MD5 7c14363064d44ca6b268bb62fa44c9f1
BLAKE2b-256 bc21108207ff5c4147e841c9b793cb2f9e746cf450feeddf8c21b59db940585d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page