๐ Discover GitHub repositories and hunt for leaked credentials with style
โจ Comprehensive GitHub Scanning
- ๐ฆ Download all repositories from organizations, users, or members
- ๐ Automatically scan for leaked credentials using TruffleHog
- ๐ฏ Filter repositories by creation, update, or push dates
- ๐ซ Exclude forked repositories
- ๐ Send verified secret alerts to Discord
๐จ Beautiful Terminal Output
- Colorized and formatted output
- Progress tracking with counters
- Clean visual separators
- Easy-to-read repository listings
โก Performance
- Parallel repository cloning
- Configurable request delays
- Efficient credential detection
Before installing gitxpose, ensure you have TruffleHog installed:
git clone https://github.com/trufflesecurity/trufflehog.git
cd trufflehog
go installgo install github.com/rix4uni/gitxpose@latest
wget https://github.com/rix4uni/gitxpose/releases/download/v0.0.4/gitxpose-linux-amd64-0.0.4.tgz
tar -xvzf gitxpose-linux-amd64-0.0.4.tgz
rm -rf gitxpose-linux-amd64-0.0.4.tgz
mv gitxpose ~/go/bin/gitxpose
Or download binary release for your platform.
git clone --depth 1 https://github.com/rix4uni/gitxpose.git
cd gitxpose; go install
Create a configuration directory and add your GitHub tokens:
mkdir -p ~/.config/gitxpose
echo "your_github_token_here" > ~/.config/gitxpose/github-token.txtYou can add multiple tokens (one per line) for better rate limiting:
echo "token1" >> ~/.config/gitxpose/github-token.txt
echo "token2" >> ~/.config/gitxpose/github-token.txtTo receive verified secret alerts via Discord, configure notify:
mkdir -p ~/.config/notifyCreate ~/.config/notify/provider-config.yaml:
discord:
- id: "allvuln"
discord_webhook_url: "https://discord.com/api/webhooks/YOUR_WEBHOOK_URL"Usage of gitxpose:
-created string
Filter repos created within duration (e.g., 1h, 7d, 1m, 1y)
-date string
Fetch commits from repositories (e.g., 50s, 40m, 5h, 1d, 2w, 3M, 1y, all) (default "all")
-delay string
Delay duration between requests (default "-1ns")
-id string
Send verified vulnerabilities to Discord
-no-fork
Exclude forked repositories
-output string
Directory to save the output (default "/root/.gitxpose/")
-parallel int
Number of repositories to clone in parallel (default 10)
-pushed string
Filter repos pushed within duration
-scan-repo string
Type of scan: org, member, or user (required)
-token string
Path to the file containing GitHub tokens (default "/root/.config/gitxpose/github-token.txt")
-updated string
Filter repos updated within durationScan a user's repositories:
echo "username" | gitxpose --scan-repo userScan an organization:
echo "orgname" | gitxpose --scan-repo orgGet organization members:
echo "orgname" | gitxpose --scan-repo memberExclude forked repositories:
echo "username" | gitxpose --scan-repo user --no-forkFilter by update date (repos updated in last 30 days):
echo "username" | gitxpose --scan-repo user --updated 30dScan with Discord notifications:
echo "username" | gitxpose --scan-repo user --id allvulnScan specific time period commits:
echo "username" | gitxpose --scan-repo user --date 7dCustom parallel downloads:
echo "username" | gitxpose --scan-repo user --parallel 20Combine multiple filters:
echo "username" | gitxpose --scan-repo user --no-fork --updated 30d --date 7d --id allvuln- Seconds:
50s - Minutes:
40m - Hours:
5h - Days:
7d - Weeks:
2w - Months:
3M - Years:
1y - All:
all(default)
~/.gitxpose/
โโโ username/
โโโ fetchrepo.json # Repository metadata
โโโ repo1/
โ โโโ commits.txt # List of commit hashes
โ โโโ code/ # Commit contents
โ โ โโโ hash1.txt
โ โ โโโ hash2.txt
โ โโโ vuln/
โ โโโ trufflehog.json # Vulnerability scan results
โโโ repo2/
โโโ ...โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ REPOSITORIES FOR USERNAME โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
๐ค User: https://github.com/username
๐ฆ Found 6 repositories:
1. gitxpose
๐ https://github.com/username/gitxpose.git
2. project2
๐ https://github.com/username/project2.git
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ CLONING REPOSITORIES โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
โ Cloned [1/6]: gitxpose
โ Cloned [2/6]: project2
โโ Successfully cloned 6 repositories
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ ANALYZING REPOSITORIES โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
[1/6] Processing: gitxpose
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
๐ Fetching commits: gitxpose
๐ฆ Fetching code: gitxpose
๐ Scanning: gitxpose
๐ Notified: Verified secret sent to Discord
โ Completed: gitxpose
๐ All operations completed successfully!