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

Make VulnerabilitiesFromGitHubAdvisories great #144

Open
4 tasks
sourabhsparkala opened this issue Apr 27, 2020 · 0 comments
Open
4 tasks

Make VulnerabilitiesFromGitHubAdvisories great #144

sourabhsparkala opened this issue Apr 27, 2020 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@sourabhsparkala
Copy link
Member

sourabhsparkala commented Apr 27, 2020

VulnerabilitiesFromGitHubAdvisories is not a full-fledge DataProvider

The above Data provider does not handle all the PackageManagers. Also, it doesn't recursively parse through all the types of PackageManagers config files

  • pom.xml for MAVEN
  • build.gradle for GRADLE
  • package-lock.json and package.json for NPM
  • yarn.lock and package.json for YARN
  • .csproj, .vbproj, .vcxproj, .fsproj, packages.config and .nuspec for DOTNET
  • Gemfile.lock, Gemfile and .gemspec for RUBYGEMS
  • composer.json and composer.lock for COMPOSER

Hence, we need to generalize how VulnerabilitiesFromGitHubAdvisories is looking for config files and extracting the project identifier

E.g: ecosystem MAVEN and identifier com.fasterxml.jackson.core:jackson-databind for GitHub project FasterXML/jackson-databind

Things to do

  • Recursively find all the possible config files associated with the PackageManagers
  • Parse through them to get the identifier
  • Make sure that the recursive search also finds identifiers of its sub-modules and sub-projects
  • The Data Provider must return all possible advisories for all the identifiers found
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants