Consult package vulnerabilities outside upload/download phase

Open
#4 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Quiet
Tech stack
python
Domain
api, backend, security

Research direction

Start by tracing the existing upload, download, and Scan/Task analysis entry points that consult package vulnerabilities. Review how permissions, task completion, and vulnerability results are exposed today. Done means a REST client can retrieve current vulnerabilities for a package without downloading it or requiring write permission to trigger a scan.

Written by the indexing model from the issue text.

Description

Context

Currently the 3 ways in which the vulnerabilities of a package can be consulted/verified are:

  • Upload phase
  • Download phase
  • Scan/Task analysis

The Vulnerabilies Database in Trustify is always changing so a Non Vulnerable package can have Vulnerabilities tomorrow

Problem statement

A REST API client (e.g. UI app or similar) would like to know the vulnerabilities by which certain package is affected without downloading the package.

Current approach:

  • Three steps:
    • Scan/Task package
    • Wait for the task to complete
    • Verify the vulnerabilities for the package

Limitations of the current approach:

  • Trigger a Scan/Task requires a Write permissions while those who want to the package vulnerabilities might only need Read permissions
  • The Three steps system described above, while easy to be executed manually, it brings its challenges when automated on the client side (e.g.)
    • The UI would need to continuously fetch data to know whether or not the Scan/Task has finished while at the same time anyone else could be triggering a new scan in parallel
Dominant language
Python
Stars
0
Forks
3
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.