Skip to content

GSoC 2022 idea: Improve language-specific package support #1526

Closed
@terriko

Description

@terriko

CVE Binary Tool was originally intended to work with compiled languages and binary files, but we've expanded to do known component lists in a few different formats. Recently, @anthonyharrison improved our support for .jar files by reading the meta data from those files, and @BreadGenie has earlier work to support listings from Linux package repositories. We'd like to see about doing that for other popular package repository ruby gems, npm, improving our python support, etc.

This project will probably involve doing a few things:

  • adding parsers to read package data of various types
  • potentially adding mapping databases to translate package names to {vendor, product} pairs (see Improve product vendor matching for component list scanning #1504)
  • exploring ways to call (or prompt the users to call) language-specific tools to get additional vulnerability/security data

Some languages/package managers of potential interest:

  • npm (javascript)
  • ruby (ruby gems)
  • go (packages could be vendored or not)
  • rust
  • improving python support (e.g. add mappings and magic so requirements.txt can be scanned without converting to .csv)

A 175hr project could choose 2-3 package list types to support and work on that.
For a 350hr project, I'd definitely want to see some plan for a mapping database/data structure with the following:

Hours

175 or 350, scaled depending on how many package types you intend to tackle and whether you want to add the mapping database

Difficulty level

  • beginner to intermediate

Recommended skills

  • databases, json, experience with other package managers

Metadata

Metadata

Assignees

No one assigned

    Labels

    gsocTasks related to our participation in Google Summer of Code

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions