-
Notifications
You must be signed in to change notification settings - Fork 23
Update: Reachability Plugin #426
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
base: main
Are you sure you want to change the base?
Conversation
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
Co-authored-by: Ryan Mast <[email protected]>
Angrimportfixes
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
|
Ok, now it should be working, thanks for being patient with all of the failed pull requests. |
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
| authors = [ | ||
| {name = "Seth Bredbenner", email = "[email protected]"}, | ||
| ] | ||
| description = "Surfactant plugin for running grype on files" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Description here needs updating
| ## Important Licensing Information | ||
| Main Project License (Surfactant): MIT License. | ||
|
|
||
| Plugin License: MIT License, but it includes and uses cve-bin-tool, which is GPL-3.0 licensed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cve-bin-tool line here does not apply to this plugin.
| After installing the plugin, run Surfactant to generate an SBOM as usual and entries for ELF | ||
| and PE files will contain a metadata object with the information that checksec.py was able | ||
| to get about security related features. | ||
|
|
||
| After the plugin installation, run Surfactant as you normally would to create an SBOM. For binary files analyzed by this plugin, additional JSON files will be generated containing vulnerability data extracted from the binaries. If there are duplicate hashed files, the extractor will check if they have the exported functions entries and skip remaking the output file if so. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These lines don't describe the reachability plugin.
| Example: | ||
| Output Filename: `reachability.json` | ||
|
|
||
| ```json | ||
| { | ||
| "filename": { | ||
| "exp_func": { | ||
| "library": [ | ||
| "imp_func1", | ||
| "imp_func2" | ||
| ] | ||
| } | ||
| } | ||
| } | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this description is accurate either -- the json blob looks slightly different if I'm remembering correctly, and is added to the metadata list for software entries rather than being in a separate file.
| } | ||
| ``` | ||
|
|
||
| The plugin's functionality can be toggled via Surfactant's plugin management features, using the plugin name `surfactantplugin_reachability.py` as defined in the `pyproject.toml` under the `project.entry-points."surfactant"` section. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The plugin name to enable/disable it is surfactantplugin_reachability, without the .py suffix.
✅ No SBOM Changes DetectedFor commit 2f95acc (Run 16634709950) |
Summary
a plugin that finds the reachability of imported functions from exported functions
If merged this pull request will
Proposed changes
This is the 1.0 of the plugin. It returns a python dictionary of the imported functions reachable by the exported function of every binary.