Skip to content

Commit 1036ed2

Browse files
authored
Update documentation for 1.0 release (#640)
* add release notes * regenerate output for CSV2CVE.md * remove some obsolete output from MANUAL.md * update version info to be 1.0 * mark us as Production/stable in setup.py and fix the license data
1 parent d6a86e5 commit 1036ed2

File tree

6 files changed

+139
-68
lines changed

6 files changed

+139
-68
lines changed

CSV2CVE.md

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -41,33 +41,16 @@ wontwork,no,7.7
4141
Example output:
4242
---------------
4343
```console
44-
(venv3.6) terri@sandia:~/Code/cve-bin-tool$ python -m cve_bin_tool.csv2cve test.csv
44+
(venv3.7) [terri@cedar cve-bin-tool]$ python -m cve_bin_tool.csv2cve test/csv/test.csv
4545
cve_bin_tool.CVEDB - INFO - Using cached CVE data (<24h old). Use -u now to update immediately.
46-
47-
+=================================================================+
48-
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4946
+=================================================================+
50-
|| ____ __ __ _____ ______ __ __ _ ||
51-
|| /$$$$| \$\ /$/ |$$$$$| |$$$$$$\ |$$| |$$\ |$| ||
52-
|| |$$ \$\ /$/ |$____ |$____$/ |$$| |$$$\ |$| ||
53-
|| |$$ \$\ /$/ |$$$$$| == |$$$$$$\ |$$| |$|\$\|$| ||
54-
|| |$$ \$\/$/ |$____ `` |$_____$ |$$| |$| \$$$| ||
55-
|| \$$$$| \$$/ |$$$$$| |$$$$$$/ |$4| |$| \$$| ||
56-
|| ````` `` `````` `````` ``` `` ``` ||
57-
|| ____________ ________ ________ __ ||
58-
|| |$$$$$$$$$$$$| /$$$$$$$$\ /$$$$$$$$\ |$$| ||
59-
|| |$$| |$$| |$$| |$$| |$$| |$$| ||
60-
|| |$$| |$$| |$$| |$$| |$$| |$$| ||
61-
|| |$$| |$$| |$$| |$$| |$$| |$$| ||
62-
|| |$$| |$$| |$$| |$$| |$$| |$$|_______ ||
63-
|| |$$| \$$$$$$$$/ \$$$$$$$$/ |$$$$$$$$$$| ||
64-
|| ```` ```````` ```````` ```````````` ||
47+
| ___ _ __ ____ ___ ___ _ _ _____ ___ ___ _ |
48+
| / __| \ / /| ___] | )[ ]| \ | | [_ _]| _ || _ || | |
49+
| | |__ \ \/ / | _]_ = | < | | | |\| | = | | ||_||||_||| |__ |
50+
| \___| \__/ |___ ] |___)[___]|_| \_| |_| |___||___||____| |
51+
| |
6552
+=================================================================+
66-
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
67-
+=================================================================+
68-
69-
+=================================================================+
70-
| CVE Binary Tool Report Generated: 2020-04-24 04:04:27 |
53+
| CVE Binary Tool Report Generated: 2020-04-30 11:04:24 |
7154
+=================================================================+
7255

