This library allows you to parse data from security advisories of certain projects to extract information about security issues. The parsed information includes metadata such as impact, CVSS score, summary, description, and others; for a full list, see the advisory_parser/flaw.py file.
DISCLAIMER: Much of the advisory parsing is fairly fragile. Because web pages change all the time, it is not uncommon for parsers to break when a page is changed in some way. Also, the advisory parsers only work with the latest version of the advisory pages.
The need for parsing raw security advisories in this way could be avoided if vendors provided their security pages in a machine readable (and preferably standardized) format. An example of this would be Red Hat’s security advisories that can be pulled in from a separate Security Data API (RHSA-2016:1883.json) or downloaded as an XML file (cvrf-rhsa-2016-1883.xml), or OpenSSL’s list of issues available in XML (vulnerabilities.xml).
If you are a vendor or an upstream project owner interested in providing your security advisories in a machine readable format and don’t know where to start, feel free to reach out to mprpic@redhat.com.
Currently available parsers include:
Project |
Example URL |
|---|---|
Google Chrome |
https://chromereleases.googleblog.com/2017/06/stable-channel-update-for-desktop_15.html |
Adobe Flash |
https://helpx.adobe.com/security/products/flash-player/apsb17-17.html |
Jenkins |
|
MySQL |
http://www.oracle.com/technetwork/security-advisory/cpujul2017verbose-3236625.html |
phpMyAdmin |
|
Wireshark |
Installation
pip install advisory-parser
Usage
from pprint import pprint
from advisory_parser import Parser
url = 'https://helpx.adobe.com/security/products/flash-player/apsb17-17.html'
flaws, warnings = Parser.parse_from_url(url)
for flaw in flaws:
print()
pprint(vars(flaw))
Release files for advisory-parser 1.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| advisory_parser-1.14.tar.gz | 93.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| advisory_parser-1.14-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 111.8 kB
Release files / advisory_parser-1.14.tar.gz
| Download URL | advisory_parser-1.14.tar.gz |
|---|---|
| Size | 93.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
60224f94a5182ebfcf427263b7b86d71ec882444bf25daf8bf03fd1efe52523a
|
|
BLAKE2b-256 checksum How to use checksums |
04a5053374e0f2bbb6f1a9b3e96635b44e1b98cbdc80489c47d2f3ae7204b8ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|
Release files / advisory_parser-1.14-py2.py3-none-any.whl
| Download URL | advisory_parser-1.14-py2.py3-none-any.whl |
|---|---|
| Size | 18.8 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
607505b11570d0c0a6f54fc4e85e1048438f37043d3756d57eff1c3393b84549
|
|
BLAKE2b-256 checksum How to use checksums |
f1670b1f5f551d3262ad9021501f8625afd944395c8060433619c8e3d24ee889
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.6
|