Web漏洞扫描神器Nikto使用指南

文章目录

  • 工具简介
  • 工具下载链接
  • nikto安装
  • nikto基础语句
  • 指定端口进行扫描
  • 指定目录进行扫描
  • 多目标扫描
  • 其他功能
      • 扫描结果输出
      • Nikto扫描交互参数
      • IDS 躲避
      • 使用代理扫描
  • 后言

工具简介

Nikto是一款开源的(GPL)网页服务器扫描器,它可以对网页服务器进行全面的多种扫描,包含超过3300种有潜在危险的文件/CGIs;超过625种服务器版本;超过230种特定服务器问题。扫描项和插件可以自动更新(如果需要)。但其软件本身并不经常更新,最新和最危险的可能会检测不到。

工具下载链接

官方网站:https://cirt.net/Nikto2

Github源码:https://github.com/sullo/nikto

nikto安装

推荐使用Kali进行安装,Kali默认已经安装Nikto

apt-get update    #更新nikto
apt-get install nikto   #安装nikto

Docker容器安装:

git clone https://github.com/sullo/nikto.git
cd nikto
docker build -t sullo/nikto .
Call it without arguments to display the full help
docker run --rm sullo/nikto
Basic usage
docker run --rm sullo/nikto -h http://www.example.com
To save the report in a specific format, mount /tmp as a volume:
docker run --rm -v $(pwd):/tmp sullo/nikto -h http://www.example.com -o /tmp/out.json

源码安装
Nikto使用Perl语言编写运行,若需要源码安装,请提前安装Perl语言环境

wget https://github.com/sullo/nikto/archive/master.zip

使用unzip进行解压缩,并开始安装即可

unzip master.zip
cd nikto-master / program
perl nikto.pl

如果执行时遇到SSL支持错误,需要执行apt install libnet-ssleay-perl安装SSL支持。

nikto基础语句

通过 h 参数来查看 nikto 的参数说明,但h参数只能查看部分常用的参数

nikto -h 

Web漏洞扫描神器Nikto使用指南_第1张图片
若需要查看更详细的帮助信息,可输入以下语句

man nikto 

nikto 是通过各个插件进行扫描的,可以通过 - list-plugins 来查看

nikto - list-plugins

Web漏洞扫描神器Nikto使用指南_第2张图片
nikto 可以通过 - V 参数来确定其版本以及每个插件的版本,在开始扫描前需确保 nikto 是最新版
如果不是,可通过 update 参数来进行数据库更新和插件的更新, V 需要大写

nikto -V

Web漏洞扫描神器Nikto使用指南_第3张图片
对目标进行扫描,参数是 host,host 后可跟 ip 地址,也可跟域名 url 的形式

nikto -host http://172.168.1.105

Web漏洞扫描神器Nikto使用指南_第4张图片

指定端口进行扫描

nikto默认扫描会目标80端口,http协议,我们可以控制参数使得nikto对目标https协议,443端口进行扫描,并检查 ssl 一些常见的问题

nikto -host http://172.168.1.105 -ssl -port 443

Web漏洞扫描神器Nikto使用指南_第5张图片

指定目录进行扫描

有时候我们只需要扫描网站下的某个子目录,使用-c 参数指定扫描的目录,使用-c all 可进行目录爆破,并扫描

nikto -host http://192.168.1.7 -c /dvwa

Web漏洞扫描神器Nikto使用指南_第6张图片

多目标扫描

nikto支持多个目标进行扫描,将多个地址写入到文本中,通过- host参数+文本的方式即可统一进行扫描

nikto -host list.txt

Web漏洞扫描神器Nikto使用指南_第7张图片

其他功能

扫描结果输出

Nikto之所以实用,是因为它可以将扫描结果通过下列四种格式对扫描结果进行输出
Web漏洞扫描神器Nikto使用指南_第8张图片
以输出html文件格式举例,具体命令如下:

nikto -host http://www.example.com -o result.html -F html

Web漏洞扫描神器Nikto使用指南_第9张图片

Nikto扫描交互参数

Nikto 在执行命令行扫描过程中提供一些操作,可以了解扫描的一些进度信息,详细参数如下:

参数 执行效果
空格 报告当前扫描状态
v 显示详细信息(verbose) 再按一次V继续扫描
d 调试信息(及其详细信息)
d 调试信息(及其详细信息)
e 显示错误信息
p 显示扫描进度
r 显示重定向信息
c 显示cookie
a 身份认证过程显示出来
q 退出
N 扫描下一个目标
P 暂停扫描

IDS 躲避

nikto 在扫描过程中也可以使用它自带的 ids 躲避规则,参数是 - evasion,nikto 提供了八种躲避规则,通过 man 手册可查看详细信息
Web漏洞扫描神器Nikto使用指南_第10张图片

数字 执行效果
1 随机的 url 编码
2 只选择路径
3 提前结束 url
4 优先考虑长随机字符串
5 参数欺骗
6 使用 tab 作为命令分隔符
7 使用变化的 url
8 使用 windows 路径分隔符。

使用方法直接 evasion 后跟序号即可
nikto -host https://www.baidu.com -ssl -port 443 -evasion 123456
Web漏洞扫描神器Nikto使用指南_第11张图片
使用 ids 躲避规则的123456 条对百度进行了扫描

使用代理扫描

扫描目标时,部分目标部署了防护设备,为避免暴露 ip可以使用代理进行扫描,nikto 支持设置代理,参数是 - useproxy。在使用时需要配合其他代理工具(比如proxychains)使用

nikto -h https://www.baidu.com -useproxy http://127.0.0.1:1080

后言

nikto 和 awvs,appscan 类似,一般是在渗透的前期阶段使用,对目标进行信息搜集,nikto 会搜集服务器的一些信息和一些可能存在的问题,对后期的渗透测试会有很大的帮助。

最近一直在学习,但是学习的东西很多很杂,于是便把自己的学习成果记录下来,便利自己,帮助他人。希望本篇文章能对你有所帮助,有错误的地方,欢迎指出!!!喜欢的话,不要忘记点赞哦!!!

你可能感兴趣的:(工具,学习,Web漏洞扫描,Nikto使用教学)