CyRecon is an open-source, AI-assisted reconnaissance toolkit for ethical hackers and cybersecurity enthusiasts. Designed in Python, CyRecon helps automate information gathering by combining subdomain enumeration, port scanning, directory brute-forcing, vulnerability matching, and more — all in one tool.
- 🌐 Subdomain Scanner with AI-based Risk Detection
- 🛁 Port Scanner with Service Guessing and Risk Categorization
- 📂 Directory Brute-Forcer with Sensitive Path Detection
- 🧠 CVE Matcher: Automatically suggests vulnerabilities from scan results
- 🖼️ Screenshot Capture for Discovered Subdomains (via Headless Chrome)
- 📝 Export Reports in JSON and PDF formats
Install directly from PyPI:
pip install cyreconOr install locally:
git clone https://github.com/mrcoder420/cyrecon.git
cd cyrecon
pip install -r requirements.txtpython -m cyreconYou’ll be presented with a menu:
1. 🌐 Subdomain Scanner
2. 🛁 Port Scanner
3. 📂 Directory Scanner
4. 🧠 Vulnerability Matcher
5. 📝 Export Report
6. 🖼️ Subdomain Screenshots
7. ❌ Exit
Each module takes basic input (domain/IP) and returns a result list with AI labels.
Enter domain: example.com
[+] https://admin.example.com [200] - AI: 🔴 Malicious
[+] Port 3306 (MySQL) - AI: ⚠️ Vulnerable
[+] /phpinfo - AI: 🔴 Dangerous (PHP info leak)- JSON:
cyrecon_report.json - PDF:
cyrecon_report.pdf
Example:
{
"subdomains": [...],
"ports": [...],
"dirs": [...],
"vulnerabilities": [...]
}requeststqdmcoloramaseleniumreportlab
📌 Requires ChromeDriver for screenshot functionality — place it in your project root or system PATH.
CyRecon uses rule-based heuristics for AI labeling:
- 🔴 Critical / Malicious
- 🟡 Warning / Check Config
- 🟢 Normal / Safe
cyrecon/
├── subdomains.py
├── portscanner.py
├── dirscanner.py
├── vulnmatcher.py
├── screenshooter.py
├── reportgen.py
└── __main__.py
Nikhil Sunil Bhor 💼 Passionate Python Developer & Security Enthusiast 📧 bhavishya@gmail.com 🌐 LinkedIn | GitHub
MIT License © 2025 Nikhil Bhor
See LICENSE for full details.
Pull requests are welcome! For major changes, open an issue first to discuss.
https://pypi.org/project/cyrecon/
Tip: Use this content in your
setup.pyorpyproject.tomldescription too!