Skip to content

About

Python + Nmap network vulnerability scanner with a GUI, built to learn service detection and CVE analysis workflows.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Vulnerability Analysis Tool

A network scanning tool with CVE detection built as a learning project.


Purpose

This project was built to apply and experiment with concepts related to network scanning, service detection, and vulnerability analysis. The goal was to understand how tools like Nmap and CVE databases work together in practice rather than to build a production-ready scanner.


Prerequisites

Make sure the following are installed before running the project:

  • Python 3.9 or higher
  • Nmap (required for scanning)
  • Python dependencies listed in requirements.txt

Note: Installing python-nmap alone is not sufficient. The actual Nmap program must be installed and available in the system PATH. Nmap must be installed separately and is not installed through pip.


Installation

git clone https://github.com/rufaidaafrin/vulnerability-analysis-tool.git
cd vulnerability-analysis-tool
pip install -r requirements.txt


Install Nmap

Download and install Nmap from the official website:

https://nmap.org/download.html

During installation, ensure that the option to add Nmap to PATH is enabled.

Verify installation:

nmap --version


Running the Application
python src/gui.py


This command will open the Network Vulnerability Scanner GUI.

Usage

Enter a target IP address (for testing, 127.0.0.1 can be used).

Click the Start Scan button.

Wait for the scan to complete.

Depending on the system and scan configuration, results may take 1–3 minutes to appear. Scanning a large port range may take longer.

Common Issues

If the scan appears to hang or takes too long, try running the command prompt as Administrator.

Ensure Nmap is correctly installed and accessible from the command line.

Scans may take longer on Windows due to system permissions.

Notes

This project is intended for learning and experimentation. It focuses on understanding security workflows, debugging, and integrating multiple tools rather than providing a complete vulnerability assessment solution.

What I Learned

  • How Nmap performs port/service scanning and how to drive it programmatically from Python
  • Correlating detected services and versions against CVE data to flag known vulnerabilities
  • Building a GUI to wrap a security scanning tool for usability
  • Handling cross-platform quirks (PATH setup, admin permissions on Windows) when shelling out to external tools
  • Structuring code to separate scanning logic from the UI layer

About

Python + Nmap network vulnerability scanner with a GUI, built to learn service detection and CVE analysis workflows.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages