Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implements pipeline for automated vulnerability fetching and processing #399

Merged
merged 5 commits into from
Jul 23, 2024

Conversation

lauraschauer
Copy link
Contributor

Objective

This PR aims to introduce a new feature that leverages the NVD to retrieve and analyze newly released CVEs. By fetching NVD data, filtering out undesired entries, and using a parallel approach for processing vulnerabilities, we enhance the tool's ability to find fixes for vulnerabilities automatically.

Key Changes

Filtering: We have implemented a filtering mechanism to ensure that Prospector processes only vulnerabilities linked to OSS products. This involves extracting the product name from the vulnerability description and matching it with a previously mapped list of projects. This list includes additional metadata like the corresponding GitHub repository for each product.

Parallel Processing: To improve processing, we've introduced parallel execution using a worker-based architecture. Tasks are distributed across multiple workers managed by a Redis queue.

Database Storage: We have implemented a database system to store the outcomes of CVE analysis. The db contains both raw and processed vulnerability data, allowing for easier management via SQL queries. Furthermore, the database simplifies future studies on pipeline coverage as well as Prospector capabilities.

REST API and Frontend: REST API endpoints have been developed to provide access to the database, fetch new CVEs from NVD by specifying a time range, filter and analyse them, and view the results. Additionally, a simple webpage has been created to facilitate interaction with the APIs.

@copernico copernico merged commit 4753a3e into SAP:main Jul 23, 2024
3 checks passed
@lauraschauer lauraschauer deleted the backend-and-parallel branch July 24, 2024 08:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants