ci / audit (push) Successful in 24s
GLPI target → Discovery config → OpenVAS scanner → report c3294575-3db4-4ad1-8e50-3ca6d23fb137 (18 info, 1 low ICMP-timestamp, 2 unscored). VM shut back down. Pipeline scripts in openvas/scan-pipeline/. https://projects.knownelement.com/issues/389
24 lines
963 B
Plaintext
24 lines
963 B
Plaintext
from lxml import etree
|
|
t = etree.fromstring(gmp.send_command('<get_tasks task_id="fa43a011-077e-489b-bf9f-b7173cc555b6"/>').encode())
|
|
task = t.find('.//task')
|
|
rep = task.find('.//report')
|
|
rid = rep.get('id') if rep is not None else None
|
|
print('report_id=' + str(rid))
|
|
if rid:
|
|
r = etree.fromstring(gmp.send_command(f'<get_results filter="report_id={rid} rows=200"/>').encode())
|
|
total = len(r.findall('.//result'))
|
|
hosts = set()
|
|
sev = {}
|
|
ports = set()
|
|
for res in r.findall('.//result'):
|
|
h = res.findtext('host')
|
|
if h: hosts.add(h)
|
|
s = res.findtext('severity')
|
|
sev[s] = sev.get(s, 0) + 1
|
|
nvt = res.findtext('nvt') or ''
|
|
print('results=' + str(total))
|
|
print('hosts_seen=' + ','.join(sorted(hosts)))
|
|
print('severity_histogram=' + str(sev))
|
|
for res in r.findall('.//result')[:8]:
|
|
print('- ' + (res.findtext('nvt/name') or '?')[:70] + ' | sev=' + (res.findtext('severity') or '?'))
|