A lightweight reconnaissance CLI that turns an IP address into an organized first-pass enumeration workflow.
Nmap and FFUF already do the heavy lifting. IPCheck connects the decisions between them.
IPCheck takes evidence from each reconnaissance stage and uses it to decide what should happen next: which ports need deeper inspection, whether web services are present, whether a domain is trustworthy enough to use, and which FFUF scans make sense.
- Discovers TCP ports and carries every non-closed result into targeted Nmap service enumeration
- Detects HTTP and HTTPS services on standard and non-standard ports
- Discovers possible domains and evaluates the confidence of the available evidence
- Maintains the target entry in
/etc/hostsfor confirmed domains and discovered virtual hosts - Runs directory discovery against the appropriate IP or hostname targets
- Runs virtual-host discovery only when a domain is confirmed
- Calibrates FFUF response-size filtering from predominant wildcard responses
- Preserves raw Nmap and FFUF output, clean findings, and response metadata
- Produces an organized workspace and Markdown reconnaissance report
IP
|
v
Port Discovery
|
v
Service Enumeration
|
v
Web Detection
|
+-- No trusted domain ------> Directory Discovery on IP endpoints
|
`-- Domain evidence
|
v
Confidence Evaluation
|
v
/etc/hosts + VHost Discovery
|
v
Directory Discovery on trusted hostnames
|
v
Organized Results + Report
Dependencies:
- Python 3
- Nmap
- FFUF
git clone https://github.com/santisadventures/ipcheck.git
cd ipcheck
chmod +x ipcheck.py
sudo cp ipcheck.py /usr/local/bin/ipcheckFFUF requires a wordlist. Use --wordlist, set IPCHECK_WORDLIST, or install a wordlist in a common SecLists or Dirb location.
ipcheck <IP> <NAME>Example:
ipcheck 10.10.10.10 exampleNAME becomes the workspace directory. It may also be a relative or absolute output path. IPCheck may request sudo for the SYN scan and /etc/hosts updates.
View the available options:
ipcheck --helpA representative workspace looks like this:
example/
|-- nmap_full.txt
|-- nmap_services.txt
|-- report.md
|-- ffuf_vhosts_clean.txt
|-- ffuf_directories_clean.txt
|-- logs/
`-- ffuf/
|-- vhosts/
`-- directories/
The exact files depend on the detected services and enabled stages. Raw tool output is preserved while useful ports, domains, virtual hosts, directories, filters, and service details are summarized in report.md.
IPCheck does not blindly trust every hostname found during reconnaissance. It confirms domains only from stronger evidence such as relevant Nmap output, HTTP redirects, or TLS certificate names; low-confidence references remain informational and do not trigger domain-dependent enumeration.
IPCheck is intended for authorized security testing, labs, CTFs, and environments you have permission to assess.
Licensed under the MIT License.