cve-bin-tool icon indicating copy to clipboard operation
cve-bin-tool copied to clipboard

GSoC 2022: Start Here

Open terriko opened this issue 2 years ago • 1 comments

Google Summer of Code 2022 has been announced! CVE Binary Tool is hoping to participate in 2022 under the Python Software Foundation umbrella.

This year contributors can be anyone over 18 (you do not need to be enrolled in a post-secondary institution) and projects can be either 175hrs of work or 350hrs of work (with pay scaling appropriately). We don't fully know the details of the timing, but the hours and start/end dates will be more flexible than in the past.

About CVE Binary Tool

The CVE Binary Tool is a free, open source tool to help you find known vulnerabilities in software, using data from the National Vulnerability Database (NVD) list of Common Vulnerabilities and Exposures (CVEs).

The tool has two main modes of operation:

  1. A binary scanner which helps you determine which packages may have been included as part of a piece of software. There are around 100 checkers which focus on common, vulnerable open source components such as openssl, libpng, libxml2 and expat.
  2. Tools for scanning known component lists in various formats, including .csv, several linux distribution package lists, and several Software Bill of Materials (SBOM) formats.

It is intended to be used as part of your continuous integration system to enable regular vulnerability scanning and give you early warning of known issues in your supply chain.

Dates:

  • Organizations apply February 2022. We won't know for sure if we're in until after applications close. We'll be listed as part of "Python Software Foundation"
  • Contributors apply April 2022.

Project ideas:

  1. #1525 (intermediate)
  2. #1526 (beginner to intermediate)
  3. #1608 (beginner to intermediate)
  4. #1618 (intermediate to advanced)

Getting started:

It can be really overwhelming figuring out how to start in a new project, so here's some steps we recommend:

Getting Started:

  1. Follow the README and make sure you can run the tool. Try running it against random things on your hard drive and see if it finds anything. On a Linux system, your /bin directory usually yields some interesting results.

  2. Run the tests. The CVE Binary tool has a number of unit tests. Make sure you know how to run them, and if you've never used pytest before, you might want to read up on it (we also have some tests still using python's unittest, but we're tending towrads pytest for new tests). Figure out how to run a single test!

  3. Read the documentation. That should help you figure out what the tool is for and how people use it in more detail.

  4. Read the new contributor guide

Some potential first contributions:

  1. File issues. You might encounter a bug or something confusing in the documentation. Let us know if you do!
  2. Update documentation. We especially appreciate documentation feedback from new users, since your "beginner mind" means you see things differently than experienced users, and will catch places where the documentation could be more detailed or improved.
  3. Write a new test. Instructions for writing tests are here. This can be your first contribution!
  4. Try fixing a bug. We have a few flagged as "good first issue". A number of those are new checkers, which although they might sound challenging are often pretty easy to write. Instructions on how to add a new checker are here.

We expect prospective GSoC students to have made at least one code contribution if they want their application to be considered, so now's a good time to get that going! You can ask for as much help as you need.

Got stuck?

  1. Ask in the GSoC tagged issues! (GSoC 2022 getting started is a good place, or file a new issue with your question.)
  2. We have a chat server on gitter. That allows for "live" chat but no one's actually sitting there 24/7 so you should expect to post your question and get an answer hours later when someone sees it.

terriko avatar Dec 15 '21 00:12 terriko

Added @anthonyharrison 's new project idea to the list above:

  • #1608

terriko avatar Mar 23 '22 17:03 terriko

Closing in preparation for GSoC 2023.

terriko avatar Oct 25 '22 21:10 terriko