Skip to main content

ENISA EUVD data fetcher and formatter

Project description

EUVD Mapper v1.7

License: MIT Python PyPI version Downloads

⚙️ ENISA EUVD Data Retriever and Formatter
Fetch, filter, and format data from ENISA’s Exploited Vulnerabilities Database (EUVD) with ease.

banner

✨ Features

🔄 New Lookup Flags
--last Show the latest 8 EUVD entries
--critical Show the latest 8 critical vulnerabilities
--enisa-id Lookup by ENISA internal ID (EUVD-YYYY-XXXX)
--advisory-id Lookup full advisory details by its slug

🚫 No-Banner Mode

  • --no-banner Suppress the ASCII art on terminals (works with -h too!)

🔍 Flexible Search
Query vulnerabilities by keyword, vendor, product, or any combination.

📤 Multiple Export Formats
Output results as .json, .csv, or interactive .html reports.

🧠 Smart HTML Reporting

  • CVSS-based risk coloring (Low / Medium / High / Critical)
  • Filter by vendor, product, or CVSS score
  • In-browser search and the ability to export reports in PDF format.

🔎 Lookup Utilities

  • Search by CVE ID or EUVD ID
  • Get alias mappings and extended metadata

⚠️ Live Threat Feed
Fetch latest exploited vulnerabilities using ENISA’s public API.

📌 Customized Watchlist Alerts

  • YAML-powered alerting system based on specific vendor/product pairs
  • Generates filtered .csv and .html reports
  • Automatically highlights high/critical vulnerabilities for watched assets

🖥️ Responsive Terminal Experience

  • ASCII art banner shown conditionally based on terminal width
  • Clean fallback mode for small terminal displays

📋 YAML Watchlist Format (for Alert Mode)

To use the --input <file>.yaml --alerts feature, your YAML file must define both vendor and product fields for each entry.

Example watchlist.yaml:

watchlist:
  - vendor: Microsoft
    product: Windows 10
  - vendor: Fortinet
    product: FortiOS
  - vendor: Cisco
    product: IOS

📦 Installation

** PYPI You can install euvdmapper directly from PyPI:

pip install euvdmapper


** Install from source:

```bash
git clone https://github.com/FerdiGul/euvdmapper.git
cd euvdmapper
pip install .

---

## 🚀 Usage

You can run the CLI tool via terminal:

```bash
euvdmapper -h

🔍 Examples

euvdmapper --keyword fortinet
    Searches for vulnerabilities by keyword and prints the results.

euvdmapper --keyword fortinet --output fortinet.csv
    Searches and exports results to CSV.

euvdmapper --keyword fortinet --output fortinet.html
    Generates an interactive HTML report.

euvdmapper --keyword google --output google.json
    Exports data in JSON format.

euvdmapper --lookup-cve CVE-2024-1234
    Looks up by CVE ID and prints to terminal.

euvdmapper --lookup-euvd EUVD-2024-5678
    Looks up by EUVD ID and prints to terminal.

euvdmapper --show-exploited --output exploited.html
    Displays the latest exploited vulnerabilities and generates an HTML report.

euvdmapper --show-exploited --output exploited.json
    Displays the latest exploited vulnerabilities and exports to JSON.

euvdmapper --vendor Fortinet --output fortinet.html
    Filters vulnerabilities by vendor and generates an HTML report.

euvdmapper --product FortiOS --output fortios.csv
    Filters vulnerabilities by product and exports to CSV.

euvdmapper --keyword firewall --vendor Fortinet
    Searches by keyword and filters by vendor.

euvdmapper --keyword firewall --vendor Fortinet --product FortiGate --output combo.json
    Full filter: keyword + vendor + product with export.

euvdmapper --input watchlist.yaml --alerts
    Loads a YAML-based custom vendor/product watchlist and generates interactive HTML + CSV
    reports with CVSS-based risk levels, alt IDs, and filterable UI.

euvdmapper --keyword fortinet --no-banner | jq .
    # raw JSON output (no banner)

euvdmapper --last --output last.json
    # fetches last 8 entries (API cap: max 8)

euvdmapper --critical --output critical.csv
    # fetches last 8 critical entries (API cap: max 8)

euvdmapper --enisa-id EUVD-2025-1234
    # lookup by ENISA internal ID

euvdmapper --advisory-id cisco-sa-20210315-abcd
    # fetch full advisory metadata

📂 Output Formats

Format Description
.json Machine-readable structured output
.csv Spreadsheet-friendly tabular data
.html Interactive report with filterable UI

🔔 HTML reports support browser search, color-coding by CVSS, and filter dropdowns.


📸 Preview

IMG2 IMG1

https://github.com/user-attachments/assets/5a2b1196-dfaa-49f9-9b52-8bede5bc5804


🙋‍♂️ Author

Developed by: Ferdi Gül
📧 Email: 0xfrd1gul@gmail.com
🔗 LinkedIn: linkedin.com/in/ferdigul
💻 GitHub: github.com/FerdiGul


📝 License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

euvdmapper-1.7.tar.gz (13.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

euvdmapper-1.7-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file euvdmapper-1.7.tar.gz.

File metadata

  • Download URL: euvdmapper-1.7.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.10

File hashes

Hashes for euvdmapper-1.7.tar.gz
Algorithm Hash digest
SHA256 f1386dec40ee0d131db4a701676cfcf066cad4d207c098f3e39d89005c85a4dd
MD5 476a321c0fbe44e042e62a2b753f0105
BLAKE2b-256 4426796ddff984cba1570c007e80d0e3b9b3f61a55978f9bbadf77d16a959544

See more details on using hashes here.

File details

Details for the file euvdmapper-1.7-py3-none-any.whl.

File metadata

  • Download URL: euvdmapper-1.7-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.10

File hashes

Hashes for euvdmapper-1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 5e99974952d166bf358ff1e81756162795141107d775c9cb7f5150bc19fcb897
MD5 c98554ce306e3f071bd9a5ca9a863dc5
BLAKE2b-256 7ef7271a49c77a23a7d064bffa7f4fc388067d65006bb9327d411f05602ace22

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page