A scanning tool for finding website domains with exposed .git folders that can be used to obtain the full source code of the website.
- Multi-threaded scanning for efficient performance.
- Customizable request timeouts and headers.
- Reads target URLs from a configurable file (e.g.,
urls.txt). - Supports building for Linux and Windows platforms.
- Lightweight and easy to configure.
-
Clone the repository:
git clone https://github.com/narukoshin/gitfinder.git cd gitfinder -
Ensure you have the required build tools installed:
- CMake (version 3.10 or higher)
- Ninja
- For Windows cross-compilation: MinGW-w64 (optional, if using toolchains)
-
Build and install (recommended for local use):
make && sudo make installThis will build the tool using CMake and Ninja, and install it to
/usr/local/bin/gitfinder. You can customize with variables likeBUILD_TYPE=Debug,TOOLCHAIN=toolchains/linux-x86_64.cmake, orPREFIX=/custom/path.For cross-platform builds and archives, use the build script:
./build.shThis compiles for Linux (amd64) and Windows (amd64), creating
.tar.gzarchives in thereleases/directory. -
Extract the appropriate archive if using
./build.sh(e.g.,gitfinder-1.0.0-linux-amd64.tar.gz) and use thegitfinderbinary.
The repository includes collector.py, a Python script that crawls Google to collect domain names and generate the urls.txt file used by GitFinder.
Requirements: Python 3.x. Install any necessary libraries (e.g., requests, beautifulsoup4) via pip3 install if not already available.
Usage:
python3 collector.py
Run the script with appropriate options to search Google for domains and output them to urls.txt.
-
Copy the sample configuration file:
cp config.sample.yml config.yml -
Edit
config.ymlto suit your needs:threads: Number of concurrent threads (e.g., 8).timeout: Request timeout (e.g., 30s).collection_file: Path to the file containing target URLs (one URL per line, e.g.,urls.txt).headers: Custom HTTP headers (e.g., User-Agent for spoofing).
Example
config.yml:threads: 8 timeout: 30s collection_file: urls.txt headers: "User-Agent": "Mozilla/5.0 (compatible; GitFinder/1.0)"
-
Prepare your
urls.txtfile with a list of target domains (one per line). Usecollector.pyor generate manually.
Run the tool with the configured settings:
./gitfinderThe tool will scan the URLs listed in your collection file for exposed .git folders and report findings.
Contributions are welcome! Feel free to submit pull requests for improvements, bug fixes, or new features.
This project is licensed under the MIT License - see the LICENSE file for details.
ー Project by THE NEET FAMILY ー
We think. We create. We produce.


