Skip to content
502ProxyPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nmap Ultimate Builder & Vuln-Scanner

A professional-grade, interactive command-line interface (CLI) for constructing complex Nmap commands. Built with Clean Architecture, SOLID principles, and Type Safety in mind.

🚀 Features

  • Interactive Builder: Step-by-step wizard to build complex Nmap scans.
  • Clean Architecture: Strictly separated layers (Domain, Application, Infrastructure).
  • Type Safety: Fully typed Python code with Enums for Nmap flags.
  • Validation: Robust input validation for IPs, CIDRs, and ports.
  • Conflict Resolution: Automatically resolves conflicting flags (e.g., removing ping scans when appropriate).
  • Rich UI: Beautiful terminal output using the rich library.

🛠 Architecture

The project follows a strict Clean Architecture pattern to ensure maintainability and testability.

Layers

  1. Domain (nmap_tool/domain):

    • Contains enterprise business rules and entities.
    • Enums: NmapFlag defines all supported flags strongly typed.
    • Services: ConflictResolverService ensures valid command combinations.
    • Dependency: Zero external dependencies.
  2. Application (nmap_tool/application):

    • Orchestrates the flow of data.
    • Builder: CommandBuilder constructs the scan configuration.
    • Workflow: ScanWorkflow manages the user journey.
    • Interfaces: UserInterface protocol defines abstract UI interactions.
  3. Infrastructure (nmap_tool/infrastructure):

    • Implements interfaces and handles external concerns.
    • UI: ConsoleUI implements UserInterface using rich.
    • Executor: SystemExecutor wraps subprocess calls to the OS.

📦 Installation

Prerequisites

  • Python 3.8+
  • Nmap: Must be installed on your system.
    • macOS: brew install nmap
    • Linux: sudo apt install nmap

Setup

  1. Clone the repository:

    git clone https://github.com/yourusername/nmaptool.git
    cd nmaptool
  2. Install dependencies:

    pip install -r requirements.txt

🖥 Usage

Run the tool from the project root:

python3 main.py

Follow the on-screen prompts to configure your scan. The tool will suggest flags for:

  • Host Discovery
  • Scan Techniques
  • Port Specification
  • Service & Version Detection
  • Vulnerability Scripting
  • Firewall Evasion
  • Output Formats

🤝 Contributing

Contributions are welcome! Please ensure any pull requests adhere to the Clean Architecture principles established in the project.

📝 License

This project is for educational and research purposes only. Ensure you have permission to scan any target.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages