Skip to content

iampopg/UTD-CVE-Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

UTD CVE Manager

1769614110433

Up-to-Date CVE Vulnerability Manager - A comprehensive cross-platform vulnerability management system that scans installed software components and identifies security vulnerabilities using the National Vulnerability Database (NVD) API.

πŸš€ WORKS WITH OR WITHOUT API KEY

βœ… No API Key Required!

  • Instant Setup - Start scanning immediately without registration
  • Free Usage - No API key needed for basic vulnerability scanning
  • Automatic Detection - System automatically adapts to API key availability

⚑ Enhanced Performance with API Key

  • 50x Faster Scanning - With API key: ~0.6s between requests vs 6s without
  • Higher Limits - 50 requests per 30s vs 5 requests per 30s
  • Professional Use - Recommended for enterprise environments
Mode Rate Limit Requests per 30s Best For
Without API Key 6 seconds 5 requests Personal use, testing
With API Key 0.6 seconds 50 requests Enterprise, frequent scans

🎯 Overview

UTD CVE Manager is an enterprise-grade vulnerability assessment tool with a beautiful EDR-style dashboard. It automatically discovers installed software components on Windows and Linux systems, cross-references them with real-time CVE data from NIST NVD, and provides actionable security insights with encrypted credential storage.

✨ Features

πŸ” Software Component Discovery

  • Cross-Platform Scanning - Windows registry and Linux package manager support
  • System Component Detection - OS, BIOS/UEFI firmware, and web servers
  • External Component Support - Manually add software components for monitoring
  • Intelligent Deduplication - Smart handling of duplicate components
  • Version-Specific Matching - Precise version detection and CVE correlation

πŸ›‘οΈ Vulnerability Assessment

  • Real-time NVD Integration - Live CVE data from NIST National Vulnerability Database
  • Optimized CPE Matching - Uses virtualMatchString for accurate vulnerability detection
  • CVSS v3.1 & v2.0 Support - Complete scoring and severity classification
  • Background Scanning - Non-blocking scans with real-time progress tracking

πŸ“Š Professional Dashboard

  • EDR-Style Interface - Modern dark-themed cybersecurity dashboard
  • Real-time Statistics - Live vulnerability counts and severity breakdown
  • Last Scan Tracking - Shows scan history with date/time and results
  • Priority Alerts - Immediate notifications for critical vulnerabilities

πŸ”Ž Advanced CVE Management

  • Paginated Results - 10 software components per page with navigation
  • Smart Filtering - Filter by All Data, All Severities, Safe, or specific severity levels
  • System Component Priority - OS and firmware components displayed first
  • Component Tagging - Visual tags for OS, BIOS, IIS, and external components
  • Expandable CVE Details - 10 CVEs per page with detailed information
  • Global Search - Search across CVE IDs, software names, and descriptions

βš™οΈ Secure Configuration

  • Encrypted Storage - XOR encryption for API keys and SMTP credentials
  • Database Security - Sensitive data encrypted in SQLite database
  • SMTP Testing - Built-in email configuration testing with TLS/SSL support
  • Scheduled Scanning - Configurable intervals (20min debug to quarterly)
  • Scan Options - Choose to scan system components, external components, or both

πŸ“‹ Professional Reports

  • Multiple Report Types - Executive, Technical, and Compliance reports
  • PDF Generation - Professional report export functionality
  • Severity Filtering - Filter reports by vulnerability severity
  • Timeline Analysis - Track vulnerability trends over time

πŸ—οΈ Architecture

UTD-CVE-Manager/
β”œβ”€β”€ app.py                 # Flask web application with API endpoints
β”œβ”€β”€ core/                  # Core application modules
β”‚   β”œβ”€β”€ app_scanner.py     # Cross-platform software component scanner
β”‚   β”œβ”€β”€ cve_scanner.py     # NVD API integration with rate limiting
β”‚   β”œβ”€β”€ database.py        # SQLite database manager with encryption
β”‚   β”œβ”€β”€ encryption.py      # XOR encryption for sensitive data
β”‚   └── migrate_settings.py # Migration utility for .env to database
β”œβ”€β”€ templates/             # Jinja2 HTML templates
β”‚   β”œβ”€β”€ base.html          # Base template with navigation
β”‚   β”œβ”€β”€ dashboard.html     # Real-time dashboard with progress tracking
β”‚   β”œβ”€β”€ cve_details.html   # Paginated CVE details with filtering
β”‚   β”œβ”€β”€ reports.html       # Professional report generation
β”‚   └── settings.html      # Encrypted settings management
β”œβ”€β”€ static/
β”‚   β”œβ”€β”€ css/style.css      # Complete EDR-style dark theme
β”‚   └── js/main.js         # Interactive features and notifications
└── requirements.txt       # Python dependencies

