命令行 Nessus/OpenVAS 或 NSE 查找特定漏洞?

信息安全 渗透测试 开发 已知漏洞 漏洞扫描器
2021-09-07 05:27:13

您使用哪些方法来快速扫描网络中的某些漏洞?

我在 O'Reilly 的《网络安全工具》一书中读到,Nessus 只能测试一个漏洞,但必须通过命令行来完成。但那是很久以前的事了,现在 Nessus 不同了。今天这可能吗?如果可以,正确的语法是什么?

这也可以通过 OpenVAS 实现吗?如果当前版本的 Nessus 或 OpenVAS 都不可能,编写 Nmap NSE 脚本来查找这些漏洞会更容易吗?与 Nessus 相比,在功能、可靠性和性能方面的权衡是什么/开放增值服务?

我正在谈论的漏洞类型的示例列表可以在Pen Test Bookmark中的“MSF Exploits or Easy”部分下找到。我正在尝试根据我自己的个人风险管理和渗透测试经验来构建和增强我自己的常见/简单漏洞利用版本。

1个回答

关于 nessus: ./bin/ nasl效果很好,特别是考虑到“-M”标志。

修改现有的 nasl 脚本或复制和粘贴单个 nasl 脚本以派生自定义检查非常容易。

“-M”选项是关键,因为它在 cli 模式下启用脚本依赖关系。例如,apache_http_version.nasl 脚本定义了一个依赖项,如下所示:

$ grep 依赖项 ../lib/nessus/plugins/apache_http_version.nasl script_dependencies("http_version.nasl");

如果您运行具有依赖关系但没有“-M”标志的单个 nasl 脚本,则结果将为空:

$ sudo ./nasl -t 10.10.10.5 ../lib/nessus/plugins/apache_http_version.nasl
$

但是,如果您添加“-M”标志,那么您会得到以下信息(以及工作检查):

$ sudo ./nasl -M -V -t 10.10.10.5 ../lib/nessus/plugins/apache_ssl_overflow.nasl
----------[执行ping_host.nasl]
------ --------[ 完成 ping_host.nasl ]-----
----------[ 正在执行 http_version.nasl ]-----
-------- --[ 完成 http_version.nasl ]------
[...]