Skip to main content

ODM models for CVE, CWE, and CPE management

Project description

Python CI

CIRM ODMs

CIRM ODMs is a Python package developed by CyberSecurity S.r.l. to centralize and validate data models used in the CIRM project — a framework for managing cyber risk, with a specific focus on software vulnerability management.

This package contains all the Object Document Mappers (ODMs) built with Pydantic and Beanie, designed to work with MongoDB and ensure reliable, strongly-typed data validation.

The goal is to support internal use within the CIRM ecosystem, while also making the models publicly available for reuse in other CyberSecurity-related projects.


Project Context

The CIRM (Continuous Improvement Risk Management) platform automates the handling of software vulnerabilities by integrating:

  • Official data sources such as the National Vulnerability Database (NVD), which provides CVE records, CWE categorizations, and CPE identifiers.
  • AI models for automatically predicting important parameters, such as:
    • CVSS scores (vulnerability severity),
    • CWE classes (weakness types),
    • Affected CPEs (platforms or software).

The extracted and predicted data is stored in a MongoDB database and validated through the Pydantic/Beanie models provided in this package.


Package Features

  • ODMs for CVE, CWE, and CPE entities
  • MongoDB-compatible schemas
  • Automatic data validation
  • Modern packaging with pyproject.toml and Flit

Technology Stack

  • Python
  • Pydantic / Beanie
  • Flit for packaging and publishing
  • Central configuration via pyproject.toml

Project Structure

.
├── .github/workflows/         # GitHub Actions for build & publish
├── .devcontainer/             # VSCode DevContainer setup
│   ├── Dockerfile
│   └── devcontainer.json
├── .vscode/settings.json      # Project-specific VSCode settings
├── src/                       # Source code of the package
├── tests/                     # Unit tests for ODMs
├── pyproject.toml             # Project metadata and config
└── README.md                  # Project documentation

Installation

Once published to PyPI:

pip install cirm-odm

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

cirm_odm-0.1.9.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

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

cirm_odm-0.1.9-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file cirm_odm-0.1.9.tar.gz.

File metadata

  • Download URL: cirm_odm-0.1.9.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.5

File hashes

Hashes for cirm_odm-0.1.9.tar.gz
Algorithm Hash digest
SHA256 de6069e37da0f428303b12951670967ef5faf30afdbc582b0a13db7697c91c3c
MD5 0e713ffab4f0618f4cc0280abb0ed0c8
BLAKE2b-256 003beea65c0d521331e18f63329fae8b829eac5220417dced6c06d08c9a958f1

See more details on using hashes here.

File details

Details for the file cirm_odm-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: cirm_odm-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.5

File hashes

Hashes for cirm_odm-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 9c44204ad7410733daccf0f1e5caf5961e56b852e432502add7a9668587c38ab
MD5 d51fbcad037a801729e9375c682e40d0
BLAKE2b-256 14a2281a8ea4aabd71fb7845fdb8b4bfba6b5a4ccbfe5c7c4b9e44c3bed8e98c

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