Skip to main content

A library for checking CVE vulnerabilities in software dependencies

Project description

CVE Checker Library

CVE Checker is a Python library for checking Common Vulnerabilities and Exposures (CVEs) in software dependencies. It provides tools to scan dependency files, check specific packages for vulnerabilities, assess risk, and generate comprehensive reports.

Features

  • Fetch CVE data from the National Vulnerability Database (NVD)
  • Scan dependency files (requirements.txt, package.json, etc.) for vulnerabilities
  • Check specific packages and versions for known vulnerabilities
  • Calculate risk scores based on CVSS scores and exploitability
  • Generate detailed reports in JSON or HTML format
  • Command-line interface for easy use

Installation

You can install the CVE Checker Library using pip:

pip install cve-checker

For the latest version, you can install directly from the GitHub repository:

pip install git+https://github.com/bassemAbidi/cve_checker.git

Usage

Command-line Interface

The CVE Checker Library provides a command-line interface for quick vulnerability checks.

To check a dependency file:

cve_checker --dependencies path/to/requirements.txt

To check a specific package:

cve_checker --package package_name --version package_version

Python API

You can also use the CVE Checker Library in your Python code:

import asyncio
from cve_checker import CVEChecker

async def main():
    checker = CVEChecker()
    
    # Check dependencies
    report = await checker.check_dependencies('path/to/requirements.txt')
    print(report)
    
    # Check specific package
    report = await checker.check_package('package_name', '1.0.0')
    print(report)

asyncio.run(main())

Components

The CVE Checker Library consists of several components:

  1. CVE Data Fetcher: Fetches CVE data from the NVD API.
  2. Vulnerability Checker: Checks specific software packages for known vulnerabilities.
  3. Dependency Scanner: Scans project dependencies for vulnerabilities.
  4. Risk Scorer: Calculates risk scores based on CVSS scores and exploitability.
  5. Report Generator: Generates comprehensive reports of detected vulnerabilities.

Contributing

Contributions to the CVE Checker Library are welcome! Please refer to the CONTRIBUTING.md file for guidelines on how to contribute.

License

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

Changelog

Version 0.1.1

  • Updated documentation
  • Minor bug fixes and improvements

Version 0.1.0

  • Initial release
  • Basic functionality for CVE checking and reporting

Contact

If you have any questions or feedback, please open an issue on the GitHub repository or contact the maintainer:

Bassem Abidi (abidi.bassem@me.com)

PyPI Package

The CVE Checker Library is available on PyPI: https://pypi.org/project/cve-checker/

PyPI version GitHub

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

cve_checker-0.1.1.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

cve_checker-0.1.1-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file cve_checker-0.1.1.tar.gz.

File metadata

  • Download URL: cve_checker-0.1.1.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for cve_checker-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d2d5248bb8c61aff06b1e7f271c3e9b7b4aef49121a36e04d571fa9a88a047e5
MD5 f60fc11b9faa93f688ee4c44ddcdb196
BLAKE2b-256 132ad030c1b4bcd73346d142725475fa08b08479658714801b88a1a5dba13af9

See more details on using hashes here.

File details

Details for the file cve_checker-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: cve_checker-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for cve_checker-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 321f2a6bc2219c8256bf523d0dc7a60a91a4c6aad55b6fa3d41ac276c25c53ba
MD5 5f4147d9ba934d8585e4100f33d4a293
BLAKE2b-256 f2e6f68955cd85f7aab17d9ddf53cdf0ae4dac0e95d3b48c9fc9e1acfe910f83

See more details on using hashes here.

Supported by

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