Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/atiilla/gitrecon
This tool uses the GitHub API to scan repositories owned by a user for email addresses and associated names. It provides options to scan specific repositories and exclude forked repositories. Additionally, you can provide a GitHub API token to increase the rate limit for API requests.
https://github.com/atiilla/gitrecon
osint recon
Last synced: 3 months ago
JSON representation
This tool uses the GitHub API to scan repositories owned by a user for email addresses and associated names. It provides options to scan specific repositories and exclude forked repositories. Additionally, you can provide a GitHub API token to increase the rate limit for API requests.
- Host: GitHub
- URL: https://github.com/atiilla/gitrecon
- Owner: atiilla
- Created: 2023-09-03T14:37:55.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-09-09T18:38:10.000Z (over 1 year ago)
- Last Synced: 2024-04-23T15:02:02.610Z (10 months ago)
- Topics: osint, recon
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/gitrecon
- Size: 160 KB
- Stars: 7
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GitHub Email Scanner
A tool to scan GitHub repositories for exposed email addresses and names.
![screenshot](https://raw.githubusercontent.com/atiilla/gitrecon/main/gitrecon.jpg)
## Introduction
This tool uses the GitHub API to scan repositories owned by a user for email addresses and associated names. It provides options to scan specific repositories and exclude forked repositories. Additionally, you can provide a GitHub API token to increase the rate limit for API requests.
### Installation
```
npm install -g gitrecon
```### Usage
Command Line Arguments:
```
-u, --username GitHub username (Required)
-t, --token GitHub API token (Optional)
-r, --repo Repository name (Optional)
-n, --no-forks Exclude forked repositories (Optional)
-h, --help output usage information
```Example usage:
Scan all public repositories of a user:
```
gitrecon -u -n
```Scan a specific repository of a user:
```
gitrecon -u -r
```Provide a GitHub API token:
```
gitrecon -u -t
```## Implementation Details
### Constants
`API_URL:` The base URL for GitHub API.`HEADER:` Default HTTP headers for API requests.
`DELAY:` Delay between API requests (3000 milliseconds).
### Functions
`Repository(name, isFork):` Factory function to create Repository objects.`updateHeader(updateObj):` Function to update HTTP headers.
`getRepositories(username):` Function to retrieve user's repositories.
`getEmails(username, repoName):` Function to retrieve email addresses from a repository's commits.
`apiCall(url):` Function to make API calls with a delay.
### Main Function
* Parses command line arguments.
* Fetches repositories to scan based on user input.
* Scans repositories for email addresses and names.
* Displays the results.## C++ version
A C++ version of this tool is available [here](
c++/
).### C++ future work
* GUI for the tool.### `Ethics and Disclaimer`
```
This tool is intended to be used for educational purposes only. The author is not responsible for any misuse of this tool.
```