Security flaw parser for upstream security advisories
Project description
Advisory Parser
===============
.. image:: https://img.shields.io/travis/mprpic/advisory-parser/master.svg
:target: https://travis-ci.org/mprpic/advisory-parser
:alt: Travis CI test status
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
(`example <https://access.redhat.com/labs/securitydataapi/cvrf/RHSA-2016:1883.json>`_)
or downloaded as an XML file
(`example <https://www.redhat.com/security/data/cvrf/2016/cvrf-rhsa-2016-1883.xml>`_),
or OpenSSL's list of issues available in XML
(`link <https://www.openssl.org/news/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:
.. csv-table::
:header: "Project", "Example URL"
:widths: 20, 80
"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
-----
.. code-block:: python
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))
===============
.. image:: https://img.shields.io/travis/mprpic/advisory-parser/master.svg
:target: https://travis-ci.org/mprpic/advisory-parser
:alt: Travis CI test status
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
(`example <https://access.redhat.com/labs/securitydataapi/cvrf/RHSA-2016:1883.json>`_)
or downloaded as an XML file
(`example <https://www.redhat.com/security/data/cvrf/2016/cvrf-rhsa-2016-1883.xml>`_),
or OpenSSL's list of issues available in XML
(`link <https://www.openssl.org/news/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:
.. csv-table::
:header: "Project", "Example URL"
:widths: 20, 80
"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
-----
.. code-block:: python
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))
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
advisory-parser-1.3.tar.gz
(8.0 kB
view hashes)
Built Distribution
Close
Hashes for advisory_parser-1.3-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6cce6e6c3a20dbce9655a9e376f7fbc7496f779530bb77627cf0ac6e15bfc971 |
|
MD5 | 3067fc8b35966f2443ed75734effebe4 |
|
BLAKE2b-256 | 8e1a4d0c64e3430e1fdc89263487759c701559f0908d26b1046385930e958f73 |