7356
+=================================================================+
@@ -117,4 +100,4 @@ cve_bin_tool.CVEDB - INFO - Using cached CVE data (<24h old). Use -u now to upda
117100
+--------------------+-----------+--------------------+-----------+
118101
| no | 7.7 | UNKNOWN | UNKNOWN |
119102
+--------------------+-----------+--------------------+-----------+
120-
```
103+

MANUAL.md

Lines changed: 7 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -171,6 +171,8 @@ This option controls the frequency of updates for the CVE data from the National
171171
Output modes
172172
------------
173173

174+
Although the examples in this section show results for a single library to make them shorter and easier to read, the tool was designed to be run on entire directories and will scan all files in a directory if one is supplied.
175+
174176
### -o OUTPUT_FILE, --output-file OUTPUT_FILE
175177

176178
This option allows you to specify the filename for the report, rather than having CVE Binary Tool generate it by itself.
@@ -227,44 +229,10 @@ libgcrypt,1.6.0,CVE-2018-6829,HIGH
227229

228230
### Output verbosity
229231

230-
The tool has several different output modes, from most information to least as follows:
231-
232-
1. Regular mode (no flag) prints only the final summary of findings
233-
2. Quiet mode (-q) suppresses all output but exits with an error number indicating the number of files with known CVEs. This is intended for continuous integration and headless tests, while the other modes are all more human-friendly.
234-
3. Log mode (-l log_level) prints logs of the specified log_level and above. The default log level is info. The logs can be suppressed by using quiet mode.
235-
236-
Although the examples in this section show results for a single library to make them shorter and easier to read, the tool was designed to be run on entire directories and will scan all files in a directory if one is supplied.
237-
238-
#### Default Mode
239-
240-
The default mode for the cve-bin-tool prints only a final summary of results,
241-
without CVE descriptions or information while the scan is progressing. It
242-
outputs a CSV with the results to stdout. In the form of `package name, version,
243-
CVE number, CVE severity`. Below is an example of it being run on our expat test file:
244-
245-
```console
246-
(venv3.6) terri@sandia:~/Code/cve-bin-tool$ python -m cve_bin_tool.cli test/binaries/test-expat-2.0.1.out
247-
Updating CVE data. This will take a few minutes.
248-
Last Update: 2019-08-09
249-
Local database has been updated in the past 24h.
250-
New data not downloaded. Use "-u now" to force an update
251-
252-
Overall CVE summary:
253-
There are 1 files with known CVEs detected
254-
Known CVEs in expat 2.0.1:
255-
expat,2.0.1,CVE-2012-6702,MEDIUM
256-
expat,2.0.1,CVE-2016-0718,CRITICAL
257-
expat,2.0.1,CVE-2016-5300,HIGH
258-
expat,2.0.1,CVE-2018-20843,HIGH
259-
expat,2.0.1,CVE-2012-0876,MEDIUM
260-
expat,2.0.1,CVE-2012-1147,MEDIUM
261-
expat,2.0.1,CVE-2012-1148,MEDIUM
262-
expat,2.0.1,CVE-2013-0340,MEDIUM
263-
```
264-
265-
This mode is meant to give the user enough information that they can
266-
investigate further.
232+
As well as the modes above, there are two other output options to decrease or increase the number of messages printed:
267233

234+
1. Quiet mode (-q) suppresses all output but exits with an error number indicating the number of files with known CVEs. This is intended for continuous integration and headless tests, while the other modes are all more human-friendly.
235+
2. Log mode (-l log_level) prints logs of the specified log_level and above. The default log level is info. The logs can be suppressed by using quiet mode.
268236

269237
### Quiet Mode
270238

@@ -279,7 +247,8 @@ terri@sandia:~/Code/cve-bin-tool$ echo $?
279247
1
280248
```
281249

282-
Note that errors are returned as negative numbers.
250+
Note that errors are returned as negative numbers. Any positive number
251+
indicates that CVEs may be present in the code. A good result here is 0.
283252

284253
### Logging modes
285254

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,12 +139,12 @@ Windows has `ar` and `Expand` installed in default, but `7z` in particular might
139139
CSV2CVE
140140
-------
141141

142-
The CVE Binary Tool package also includes a tool called `csv2cve` which is a helper tool that allows you to search the local database for a list of known packages. This can be useful if the list of packages is known.
142+
The CVE Binary Tool package also includes a tool called `csv2cve` which is a helper tool that allows you to search the local database for a list of known products. This can be useful if the list of products is known.
143143

144144
Usage:
145145
`csv2cve <csv_file>`
146146

