-
Notifications
You must be signed in to change notification settings - Fork 464
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
GSoC 2021 idea: Checker creation helper scripts #1063
Comments
Note that this script wouldn't take very long to write -- I'd guess a week of work for an inexperienced student, a day or two for an experienced one, so if applying for this idea you'll want to spend time working out related tasks and improvements to make a full 175 hours worth of work. You could probably pad it out with "and then I spend the rest of my summer trying it on every package in centos" if you had to. |
@terriko, I new to this project and I want to contribute, Could you please tell me beside python what other tech stack is necessary to get started with this project. Thanks in advance |
@Alabhya268 it depends on what you mean by "tech stack" but for this particular project idea, you'd need to know python and become comfortable with a number of file utilities commonly used on Linux (e.g. file, grep, various extraction tools, strings, and so on. As you might expect, if you want to write checker helper scripts you'd need to understand how to write a checker, so the checker readme gives some more details. The ideal candidate for this particular project would have successfully written at least one checker. If you want to know more generally for all projects across cve-bin-tool, our general gsoc questions thread is the right place to post questions. |
Adding a link for clarity: this script would likely start by reproducing what we describe in detail in the checkers README. This is the part that I think should only take a week (or potentially less), since it's already pretty well-documented. From there, finessing it to improve the quality of checkers you build from it, testing it extensively against real packages, documenting and writing unittests for it will likely take up the rest of the summer. |
Hey everyone, is this issue still available? I'd like to attempt to tackle it, so I have been following the instructions on the gsoc page |
@CabTheProgrammer Yes, it's still available. Since this is a GSoC project idea and not a regular issue, it's "available" up until we choose a candidate for the project and we likely won't merge contributions related to it before the project announcements go out on May 17th. If you're looking for a bugs to fix as part of a GSoC application, this is not good for that, and you'd likely want to take a look at the things marked "good first issue" instead. |
Steps you can follow @peb-peb :
|
@imsahil007 Thank you for the help! I'll remember all these points while making the script :) |
Finished as part of GSoC 2021 |
While writing #1062 I suggested that we could look in to providing some scripts to simplify the process of checker creation, specificially because windows users don't have access to all the same utility scripts we use, and a lot of that functionality is already built into the tool.
But I think we might want to do this in a grander scale: what would a helper tool for new checkers look like?
Input: a set of .rpm, .deb, .tar.gz or other files that represent packaged versions of the software to be detected, including the product name and version you're expecting to find in each. (similar to what we put in our long tests). You'd specifically want multiple versions of the same product here, so we could tell if a string was actually common across versions or not.
Output:
Basically, start by automating the process found in the checkers README to get some candidate strings, maybe even formulate the output as a full checker to minimize cut/paste errors.
Once you get that working, you could probably iterate to make it better:
In the course of writing this tool, I expect you'd be able to add new checkers as you built and tested to cve-bin-tool as well.
The text was updated successfully, but these errors were encountered: