- Copyright Information
- Dependencies
- Features
- Installation
- Usage
- Usage Example
- Code Overview
- Additional Code
- Scrapper
This documentation provides information about a CVE (Common Vulnerabilities and Exposures) scraper tool. The tool allows users to retrieve information about CVEs from various sources, generate outputs, and download related exploits.
- Python 3.x
- Requests library
- Beautiful Soup (bs4)
- Retrieve information about CVEs from multiple sources.
- Check the existence and publication status of a CVE.
- Generate outputs in various formats, including PDF, HTML, TXT, and CLI.
- Option to download related exploits.
No installation is required other than ensuring that Python 3.x is installed along with the Requests and Beautiful Soup (bs4) libraries.
- Run the script in a Python environment.
- Follow the prompts to enter the CVE ID.
- Choose the desired sources to retrieve information from.
- Select the output formats for the generated report.
- Optionally, choose to download related exploits.
- To use the script, provide a valid CVE ID when prompted. ##Validation process
- Clear Screen: Clears the terminal screen for better user interaction.
- Validate User Input: Verifies the format of the user-provided CVE ID, ensuring it adheres to the CVE standard (e.g., CVE-YYYY-NNNN).
- Check CVE Existence: Utilizes the MITRE API to determine if the CVE exists.
- Check CVE Publication Status: Verifies if the CVE is published or not.
- Retrieve Information: Scrapes detailed information about the CVE from selected sources.
- Generate Output: Provides options to generate output in PDF, HTML, TXT, and CLI formats.
- Terminate: Properly exits the script when execution is complete.
Usage:
- Launch the script in a Python environment.
- Enter the CVE ID when prompted by the script.
- The script validates the entered CVE ID format and ensures it adheres to the standard (CVE-YYYY-NNNN).
- If the input is invalid or out of scope (e.g., invalid year or ID), appropriate error messages are displayed, and the script exits.
- Select desired information sources from the available options.
- Choose the output format(s) you prefer.
- Output files will be generated in the 'output' directory for further analysis and reference.
- Choose the desired sources (NIST, MITRE CVE, Vulmon DB) to retrieve information from.
- Select the output types (PDF, HTML, TXT, Console) for the generated report.
- The script begins by clearing the screen and initializing necessary modules and variables.
- It validates the user input for the CVE ID using regular expressions.
- Checks whether the CVE exists and is published using the MITRE API.
- Retrieves information from user-selected sources (NIST, MITRE, Vulmon).
- Provides an option to download related exploits.
- Generates outputs in various formats based on user preferences.
- CVE Information Scraper
Overview: The CVE Information Scraper is a Python script designed to retrieve comprehensive information about Common Vulnerabilities and Exposures (CVE) entries from various sources. This tool is developed to assist security professionals in accessing CVE details efficiently.
Functionality:
- Scrapping Functions: The script contains functions to scrape CVE information from multiple sources, including MITRE, NIST, and Vulmon.
- Multithreading: Utilizes multithreading for simultaneous scraping and displaying progress.
- JSON Output: Stores the scraped information in a JSON file named "scrap_result.json" for further analysis.
Dependencies: The script relies on the following libraries and modules:
- BeautifulSoup (bs4): For HTML parsing.
- lib.colors: Defines color codes for terminal output.
- threading: Implements multithreading for concurrent execution.
- requests: For making HTTP requests.
- time: Handles time-related tasks.
- re: Performs regular expression operations.
- json: Deals with JSON data.
Usage:
- Launch the script in a Python environment.
- Enter the CVE ID when prompted by the script.
- The script scrapes information from multiple sources simultaneously.
- Progress of each scraping process is displayed in the terminal.
- Once the scraping is complete, the consolidated results are stored in the "scrap_result.json" file.