πŸš€ Quick Start

Prerequisites

  • Python 3.8+
  • Windows or Linux OS (Windows primarily supported)
  • NVD API Key (optional - enhances performance but not required)

πŸ“ Note: UTD CVE Manager works perfectly without an API key! You can start scanning immediately after installation.

Installation

  1. Clone the repository
git clone https://github.com/iampopg/UTD-CVE-Manager.git
cd UTD-CVE-Manager
  1. Install dependencies
pip install -r requirements.txt
  1. Run the application
python app.py
  1. Start Scanning Immediately
python app.py
  • Browser opens automatically at http://127.0.0.1:5000
  • Click "Scan System" to start vulnerability detection
  • No configuration needed - works out of the box!
  1. Optional: Add API Key for Faster Scanning

Production Deployment

For production environments, use a WSGI server instead of Flask's built-in server:

# Install gunicorn
pip install gunicorn

# Run with gunicorn (4 workers)
gunicorn -w 4 -b 0.0.0.0:5000 app:app

# Or with specific host/port
gunicorn -w 4 -b your-server-ip:8080 app:app

Note: The Flask development server warning is normal for local use. For production deployments on public servers, always use a production WSGI server like gunicorn, uWSGI, or waitress.

πŸ”§ Configuration

NVD API Setup (Optional - Recommended for Faster Scanning)

Without API Key:

  • βœ… Works immediately out of the box
  • βœ… No registration or setup required
  • ⚠️ Slower scanning (6 seconds between requests)
  • ⚠️ 5 requests per 30-second window

With API Key (Recommended):

  1. Register at https://nvd.nist.gov/developers/request-an-api-key
  2. Add API key in Settings page (automatically encrypted)
  3. Enjoy 50x faster scanning (0.6 seconds between requests)
  4. Higher limits - 50 requests per 30-second window

Database Security

  • Automatic initialization - SQLite database created on first run
  • Encrypted credentials - API keys and SMTP passwords use XOR encryption
  • Schema compatibility - Handles database migrations automatically
  • Duplicate prevention - Intelligent application deduplication

Email Notifications

  • SMTP Configuration - Gmail, Outlook, or custom SMTP servers
  • TLS/SSL Support - Secure email transmission
  • Connection Testing - Verify settings before saving
  • Critical CVE Alerts - Automatic notifications for high-risk vulnerabilities

πŸ“ˆ Usage

1. Dashboard Overview

  • Real-time Statistics - Total, scanned, vulnerable, and safe components
  • Severity Breakdown - Critical, High, Medium, Low CVE counts
  • Last Scan Info - Date, time, and scan results
  • Progress Tracking - Live scan progress with current component

2. CVE Details Management

  • Smart Filtering - All Data (default), All Severities, Safe, or specific levels
  • Component Priority - OS and firmware components displayed first
  • Visual Tags - OS, BIOS, IIS, and EXTERNAL component identification
  • Pagination - 10 software components per page with navigation
  • Expandable Details - Click to view CVEs with 10 per page
  • Search Functionality - Global search across all data

3. Settings Configuration

  • API Management - Encrypted NVD API key storage
  • Scheduled Scanning - Weekly recommended, 20min debug option
  • Scan Options - Choose system components, external components, or both
  • External Components - Add custom software components for monitoring
  • SMTP Setup - Email notifications with connection testing

4. Report Generation

  • Professional Reports - Executive, Technical, Compliance formats
  • PDF Export - Print-friendly report generation
  • Severity Filtering - Focus on specific risk levels
  • Timeline Analysis - Track security posture over time

πŸ”’ Security Features

Data Protection

  • XOR Encryption - Embedded key for sensitive data
  • Database Storage - No plain text credentials in files
  • Local Processing - All data stays on your system
  • Secure Transmission - HTTPS for NVD API communication

