Skip to content

Commit 62ae407

Browse files
doc: Add details on language specific checking (Fixes #1551) (#1561)
1 parent 611aeec commit 62ae407

File tree

2 files changed

+25
-2
lines changed

2 files changed

+25
-2
lines changed

.github/actions/spelling/allow.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -357,6 +357,7 @@ Vorbis
357357
VPkg
358358
webkitgtk
359359
website
360+
whl
360361
wiki
361362
wikipedia
362363
willmcgugan

README.md

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ The CVE Binary Tool is a free, open source tool to help you find known vulnerabi
1515
The tool has two main modes of operation:
1616

1717
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.
18-
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.
18+
2. Tools for scanning known component lists in various formats, including .csv, several linux distribution package lists, language specific package scanners and several Software Bill of Materials (SBOM) formats.
1919

2020
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.
2121

@@ -24,7 +24,7 @@ For more details, see our [documentation](https://cve-bin-tool.readthedocs.io/en
2424
- [CVE Binary Tool quick start / README](#cve-binary-tool-quick-start--readme)
2525
- [Installing CVE Binary Tool](#installing-cve-binary-tool)
2626
- [Most popular usage options](#most-popular-usage-options)
27-
- [Using the tool offline](#using-the-tool-offline)
27+
- [Using the tool offline](#using-the-tool-offline)
2828
- [Finding known vulnerabilities using the binary scanner](#finding-known-vulnerabilities-using-the-binary-scanner)
2929
- [Finding known vulnerabilities in a list of components](#finding-known-vulnerabilities-in-a-list-of-components)
3030
- [Scanning an SBOM file for known vulnerabilities](#scanning-an-sbom-file-for-known-vulnerabilities)
@@ -33,6 +33,7 @@ For more details, see our [documentation](https://cve-bin-tool.readthedocs.io/en
3333
- [Configuration](#configuration)
3434
- [Using CVE Binary Tool in GitHub Actions](#using-cve-binary-tool-in-github-actions)
3535
- [Binary checker list](#binary-checker-list)
36+
- [Language Specific checkers](#language-specific-checkers)
3637
- [Limitations](#limitations)
3738
- [Requirements](#requirements)
3839
- [Feedback & Contributions](#feedback--contributions)
@@ -63,6 +64,8 @@ To run the binary scanner on a directory or file:
6364
cve-bin-tool <directory/file>
6465
```
6566

67+
Note that this option will also use any [language specific checkers](#language-specific-checkers) to find known vulnerabilities in components.
68+
6669
### Finding known vulnerabilities in a list of components
6770

6871
To scan a comma-delimited (CSV) or JSON file which lists dependencies and versions:
@@ -215,6 +218,25 @@ All the checkers can be found in the checkers directory, as can the
215218
Support for new checkers can be requested via
216219
[GitHub issues](https://github.com/intel/cve-bin-tool/issues).
217220

221+
## Language Specific checkers
222+
223+
A number of checkers are available for finding vulnerable components in specific language packages.
224+
225+
### Java
226+
227+
The scanner examines the `pom.xml` file within a Java package archive to identify Java components. The package names and versions within the archive are used to search the database for vulnerabilities.
228+
229+
JAR, WAR and EAR archives are supported.
230+
231+
### Python
232+
233+
The scanner examines the `PKG-INFO` and `METADATA` files for an installed Python package to extract the component name and version which
234+
are used to search the database for vulnerabilities.
235+
236+
The tool supports the scanning of the contents of any Wheel package files (indicated with a file extension of .whl) and egg package files (indicated with a file extension of .egg).
237+
238+
The `--package-list` option can be used with a Python dependencies file `requirements.txt` to find the vulnerabilities in the list of components.
239+
218240
## Limitations
219241

220242
This scanner does not attempt to exploit issues or examine the code in greater

0 commit comments

Comments
 (0)