
Nikto 是一款开源的 Web 服务器扫描工具,专为检测 Web 服务器的安全漏洞而设计。它能够识别大量潜在危险文件、CGI,检查服务器配置错误、默认或不安全的文件和程序,以及过时的服务器软件。
最基本的命令是指定目标 URL 或 IP 地址:
nikto -h http://example.com或
nikto -h 192.168.1.1如果目标服务运行在非标准端口,可以使用 -p 参数:
nikto -h example.com -p 8080多个端口用逗号分隔:
nikto -h example.com -p 80,443,8080 对 HTTPS 服务进行扫描,可以忽略证书检查(使用 -ssl 参数)
nikto -h https://example.com -ssl-ssl 参数主要有两个核心原因切换协议
nikto -h example.com 会使用 HTTP(端口80)去连接。https://example.com 时,你必须加 -ssl 参数,Nikto 才会改用 HTTPS(端口443)协议进行连接。忽略证书错误
-ssl 参数,Nikto 会像浏览器一样报错并停止扫描。-ssl 参数就等于告诉 Nikto:“别管证书警告,直接连接”,从而确保扫描能顺利进行。通过代理进行扫描,可以帮助隐藏源IP地址或访问特定网络环境中的目标。
nikto -h http://example.com -useproxy http://proxy_address:portNikto 支持将扫描结果输出到文件,便于后续分析。支持多种格式(TXT、HTML、CSV等)。
nikto -h example.com -o /path/to/results.txt指定 HTML 格式输出:
nikto -h example.com -o /path/to/report.html -Format htmNikto 支持通过插件扩展其扫描功能。
nikto -h example.com -Plugins "apacheusers"按键 | 功能说明 | 使用场景举例 |
|---|---|---|
空格键 (Space) | 报告当前扫描状态。显示已用时间、剩余时间、当前正在检查的请求等信息。 | 扫描了很长时间,你想知道“现在到哪了?还要扫多久?” |
v | 切换详细(Verbose)模式。按一次开启,再按一次关闭。开启后会显示更多扫描细节,例如每个测试的 ID 和它针对的 URL。 | 某个测试发现了有趣的东西,你想立刻知道 Nikto 具体发送了什么请求才导致这个结果,而不必等到最后看报告。 |
d | 切换调试(Debug)模式。按一次开启,再按一次关闭。这会输出极其详细的信息,包括完整的 HTTP 请求和响应头。会刷屏,仅用于排错。 | 扫描行为不符合预期,或者你想深入分析 Nikto 与服务器之间的具体通信内容以排查问题。 |
e | 显示错误信息。报告扫描过程中遇到的连接错误、超时等问题。 | 你想知道扫描是否顺利,或者为什么对某个特定路径的测试失败了。 |
p | 显示扫描进度。与空格键类似,但信息更简洁。 | 快速查看进度。 |
q | 退出(Quit)扫描。立即停止当前扫描并退出 Nikto。 | 你发现扫错了目标,或者需要中断扫描。 |
Ctrl+C | 强制中断。立即终止程序。效果同 q | 最直接的中断方式。 |
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。