Pheme - Greenbone Static Report Generator
pheme is a service to create scan reports. It is maintained by Greenbone Networks.
Pheme is the personification of fame and renown.
Or in this case personification of a service to generate reports.
Table of Contents
Installation
Requirements
Python 3.8 and later is supported.
Besides python pheme also needs to have
- libcairo2-dev
- pango1.0
installed.
Development
pheme uses poetry for its own dependency management and build process.
First install poetry via pip
python3 -m pip install --user poetry
Afterwards run
poetry install
in the checkout directory of pheme (the directory containing the
pyproject.toml file) to install all dependencies including the packages only
required for development.
Afterwards activate the git hooks for auto-formatting and linting via autohooks.
poetry run autohooks activate
Validate the activated git hooks by running
poetry run autohooks check
Usage
In order to prepare the data structure the XML report data needs to be posted to pheme with a grouping indicator (either by host or nvt).
E.g.:
> curl -X POST 'http://localhost:8000/transform?grouping=nvt'\
-H 'Content-Type: application/xml'\
-H 'Accept: application/json'\
-d @test_data/longer_report.xml
"scanreport-nvt-9a233b0d-713c-4f22-9e15-f6e5090873e3"⏎
The returned identifier can be used to generate the actual report.
So far a report can be either in:
- application/json
- application/xml
- text/csv E.g.
> curl -v 'http://localhost:8000/report/scanreport-nvt-9a233b0d-713c-4f22-9e15-f6e5090873e3' -H 'Accept: application/csv'
For visual report like
- application/pdf
- text/html
the corresponding css and html template needs to be put into pheme first:
> curl -X PUT localhost:8000/parameter\
-H 'x-api-key: SECRET_KEY_missing_using_default_not_suitable_in_production'\
--form vulnerability_report_html_css=@path_to_css_template\
--form vulnerability_report_pdf_css=@path_to_css_template\
--form vulnerability_report=@path_to_html_template
afterwards it can be get as usual:
> curl -v 'http://localhost:8000/report/scanreport-nvt-9a233b0d-713c-4f22-9e15-f6e5090873e3' -H 'Accept: application/pdf'
Maintainer
This project is maintained by Greenbone AG
Contributing
Your contributions are highly appreciated. Please create a pull request on GitHub. Bigger changes need to be discussed with the development team via the issues section at GitHub first.
License
Copyright (C) 2020-2023 Greenbone AG
Licensed under the GNU Affero General Public License v3.0 or later.
Release files for pheme 21.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pheme-21.7.0.tar.gz | 37.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pheme-21.7.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 91.2 kB
Release files / pheme-21.7.0.tar.gz
| Download URL | pheme-21.7.0.tar.gz |
|---|---|
| Size | 37.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cbf15c4e4b6db8f2a890403b0dd3b8fae22e82ce1ecaff735441dbacb02df53c
|
|
BLAKE2b-256 checksum How to use checksums |
615d2804bb4368aaf365e4df63d3057ecb8cbe5d054087581324927e90b69ce5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.6.1 CPython/3.10.13 Linux/6.2.0-1014-azure
|
Release files / pheme-21.7.0-py3-none-any.whl
| Download URL | pheme-21.7.0-py3-none-any.whl |
|---|---|
| Size | 54.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7d8f6ada040e82f9e35f398e38ea23872b293992426f394978098af031e247ad
|
|
BLAKE2b-256 checksum How to use checksums |
6948c5fcfdd90719413adc04521cdb31a141e6cb0443933656d803c5c1c3a2d7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.6.1 CPython/3.10.13 Linux/6.2.0-1014-azure
|