Skills Development Greenbone Vulnerability Scanning With Python API

Greenbone Vulnerability Scanning With Python API

v20260601
implementing-vulnerability-management-with-greenbone
Automate comprehensive vulnerability management by deploying and operating Greenbone/OpenVAS. This skill guides the use of the python-gvm library to programmatically manage the entire scanning lifecycle: creating scan targets, executing complex vulnerability scans via the Greenbone Management Protocol (GMP), monitoring progress, and parsing detailed XML reports into actionable JSON findings. Ideal for security assessments and compliance checks.
Get Skill
322 downloads
Overview

Implementing Vulnerability Management with Greenbone

Overview

Greenbone Vulnerability Management (GVM) is the open-source framework behind OpenVAS, providing comprehensive vulnerability scanning with over 100,000 Network Vulnerability Tests (NVTs). The python-gvm library provides a Python API to interact with GVM through the Greenbone Management Protocol (GMP), enabling programmatic creation of scan targets, task management, scan execution, and report retrieval. This skill covers connecting to GVM via Unix socket or TLS, authenticating, creating scan configs and targets, launching scans, and parsing XML-based vulnerability reports to produce actionable findings.

When to Use

  • When deploying or configuring implementing vulnerability management with greenbone capabilities in your environment
  • When establishing security controls aligned to compliance requirements
  • When building or improving security architecture for this domain
  • When conducting security assessments that require this implementation

Prerequisites

  • Greenbone Community Edition or Greenbone Enterprise Appliance installed
  • Python 3.9+ with python-gvm (pip install python-gvm)
  • GMP access credentials (username/password)
  • Network connectivity to GVM daemon (Unix socket or TCP/TLS)
  • Understanding of CVSS scoring and vulnerability classification

Steps

  1. Install python-gvm: pip install python-gvm
  2. Establish a GMP connection via UnixSocketConnection or TLSConnection
  3. Authenticate with gmp.authenticate(username, password)
  4. Create a target with gmp.create_target(name, hosts=[...], port_list_id=...)
  5. Create a scan task with gmp.create_task(name, config_id, target_id, scanner_id)
  6. Start the scan with gmp.start_task(task_id)
  7. Monitor scan progress with gmp.get_task(task_id)
  8. Retrieve results with gmp.get_report(report_id, report_format_id=...)
  9. Parse the XML report for vulnerabilities, CVSS scores, and affected hosts
  10. Generate a JSON summary report with severity distribution and remediation priorities

Expected Output

A JSON report containing total vulnerabilities found, severity breakdown (critical/high/medium/low), per-host findings with CVE references and CVSS scores, and scan metadata including duration and NVT feed version.

Info
Category Development
Name implementing-vulnerability-management-with-greenbone
Version v20260601
Size 9.13KB
Updated At 2026-06-03
Language