Access Control

  • API Key Validation - Prevents scans without proper credentials
  • Rate Limiting - Respects NVD API quotas (6-second delays)
  • Error Handling - Graceful failure with user guidance
  • Input Validation - Prevents injection attacks

πŸ› οΈ Technical Implementation

Software Component Scanning

  • Cross-Platform Detection - Windows registry and Linux package managers
  • System Component Discovery - OS, BIOS/UEFI, web servers (IIS, Apache)
  • Version Detection - Precise version string extraction from multiple sources
  • Publisher Information - Software vendor identification
  • Smart Deduplication - Removes duplicate entries across scan methods

CVE Matching

  • CPE Generation - Common Platform Enumeration strings
  • virtualMatchString - NVD API parameter for precise matching
  • Version Ranges - Handles complex version comparisons
  • Real-time Processing - Live vulnerability correlation

Database Design

  • Components Table - Software inventory with scan results and external flags
  • CVEs Table - Vulnerability details with CVSS scores
  • Settings Table - Encrypted configuration storage
  • External Components Table - User-defined software components
  • Scan History - Complete audit trail

🎨 User Interface

Design Philosophy

  • EDR-Style Theme - Professional cybersecurity aesthetic
  • Dark Mode - Reduces eye strain during security analysis
  • Responsive Design - Works on desktop and mobile devices
  • Color Coding - Severity-based visual indicators

Interactive Elements

  • Real-time Updates - Live dashboard statistics
  • Progress Tracking - Visual scan progress with percentages
  • Hover Effects - Enhanced user experience
  • Notification System - Success, error, and info messages

πŸ“Š Current Status

Implemented Features βœ…

  • βœ… Cross-platform software component discovery (Windows/Linux)
  • βœ… System component detection (OS, BIOS, web servers)
  • βœ… Real-time NVD API integration
  • βœ… Encrypted settings storage
  • βœ… Background scanning with progress tracking
  • βœ… Component tagging and prioritization
  • βœ… Paginated CVE details with advanced filtering
  • βœ… Scheduled scanning
  • βœ… SMTP notifications with testing
  • βœ… External component management with CSV upload
  • βœ… Professional report generation
  • βœ… Comprehensive search and filteringgement
  • βœ… Professional dashboard
  • βœ… Database security and encryption

In Development 🚧

  • 🚧 Advanced report generation
  • 🚧 Email notification automation
  • 🚧 Additional export formats
  • 🚧 API rate optimization

🀝 Contributing

Developed by iampopg

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

πŸ“„ License

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

🀝 Open Collaboration & Usage Terms

UTD CVE Manager is open for collaboration and free to use by:

  • βœ… Individuals - Personal use, learning, and development
  • βœ… Companies - Commercial use, enterprise deployments
  • βœ… Organizations - Non-profit, educational, and government use

Modification & Distribution:

  • βœ… Modifications allowed - Customize, enhance, and adapt the code
  • βœ… Redistribution permitted - Share your improvements with the community
  • ⚠️ Credit required - Attribution must be maintained in the application

Mandatory Attribution: The following credit text MUST NOT be removed from the application:

UTD CVE Manager - Developed by iampopg
Vulnerability data provided by NIST National Vulnerability Database
Keeping your systems secure, one vulnerability at a time

Collaboration Welcome:

  • Fork, modify, and contribute back to the community
  • Commercial use is encouraged to improve cybersecurity
  • Enterprise customizations and integrations are supported
  • Credit the original developer while building upon this foundation

πŸ™ Acknowledgments

  • iampopg - Lead Developer and Project Creator
  • NIST NVD - For providing comprehensive vulnerability data
  • Flask Community - For the excellent web framework
  • Security Researchers - For identifying and reporting vulnerabilities

πŸ“ž Support

For questions, issues, or feature requests:


UTD CVE Manager - Keeping your systems secure, one vulnerability at a time. πŸ›‘οΈ

Developed with ❀️ by iampopg

About

Up-To-Date CVE Manager: Enterprise-grade vulnerability management system with real-time CVE scanning, cross-platform software discovery, and professional EDR-style dashboard. Automatically identifies security vulnerabilities in installed software using NIST NVD API with encrypted credential storage

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors