怎样在 Ubuntu 上使用 Nikto Web Scanner

介绍

Nikto 是一个基于 Perl 的开源 Web 漏洞扫描器。 它可以扫描服务器内的不安全文件和程序、软件错误配置以及其他潜在威胁。 在本文中,您将学习如何安装和使用 Nikto 来扫描您的 Ubuntu 服务器。

未经许可,请勿扫描服务器。 在 Vultr 的网络上进行未经授权的扫描可能会导致帐户终止。

先决条件

部署一个完全更新的 Vultr Ubuntu 服务器。 创建具有 sudo 访问权限的非 root 用户。

1. 安装 Nikto

Nikto 在默认存储库中可用。

$ sudo apt install nikto -y

2. 使用 Nikto 扫描服务器

我们将使用 Nikto 执行各种类型的网络扫描。 您可以安装 Apache2 并添加虚拟主机以在不同端口上运行以进行测试。 被扫描的站点或端口必须打开并运行应用程序才能获得适当的结果。

$ sudo apt install apache2 -y

例子

这些是展示如何使用 Nikto 的几个示例。

使用 IP 地址扫描 Web 服务器 192.0.2.10

$ sudo nikto -host 192.0.2.10

使用IP地址扫描Web服务器的8080端口 192.0.2.10

$ sudo nikto -h 192.0.2.10 -p 8080

如果您的服务器有多个虚拟主机侦听不同的端口,您可以将它们指定为逗号分隔的列表。 此命令将扫描两个端口:8080 和 9090。

$ sudo nikto -h 192.0.2.10 -p 8080,9090

您可以通过指定端口范围的开始和结束来扫描一系列端口。 此命令将扫描从 8080 到 9090 的所有端口。

$ sudo nikto -h 192.0.2.10 -p 8080-9090

通过 URL 扫描服务器:

$ sudo nikto -h http://example.com

在特定端口扫描 URL。 有两个语法选项可用。

$ sudo nikto -h http://example.com -p 8080

$ sudo nikto -h http://example.com:8080

扫描多个主机

要扫描多个主机,请创建一个包含目标主机列表的文件,每行一个。 例如,创建一个名为 scan-targets 具有以下内容:

http://example.com:8080
192.0.2.10:8888
192.0.2.11

扫描文件中定义的所有主机 scan-targets

$ sudo nikto -h scan-targets

如何使用代理

要通过代理服务器进行扫描,请使用 -useproxy 选项。 在配置文件上设置代理详细信息, /etc/nikto/config.txt.

PROXYHOST=192.0.2.10
PROXYPORT=8080
PROXYUSER=username
PROXYPASS=password

定义代理详细信息后,运行扫描。 例如:

$ sudo nikto -h 192.0.2.11 -useproxy

更多信息

显示可用于运行扫描的各种命令选项的基本描述。

$ sudo nikto

显示有关可用选项的更多详细信息。

$ sudo nikto -H

参考

有关 Nikto 的更多信息,请参阅 官方文件.

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com