147-
The CSV file must contain the following columns: `vendor,package,version` where the vendor and package names are exact matches to the strings in the National Vulnerability Database. You can read more about how to find the correct string in [the checker documentation](https://github.com/intel/cve-bin-tool/blob/master/cve_bin_tool/checkers/README.md), and the [csv2cve manual](https://github.com/intel/cve-bin-tool/blob/master/CSV2CVE.md) has more information on using this tool.
147+
The CSV file must contain the following columns: `vendor,product,version` where the vendor and product names are exact matches to the strings in the National Vulnerability Database. You can read more about how to find the correct string in [the checker documentation](https://github.com/intel/cve-bin-tool/blob/master/cve_bin_tool/checkers/README.md), and the [csv2cve manual](https://github.com/intel/cve-bin-tool/blob/master/CSV2CVE.md) has more information on using this tool.
148148

149149
Note that `csv2cve`, unlike `cve-bin-tool`, will work on *any* product known in the National Vulnerability Database, not only those that have checkers written.
150150

RELEASE.md

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
# CVE Binary Tool Release Notes
2+
3+
## CVE Binary Tool 1.0
4+
5+
Release Date: 20 Apr 2020
6+
7+
This release includes major improvements to the way NVD data is used and
8+
stored. **If you have tried the development tree from Github, you may wish
9+
to run `cve-bin-tool -u now` after you upgrade to remove old data.**
10+
11+
There are now three output formats:
12+
13+
* Console (like before only prettier)
14+
* CSV (comma-delimted text, suitable for import into spreadsheets)
15+
* JSON (suitable for machine parsing)
16+
17+
And 17 new checkers (as well as improved tests for some of the old):
18+
* binutils
19+
* bluez
20+
* bzip2
21+
* ffmpeg
22+
* gnutls
23+
* gstreamer
24+
* hostapd
25+
* libcurl
26+
* libdb
27+
* ncurses
28+
* ngnix
29+
* openssh
30+
* python
31+
* rsyslog
32+
* strongswan
33+
* syslogng
34+
* varnish
35+
36+
Thanks to our many new and returning contributors for this 1.0 release. We have 21 new contributors since I last thanked people in 0.3.0:
37+
38+
* @abhaykatheria
39+
* @ableabhinav
40+
* @AkechiShiro
41+
* @ananthan-123
42+
* @bigbird555
43+
* @brainwane
44+
* @FReeshabh
45+
* @hur
46+
* @k-udupa2000
47+
* @mariuszskon
48+
* @Niraj-Kamdar
49+
* @nitishsaini706
50+
* @oh6hay
51+
* @param211
52+
* @Purvanshsingh
53+
* @SaurabhK122
54+
* @sbs2001
55+
* @shreyamalviya
56+
* @SinghHrmn
57+
* @svnv
58+
* @utkarsh261
59+
60+
And I'd like to make a quick list of our previous contributors, some of whom have continued to be active for this release:
61+
62+
* @bksahu
63+
* @CaptainDaVinci
64+
* @GiridharPrasath
65+
* @pdxjohnny
66+
* @PrajwalM2212
67+
* @rossburton
68+
* @sanketsaurav
69+
* @sannanansari
70+
* @terriko
71+
* @wzao1515
72+
73+
74+
Thanks also to the many people who reported bugs and helped us make things
75+
better!
76+
77+
I want to particularly thank all those involved with Google Summer
78+
of Code -- not only have you made our code better, but you've also helped us
79+
improve our onboarding process and just brought a huge amount of energy to
80+
this project in 2020.
81+
82+
83+
84+
## CVE Binary Tool 0.3.1
85+
Release Date: 27 Nov 2019
86+
87+
This release contains fixes so the CVE Binary Tool handles the new CVSS 3.1 data correctly.
88+
89+
You may also notice some new checkers thanks to our Hacktoberfest participants! We're still working on more robust tests before they're fully supported, but we figured it was more fun to give you the preview than specifically withold them. Have fun, and please file bugs if anything doesn't work for you so we know how to best to target our testing.
90+
91+
## CVE Binary Tool 0.3.0
92+
Release date: 13 Aug 2019
93+
94+
The 0.3.0 release adds Windows support to the cve-bin-tool, with many thanks to @wzao1515 who has been doing amazing work as our Google Summer of Code Student!
95+
96+
New checkers in this release:
97+
* icu
98+
* kerberos
99+
* libgcrypt
100+
* libjpeg
101+
* sqlite
102+
* systemd
103+
104+
New flags:
105+
* -s / --skip
106+
* allows you to disable a list of checkers
107+
* -m / --multithread
108+
* lets the scanner run in multithreaded mode for improved performance
109+
* -u / --update
110+
* allows you to choose if the CVE information is updated. Default is daily.
111+
112+
This release also contains a number of bugfixes and improved signatures.
113+
114+
Many thanks to our new contributors in this release:
115+
@wzao1515 @PrajwalM2212 @rossburton @GiridharPrasath @sannanansari @sanketsaurav @bksahu @CaptainDaVinci
116+
As well as the many people who reported bugs and helped us make things better!
117+
118+
## CVE Binary Tool 0.2.0
119+
Initial release, 18 Jan 2019.

cve_bin_tool/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
VERSION = "0.3.2"
1+
VERSION = "1.0"

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,9 @@
2727
license="GPLv3",
2828
keywords=["security", "tools", "CVE"],
2929
classifiers=[
30-
"Development Status :: 4 - Beta",
30+
"Development Status :: 5 - Production/Stable",
3131
"Intended Audience :: Developers",
32-
"License :: OSI Approved :: MIT License",
32+
"License :: OSI Approved :: GNU General Public License (GPL)",
3333
"Natural Language :: English",
3434
"Operating System :: OS Independent",
3535
"Programming Language :: Python :: 3.6",

0 commit comments

Comments
 (0)