CLI tool for automated internet host enumeration and fingerprinting
Top 90.0% on sourcepulse
The Grinder Framework is a Python-based tool for automated internet-connected device discovery and fingerprinting. It targets security researchers and developers needing to enumerate hosts, identify services, and analyze vulnerabilities across large datasets, offering a comprehensive solution for internet-wide scanning and analysis.
How It Works
Grinder leverages Shodan and Censys APIs for initial host discovery, then employs a multi-processed Nmap wrapper for port and service scanning. It integrates with the Vulners API to retrieve exploit and vulnerability information, and can also analyze SSL/TLS configurations. The framework supports custom Python and Lua scripts for extended analysis and can generate interactive world maps and plots for data visualization.
Quick Start & Requirements
python3 -m venv grindervenv
, source grindervenv/bin/activate
), install requirements (pip3 install -r requirements.txt
).python3-tk
, FreeType library (Python 3.8+), Shodan and Censys accounts. Optional: Vulners account, Nmap 7.60+, Java 8 and TLS-Attacker 3.0 for TLS scanning.SHODAN_API_KEY
, CENSYS_API_ID
, CENSYS_API_SECRET
, VULNERS_API_KEY
)../grinder.py -h
for help, ./grinder.py -r -q queries/servers.json
for basic enumeration.Highlighted Details
Maintenance & Community
The project appears to be actively developed, with ongoing work on NSE script integration and testing modules. Users can contribute via pull requests or issues.
Licensing & Compatibility
The repository does not explicitly state a license in the README. Compatibility for commercial use or closed-source linking would require clarification on licensing.
Limitations & Caveats
The README notes that NSE script execution is still a work-in-progress and will be run sequentially. Some tests are also marked as WIP. The project's licensing is not specified, which may impact commercial adoption.
4 years ago
1 day