我已经在 Debian 8 机器上安装了整个 OpenVAS 架构。我可以通过Greenbone Security Assistant和OpenVAS CLI命令行访问OpenVAS Manager服务,但我需要的是直接使用XML查询服务,因为我需要练习和研究OMP协议(protocol)本身。我知道该服务正在我机器上的端口 9390 上运行,但是当我尝试调用它时,它从不响应。我能做些什么?我试图向它发出不需要身份验证的简单查询,如下所示:
<get_version/>
或者我什至尝试使用相应的 XML 代码对其进行身份验证。
我曾尝试通过 Google Chrome Poster 扩展程序、Linux 终端上的 curl 命令,甚至是使用套接字的 C 程序来调用它。我的所有尝试都失败了,服务也没有响应,尽管我知道它运行良好,因为通过 Greenbone 安全助手我可以使用它。
OMP 文档可能很有用: http://www.greenbone.net/technology/omp.html 但我需要的是一种向服务发出 XML 命令并获得响应的简单方法,以及能够使用 C 语言开发一些 hello world 类程序的基础,该程序向 OMP 发出简单调用并呈现响应。
最佳答案
OpenVAS 管理器不公开 REST Web 服务。相反,它有一个在端口 9390 上运行的服务,就像你说的那样接受安全连接和 xml 请求而不是 http 请求,这就是你测试的方法不起作用的原因。您必须使用 SSL 套接字连接到它并以当前格式发送 xml 请求 here . 测试协议(protocol)的一种简单方法是使用 OpenSSL s_client(如果已安装)。
例子:
openssl s_client -connect <HOST>:<PORT>
这将打开到 OpenVAS 管理器的 SSL 连接,然后您可以编写 xml 请求,如 <get_version/>
并获得像使用 telnet 或 netcat 一样的响应。
关于xml - 如何直接调用OpenVAS Manager服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33921453/