Skip to content

Repository files navigation

🔍 Web Recon Automation Framework

Python License: MIT Maintenance

An automated, modular reconnaissance framework designed for security professionals and penetration testers. Stop clicking twenty tools — build the one that does it for you.

📖 Overview

The Web Recon Automation Framework accepts a target domain and automatically collects publicly available reconnaissance data, compiling it into a clean, professional Markdown report. It is built with a robust, modular architecture to ensure graceful error handling and high reliability.

Developed by: Darshan (GitHub: @123dars)

✨ Key Features

  • 🕵️‍♂️ WHOIS Scanning: Retrieves registrar details, creation dates, and expiration dates.
  • 🌐 DNS Enumeration: Queries essential records including A, AAAA, MX, NS, and TXT.
  • 🌍 Network Profiling: Resolves primary IP addresses and performs Geolocation tracking (Country, City, ISP, Organization).
  • 🔒 Web & Security Scanning:
    • Analyzes HTTP response headers.
    • Detects missing critical security headers (CSP, HSTS, X-Frame-Options).
    • Checks for sensitive exposed files (robots.txt, sitemap.xml).
    • Extracts and validates SSL/TLS Certificate details (Issuer, Validity dates).
  • 📄 Automated Reporting: Dynamically generates a structured, client-ready Markdown (.md) report timestamped for your records.

🏗️ Architecture

This tool is engineered with a strict Modular Architecture:

  • Each scanning capability is separated into distinct files inside the modules/ directory (Single Responsibility Principle).
  • The main recon.py engine orchestrates the modules.
  • Built-in try...except exception handling guarantees graceful degradation. If a target server blocks a web request or times out, the framework logs the error and continues executing the remaining modules without crashing.

🚀 Installation Guide

Prerequisites

  • Python 3.x installed on your system.

Setup Instructions

  1. Clone the repository:

    git clone https://github.com/123dars/web-recon-framework.git
    cd web-recon-framework
  2. Create a virtual environment (Recommended):

    python3 -m venv venv
    source venv/bin/activate  # On Windows use: venv\Scripts\activate
  3. Install dependencies:

    pip install -r requirements.txt

💻 Usage

Run the script from your terminal and provide the target domain as an argument.

python recon.py <target_domain>

Example:

python recon.py scanme.nmap.org

Once the scan completes, a detailed report (e.g., recon_report_scanme.nmap.org_2026-07...md) will be generated in your current directory.

⚠️ Legal & Ethical Disclaimer

IMPORTANT: Only run this tool against domains you own or are explicitly authorized to scan (e.g., your own website, or an authorized testing server like scanme.nmap.org). Building reconnaissance automation is legal and highly encouraged for educational purposes; running it against unauthorized targets is unethical and potentially illegal. The developer is not responsible for any misuse of this tool.

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

An automated, modular Python framework for gathering public reconnaissance data (WHOIS, DNS, Network, Web) and generating structured Markdown reports.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages