跳转到主要内容

Python的OMP(OpenVAS管理协议)客户端接口

项目描述

作者:

Hartmut Goebel <h.goebel@goebel-consult.de>

版本:
版本 0.1.0
首页:

http://www.openvas.org/

OpenVAS (Open Vulnerability Assessment System) 是一个网络安全扫描器,附带相关工具。OpenVAS 版本 3 引入了一个新的核心组件:OpenVAS-Manager,它是 OpenVAS-Scanner 和各种客户端应用程序(如 OpenVAS-Client 或 Greenbone Security Assistant)之间的一个层。其他功能还包括在服务器端存储扫描结果,这使得扫描客户端无需在扫描完成前保持连接打开。

OpenVAS管理协议 (OMP) 是一种基于 XML 的协议,用于与 OpenVAS-Manager 通信。 openvas.omplib 是 OMP 的纯 Python 实现,允许轻松访问 OpenVAS-Manager。

此软件包还包括一个用于与 openvas-manager 交互的命令行工具 omp-cli。为了便于使用,此工具使用与 svn 或 openssl 类似的子命令。

示例

manager = openvas.omplib.OMPClient(host=sensor)
manager.open(username, password)
manager.create_target(job_name, targets, comment)
task_id = manager.create_task(job_name, comment, config=config_name,
                              target=job_name)
report_id = manager.start_task(task_id)
# ... later ...
report = manager.get_report(report_id)
print etree.tostring(report)

openvas.opmlib 也支持一个低级接口,可以直接发送 OMP XML

help_text = manager.xml('<help/>')

关于 omp-cli 的使用示例

omp-cli --help             # get help
omp-cli get-report --help  # get help on subcommand get-report
omp-cli get-status         # list tasks with stati and report-ids

                           # Retreive a report in PDF format
omp-cli get-report -fPDF 343435d6-91b0-11de-9478-ffd71f4c6f30 \
                   -o some-report.pdf

要求和安装

openvas.omplib 需要

  • Python 2.5 或更高版本,支持 SSL(在大多数平台上应该是默认的)(注意:Python 3.x 不受支持)

    (注意:Python 3.x 不受支持)

  • setuptools 用于安装(见下文)。

  • argparse(从 Python 2.7 开始已包含在 Python 中)

在 Windows 上安装的提示:

通过上面的链接,您可以找到 .msi 和 .exe 安装程序。只需安装它们,然后继续安装 openvas.omplib

在 GNU/Linux 上安装的提示:

大多数当前的 GNU/Linux 发行版都提供了所需软件包。寻找类似 python-setuptoolspython-argparse 的软件包名称。只需安装它们,然后继续安装 openvas.omplib

在其他平台上安装的提示:

许多供应商提供 Python。请检查您的供应商软件仓库。否则,请从 https://pythonlang.cn/download/ 下载 Python 2.6(或任何 2.x 系列的更高版本)并按照那里的安装说明进行操作。

安装 Python 后,安装 setuptools。您可能想先阅读 关于安装 setuptools 的更多提示

使用 setuptools,编译和安装剩余的要求变得非常简单

# if the system has network access
easy_install argparse

# without network access download argparse
# from http://pypi.python.org/pypi/argparse and run
easy_install argparse-*.zip

安装 openvas.omplib

当您阅读此内容时,您很可能已经下载并解压了 openvas.omplib。因此,安装就像运行一样简单

python ./setup.py install

否则,您可以直接使用 setuptools/easy_install 进行安装。如果您的系统有网络访问权限,安装 openvas.omplib 就像呼吸一样简单

easy_install openvas.omplib

没有网络访问权限,请从 http://pypi.python.org/pypi/openvas.omplib 下载 openvas.omplib 并运行

easy_install openvas.omplib-*.tar.gz

关于安装 setuptools 的更多提示

openvas.omplib 使用 setuptools 进行安装。因此,您需要

  • 网络访问权限,以便安装脚本可以自动下载并安装 setuptools(如果它们尚未安装)

或者

  • 使用 EasyInstall 安装说明 预先安装正确版本的 setuptools。那些说明还包括处理防火墙的提示,以及如何手动下载和安装 setuptools。

自定义安装位置

openvas.omplib 只是一个单独的脚本(即 Python 程序)。因此,您可以将其复制到您想要的任何位置(可能需要修复第一行)。但更简单的方法是

# install to /usr/local/bin
python ./setup.py install --prefix /usr/local

# install to your Home directory (~/bin)
python ./setup.py install --home ~

请注意:这也会影响 argparse(以及 setuptools)的安装,如果它们尚未安装。

有关自定义安装位置的信息,请在安装 openvas.omplib 之前参考 自定义安装位置说明

项目详细信息


由以下机构支持

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