如何使用OpenVAS在Ubuntu12.04上审核远程系统的安全性
状态: 已弃用
本文介绍了不再受支持的 Ubuntu 版本。 如果您当前正在运行运行 Ubuntu 12.04 的服务器,我们强烈建议您升级或迁移到受支持的 Ubuntu 版本:
原因: Ubuntu 12.04 已于 2017 年 4 月 28 日终止生命周期 (EOL) and no longer receives security patches or updates. This guide is no longer maintained.
请参阅: 本指南可能仍可用作参考,但可能不适用于其他 Ubuntu 版本。 如果可用,我们强烈建议使用为您正在使用的 Ubuntu 版本编写的指南。 您可以使用页面顶部的搜索功能来查找更新的版本。
介绍
服务器安全的一个重要方面是主动进行安全筛选。 如果您将任何服务暴露在互联网上,渗透测试对于确保您不会受到已知威胁的攻击至关重要。
开放式漏洞评估系统,通常称为 OpenVAS,是一套工具,它们协同工作,使用已知漏洞和弱点的数据库对客户端计算机运行测试。 目标是了解您的服务器在防范已知攻击媒介方面的能力。
在本指南中,我们将在 Ubuntu 12.04 VPS 上安装 OpenVAS 套件。 然后我们可以使用这个系统来扫描自己和其他服务器。
添加 OpenVAS PPA 并安装软件
尽管 Ubuntu 的默认存储库中有一些 OpenVAS 组件,但我们将使用 PPA 来维护软件包的更新版本。
首先,我们需要安装 python-software-properties
包,这将使我们能够轻松地使用 PPA。
sudo apt-get update sudo apt-get install python-software-properties
然后我们可以将最新的稳定版本添加到我们的系统中:
sudo add-apt-repository ppa:openvas/openvas6
我们需要重建 apt 数据库以收集有关通过我们的新 PPA 可用的软件包的信息。 之后,我们可以安装所需的软件:
sudo apt-get update sudo apt-get install openvas-manager openvas-scanner openvas-administrator openvas-cli greenbone-security-assistant sqlite3 xsltproc texlive-latex-base texlive-latex-extra texlive-latex-recommended htmldoc alien rpm nsis fakeroot
这将下载并安装我们开始所需的组件。
初始配置
我们可以使用默认包含的包装实用程序为 OpenVAS 创建 SSL 证书。 我们需要使用管理权限调用它,以便可以将其放置在文件系统的受限部分中。
sudo openvas-mkcert
您将被问到一些问题,这些问题将帮助您构建用于此服务器的证书文件。
大多数问题,您只需键入 ENTER 即可接受默认值。 这主要是供您自己使用,因此请输入您要使用的值。
接下来,我们将创建另一个证书。 这一次,我们将为名为“om”的用户创建一个客户端证书,它代表 OpenVAS Manager。 我们不需要客户端部分的任何特定信息,因此我们将告诉它自动配置并在所需位置安装证书:
sudo openvas-mkcert-client -n om -i
建立数据库信息
现在我们已经安装了证书,我们可以开始构建我们的数据库,以便我们的本地工具了解不同类型的威胁和漏洞。
通过发出以下命令更新网络漏洞测试数据库:
sudo openvas-nvt-sync
这会将最新的定义下载到您的本地计算机。
要继续,我们需要停止管理器和扫描器应用程序,以便我们可以立即调用命令而不会发生冲突。
通过键入以下内容停止这两个服务:
sudo service openvas-manager stop sudo service openvas-scanner stop
现在,我们可以在不使用 init 文件中通常调用的参数的情况下启动扫描仪应用程序。 在第一次运行期间,OpenVAS 需要下载和同步大量数据。 这将需要相当长的时间:
sudo openvassd
完成后,您必须通过键入以下内容来重建扫描仪生成的数据库:
sudo openvasmd --rebuild
接下来,我们将下载并更新我们的安全内容自动化协议数据。 这被称为“SCAP”数据。 这是 OpenVAS 为我们的安全测试检查的另一个数据库。
sudo openvas-scapdata-sync
这将是另一个漫长的等待。 它下载一些通用文件,然后在数据库中更新它们。
然后,我们将为证书数据运行类似的同步操作:
sudo openvas-certdata-sync
第一次运行此命令,您可能会看到一些错误。 它们可能看起来像这样:
Error: no such table: meta
这是因为 Ubuntu 软件包实际上缺少一些其他版本中打包的文件。
我们可以从管理器组件的 RPM 包中获取这些信息。 输入以下内容将其下载到您的主目录:
cd wget http://www6.atomicorp.com/channels/atomic/fedora/18/i386/RPMS/openvas-manager-4.0.2-11.fc18.art.i686.rpm
现在我们已经下载了文件,我们可以提取并展开 RPM 中存在的目录结构。 我们可以通过键入:
rpm2cpio openvas* | cpio -div
我们将在 OpenVAS 可以找到它们的地方为我们的新文件创建一个目录。 然后我们将文件移动到该目录中:
sudo mkdir /usr/share/openvas/cert sudo cp ./usr/share/openvas/cert/* /usr/share/openvas/cert
现在,我们可以再次安全地运行 cert syncing 命令,这次应该会按预期完成:
sudo openvas-certdata-sync
之后,我们可以从我们的主目录中删除提取的 RPM 数据和目录:
rm -rf ~/openvas* ~/usr ~/etc
设置 OpenVAS 用户和端口
要登录我们的服务,我们需要一个用户。 我们可以使用 OpenVAS 管理员组件创建一个。
在这里,我们将创建一个名为“admin”的用户,其角色为管理员。 您将被要求提供用于新帐户的密码:
sudo openvasad -c add_user -n admin -r Admin
您将被告知该用户已被授予无限制访问权限。
接下来,我们需要更改其中一个组件的启动方式。 Greenbone 安全助手组件是我们已安装工具的基于 Web 的界面。
默认情况下,该界面只能从本地计算机访问。 由于我们在远程服务器上安装 OpenVAS 套件,因此我们将无法使用这些设置访问 Web 界面。 我们需要让它可以从互联网上访问。
在您喜欢的文本编辑器中以 root 权限打开以下文件:
sudo nano /etc/default/greenbone-security-assistant
在顶部附近,您应该看到一个参数,该参数指定 Web 界面将侦听的地址。 我们需要将值从 127.0.0.1
更改为您的 VPS 的公共 IP 地址。 这将让它监听来自互联网的连接,我们将能够连接:
GSA_ADDRESS= your_server_IP_address
完成上述修改后,保存并关闭文件。
启动服务
我们现在将启动我们一直在配置的服务。 它们中的大多数已经以某种能力运行,但我们将不得不重新启动它们以确保它们使用我们一直在收集的新信息。
首先杀死所有正在运行的 OpenVAS 扫描程序进程:
sudo killall openvassd
实际终止进程可能需要 15 或 20 秒。 您可以通过发出以下命令检查是否有进程仍在运行:
ps aux | grep openvassd | grep -v grep
如果有任何返回,那么您的流程还没有完成,您应该继续等待。
进程完全退出后,您可以重新开始所有服务:
sudo service openvas-scanner start sudo service openvas-manager start sudo service openvas-administrator restart sudo service greenbone-security-assistant restart
其中每一个都可能需要一些时间才能启动。
访问 Web 界面并运行一些测试
服务全部启动后,您可以使用 Web 浏览器访问 Greenbone Security Assistant Web 界面。
要访问它,您 必须 在服务器地址前加上 https://
。 然后输入服务器的域名或 IP 地址,然后输入 :9392
。
https:// server_domain_or_IP :9392
您将看到一个看起来很吓人的警告屏幕,告诉您证书未由您的浏览器默认信任的人签名:
这是意料之中的,不是问题。 您应该单击“继续”按钮继续。
接下来,您将看到登录屏幕:
您需要输入之前配置的用户名和密码。 对于本指南,用户名是“admin”。
登录后,您将立即看到一个快速启动向导,它允许您立即对目标计算机运行默认扫描:
一个不错的选择是针对您拥有的另一台服务器运行。 重要的是不要对不受您控制的目标运行这些扫描,因为它们可能看起来像是对其他用户的潜在攻击。
输入您要测试的计算机的 IP 地址,然后单击“开始扫描”按钮开始。
该页面将随着扫描的进行而更新,您还可以手动刷新页面以跟踪进度:
扫描完成后(或者甚至在您想要查看即将到来的信息之前),您可以单击紫色放大镜图标来查看扫描结果。 扫描停留在 98% f 或在完成前一段时间是正常的:
您将看到扫描结果的概览。 请注意,我们完成的即时扫描并不是我们可用的最深入的扫描。
在底部,您可以看到 OpenVAS 创建的报告,告诉我们我们扫描的系统中的潜在漏洞。 我们可以看到“威胁”级别已被归类为“中”。
这意味着在“中等”评级的系统中至少发现了一个漏洞。 我们可以通过再次点击放大镜了解更多信息。
这将使我们获得一份完整的调查结果报告。 在顶部,您可以选择以各种格式下载结果:
在中间部分,我们可以过滤结果。 默认情况下,界面只会显示标记为“高”或“中”的威胁。 在您第一次浏览时,您可能应该选中“威胁”类别下的所有框。 点击“应用”来实现这个:
底部告诉我们找到的具体项目。 如果您选择了上面的所有框,您将看到一些关于开放端口和类似结果的信息性消息。
威胁将采用颜色编码以匹配其按钮颜色。 例如,这是我们的中等威胁:
此警告告诉我们目标响应时间戳请求。 这些请求可以让攻击者知道主机连续在线多长时间。 这可能会让攻击者知道主机容易受到任何最近的攻击。
如您所见,该报告还包含有关如何解决该问题的信息。
结论
您现在应该设置了一个功能齐全的 OpenVAS 服务器来扫描您的主机。 这可以帮助您发现漏洞并突出显示在加强安全性时需要关注的领域。
我们只展示了 OpenVAS 安全套件的最低限度的功能。 在其他任务中,您可以轻松安排扫描、自动生成报告以及在生成特定威胁级别时发送电子邮件警报。 探索 Greenbone Security Assistant 界面并利用强大的内置帮助系统来了解有关您的选项的更多信息。