跳转到主要内容

通过GMP或OSP控制GSM/GVM的工具

项目描述

Greenbone Logo

Greenbone漏洞管理工具

GitHub releases PyPI release code test coverage Build and test

Greenbone漏洞管理工具 gvm-tools 是一系列工具,用于远程控制Greenbone企业设备及Greenbone社区版安装。这些工具有助于访问GMP(Greenbone管理协议)和OSP(开放扫描协议)通信协议。

本模块包含交互式和非交互式客户端。Python编程语言直接支持交互式脚本。但也可以在不使用Python编程的情况下发出远程GMP/OSP命令。

目录

文档

gvm-tools 的文档可以在 https://greenbone.github.io/gvm-tools/ 找到。请参阅文档以获取更多详细信息,因为本README仅提供简要概述。

安装

请参阅 文档 了解所有支持的安装选项。

需求

支持Python 3.9及更高版本。

版本

请考虑始终使用 最新版gvm-toolspython-gvm。我们经常更新这些项目以添加功能并保持其无错误。这就是为什么建议使用pip安装 gvm-tools 的原因。

要使用与旧版GMP版本(7、8、9)兼容的 gvm-tools,您必须使用 <21.06 的发布版本,并结合 <21.05python-gvm 版本。 在21.06版本中,已取消对这些旧版本的支持。

用法

有几个客户端可以通过GMP/OSP进行通信。

所有客户端都具有以各种方式建立连接的能力

  • Unix套接字
  • TLS连接
  • SSH连接

gvm-cli

此工具发送纯GMP/OSP命令并将结果打印到标准输出。

示例

返回服务器使用的当前协议版本

gvm-cli socket --xml "<get_version/>"

返回具有提供凭据的GMP用户可见的所有任务

gvm-cli --gmp-username foo --gmp-password bar socket --xml "<get_tasks/>"

读取包含GMP命令的文件并返回结果

gvm-cli --gmp-username foo --gmp-password bar socket myfile.xml

请注意,当服务器拒绝命令时,gvm-cli 将默认打印错误消息并以非零退出代码退出。如果不希望进行此类错误处理,可以使用 --raw 参数请求未解析的XML响应

gvm-cli socket --raw --xml "<authenticate/>"

gvm-script

此工具具有比简单的 gvm-cli 客户端更多的功能。您可以使用来自 python-gvm库 和Python 3本身的命令创建自己的自定义gmp或osp脚本。

示例脚本

# Retrieve current GMP version
version = gmp.get_version()

# Prints the XML in beautiful form
from gvmtools.helper import pretty_print
pretty_print(version)

# Retrieve all tasks
tasks = gmp.get_tasks()

# Get names of tasks
task_names = tasks.xpath('task/name/text()')
pretty_print(task_names)

更多示例脚本

"scripts/" 文件夹中有一个不断增长的gmp脚本集合。其中一些可能正好符合您的需求,所有这些脚本都有助于编写您自己的gmp脚本。

gvm-pyshell

此工具用于交互式运行gmp或osp脚本。它使用 python-gvm库 提供与 gvm-script 相同的API。

示例程序使用

通过Unix域套接字使用给定凭据连接并打开交互式shell

gvm-pyshell --gmp-username user --gmp-password pass socket

通过SSH连接打开交互式shell

gvm-pyshell --hostname 127.0.0.1 ssh

支持

有关 gvm-tools 或gmp脚本使用的任何问题,请使用 Greenbone社区门户。如果您发现软件存在问题,请 在GitHub上创建问题

维护者

本项目由Greenbone AG维护。

贡献

我们非常重视您的贡献。请在GitHub上创建拉取请求。对于较大的更改,请先在问题中讨论。

为了开发,您应使用poetry来将您的Python包在不同的环境中分离。首先通过pip安装poetry

python3 -m pip install --user poetry

然后

poetry install

在gvm-tools(包含pyproject.toml文件的目录)的检出目录中运行,以安装所有依赖项,包括仅用于开发的包。

之后,通过autohooks激活自动格式化和代码检查的git钩子。

poetry run autohooks activate --force

许可证

版权(C)2017-2024 Greenbone AG

根据GNU通用公共许可证v3.0或更高版本许可。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

gvm_tools-24.8.0.tar.gz (125.4 kB 查看散列值)

上传时间 源代码

构建分发

gvm_tools-24.8.0-py3-none-any.whl (29.9 kB 查看散列值)

上传时间 Python 3

由以下赞助

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面