Implementing Vulnerability Management With Greenbone

使用 python-gvm 库部署和运营 Greenbone/OpenVAS 漏洞管理,通过 GMP 协议创建扫描目标、执行漏洞扫描并解析扫描报告。

killvxk d1efead 4 files · 21.4 KB Updated

File contents

使用 Greenbone 实施漏洞管理

概述

Greenbone 漏洞管理(GVM,Greenbone Vulnerability Management)是 OpenVAS 背后的开源框架,提供超过 100,000 个网络漏洞测试(NVT)的全面漏洞扫描。python-gvm 库提供 Python API,通过 Greenbone 管理协议(GMP,Greenbone Management Protocol)与 GVM 交互,支持以编程方式创建扫描目标、管理任务、执行扫描和获取报告。本技能涵盖通过 Unix 套接字或 TLS 连接 GVM、认证、创建扫描配置和目标、启动扫描,以及解析基于 XML 的漏洞报告以生成可操作的发现结果。

前置条件

  • 已安装 Greenbone 社区版或 Greenbone 企业版设备
  • Python 3.9+,安装 python-gvmpip install python-gvm
  • GMP 访问凭据(用户名/密码)
  • 到 GVM 守护进程的网络连接(Unix 套接字或 TCP/TLS)
  • 了解 CVSS 评分和漏洞分类

步骤

  1. 安装 python-gvm:pip install python-gvm
  2. 通过 UnixSocketConnectionTLSConnection 建立 GMP 连接
  3. 使用 gmp.authenticate(username, password) 进行认证
  4. 使用 gmp.create_target(name, hosts=[...], port_list_id=...) 创建目标
  5. 使用 gmp.create_task(name, config_id, target_id, scanner_id) 创建扫描任务
  6. 使用 gmp.start_task(task_id) 启动扫描
  7. 使用 gmp.get_task(task_id) 监控扫描进度
  8. 使用 gmp.get_report(report_id, report_format_id=...) 获取结果
  9. 解析 XML 报告中的漏洞、CVSS 分数和受影响主机
  10. 生成包含严重程度分布和修复优先级的 JSON 摘要报告

预期输出

JSON 报告,包含发现的漏洞总数、严重程度细分(关键/高/中/低)、每台主机的发现结果(含 CVE 参考和 CVSS 分数),以及包括持续时间和 NVT 漏洞库版本的扫描元数据。

killvxk/cybersecurity-skills-zh/tree/main/skills/implementing-vulnerability-management-with-greenbone commit d1efead728

Frequently asked questions

npx skillmds@latest add killvxk/implementing-vulnerability-management-with-greenbone