wed渗透:记录kali系统下扫描工具nikto的使用

目录

    • 前言
    • 1 工具介绍
    • 2 使用场景
    • 3 使用方法
      • 3.1 查看帮助信息
      • 3.2 Nikto插件
      • 3.3 扫描
        • 3.3.1 常规扫描
        • 3.3.2 指定端口扫描
        • 3.3.3 指定协议扫描
        • 3.3.4 指定目录扫描
        • 3.3.5 多目标扫描
        • 3.3.6 配合namp利用管道输入扫描
        • 3.3.7 利用代理扫描
      • 3.4 Nikto扫描过程中的交互参数
      • 3.5 修改nikto配置文件
      • 3.6 设置规则绕过IDS检测
    • 结尾感言

前言

在渗透测试中,若我们需要对目标进行数据收集,以期得到目标存在的漏洞时,我们就需要一款优秀的扫描工具了。说到这里,或许会有很多看官会说:“真正的大佬进行渗透测试都不需要扫描器的啊,你这只是给小白说的吧。”其实这是不对的,无论是大佬还是小白,在进行渗透测试时都是需要对目标进行信息收集,这也是渗透测试标准中7个步骤之一,毕竟你总不可能啥都不知道就对着目标一顿输出吧。。。
所以,真正的区别只是工具使用哪一个?使用的频率而已。


1 工具介绍

nikto是一个基于Perl语言开发的开源web安全扫描器,可以扫描搜索存在安全隐患的文件、服务器配置漏洞、WEB Application层面的安全隐患,能在230多种服务器上扫描出 2600多种有潜在危险的文件、CGI及其他问题。Nikto可以扫描指定主机的WEB类型、主机名、指定目录、特定CGI漏洞、返回主机允许的 http模式等。

2 使用场景

在渗透测试标准中,我们共有7个步骤前期交互→情报收集→威胁建模→漏洞分析→渗透攻击阶段→后渗透测试阶段→渗透测试报告,而利用扫描器进行扫描则正处于第二个步骤中,你信息收集的结果很大一部分程度将决定你后续步骤的效果,那么这时,一款优秀的扫描器nikto就显得尤为重要了

3 使用方法

3.1 查看帮助信息

直接输入 nikto 命令即可查看简单的帮助信息

nikto# 查看帮助信息

wed渗透:记录kali系统下扫描工具nikto的使用_第1张图片

若我们需要查看详细的帮助信息也可以输入nikto -H或 man nikto命令

man nikto#查看详细帮助信息

nikto -H #查看详细帮助信息

wed渗透:记录kali系统下扫描工具nikto的使用_第2张图片

3.2 Nikto插件

在每次使用nikto前我们可以使用 nikto -update升级更新一下插件

nikto -update #升级插件

在这里插入图片描述

nikto会通过大量插件来进行扫描,我们可以使用nikto -list-plugins 来查看这些插件的信息

nikto -list-plugins #查看插件已有信息

wed渗透:记录kali系统下扫描工具nikto的使用_第3张图片

使用nikto -V来查看工具和插件的版本

nikto -V #查看工具和版本信息

wed渗透:记录kali系统下扫描工具nikto的使用_第4张图片

3.3 扫描

3.3.1 常规扫描

我们可以使用nikto -host 目标ip(/文件)进行扫描

nikto -host http://192.168.254.129/dvwa/ #对192.168.254.129下的/dvwa/目录进行扫描

wed渗透:记录kali系统下扫描工具nikto的使用_第5张图片

3.3.2 指定端口扫描

除了常规扫描,也可以在后面接 -port 端口号 指定对应端口进行扫描

nikto -host 192.168.254.129 -port 80#指定扫描192.168.254.129目标的80端口

wed渗透:记录kali系统下扫描工具nikto的使用_第6张图片

3.3.3 指定协议扫描

同样,可以指定SSL协议,进行HTTPS扫描

nikto -host www.baidu.com -port 443 -ssl#指定SSL协议对www.baidu.com进行HTTPS的扫描

wed渗透:记录kali系统下扫描工具nikto的使用_第7张图片

3.3.4 指定目录扫描

而如果我们只需要扫描某个网站下的子目录,我们也可以使用-c /目录 进行指定目录的扫描

nikto -host http://192.168.254.129 -c /dvwa#指定对http://192.168.254.129网站下的dvwa子目录进行扫描

wed渗透:记录kali系统下扫描工具nikto的使用_第8张图片

3.3.5 多目标扫描

如果我们有多个目标需要扫描,我们可以将这些目标统统放入一个文档中,利用nikto -host +文本的方式进行多个目标的扫描

nikto -host list.txt #扫描list文档里的目标

在这里插入图片描述

3.3.6 配合namp利用管道输入扫描

同时,我们也可以配合Nmap进行统一网段开放相应端口的目标利用管道进行逐个扫描

nmap -p80 192.168.254.0 -oG - | nikto -host - #利用nmap扫描192.168.254.0网段下所有开启80端口的ip,并通过管道输出给nikto,使nikto自动扫描这些ip

wed渗透:记录kali系统下扫描工具nikto的使用_第9张图片

3.3.7 利用代理扫描

知道有些很刑的看官有时不想暴露自己真实地址,nikto同样支持使用代理的方式进行扫描只需利用
-useproxy参数即可

nikto -host https://www.baidu.com -useproxy http://localhost:8087#nikto使用谷歌的某个代理扫描百度站点

在这里插入图片描述

3.4 Nikto扫描过程中的交互参数

nikto在执行扫描任务过程中我们可以通过一些操作,查看扫描的一些进度信息,具体操作如下:


Nikto-interactive :

操作 说明 注释
V verbose mode on/off 显示详细信息(verbose) 再按一次V继续扫描
d debug mode on/off 调试信息(及其详细信息)
e error reporting on/off 显示错误信息
p progress reporting on/off 显示扫描进度
r redirect display on/off 显示重定向信息
c cookie display on/off 显示cookie
a auth display on/off 身份认证过程显示出来
q quit 退出
N next host 扫描下一个目标
p Pause 暂停扫描

3.5 修改nikto配置文件

我们可以 vi /etc/nikto.conf 通过vi编辑器来修改nikto配置文件,来实现如默认使用代理、自动使用指定cookie等功能

wed渗透:记录kali系统下扫描工具nikto的使用_第10张图片

3.6 设置规则绕过IDS检测

在nikto扫描过程中我们可以通过设置参数 -evasion +参数 来设置规则绕过IDS检测,nikto共提供了8种规则给我们使用,我们可以选择其中一种或多种进行使用

nikto -host http://192.168.254.129/dvwa/ -evasion 167#使用第一、六、七种规则绕过IDS检测

wed渗透:记录kali系统下扫描工具nikto的使用_第11张图片

-evasion参数表:

wed渗透:记录kali系统下扫描工具nikto的使用_第12张图片


evasion参数表

参数 说明 注释
1 Random URI encoding(non UTF8) 随机URL编码(非UTF-8方式)
2 DireCctorV self-reference(/./) 自选择路径(/./)
3 Premature URL ending 过早结束的URL
4 Prgpend Long random string 优先考虑长随机字符串
5 Fake parameter 参数欺骗
6 TAB as request Spacer 使用TAB作为命令的分隔符
7 Change the case of the URL 使用变化的URL
8 Use Windows directory separator(\) 使用Windows路径分隔符"\"

结尾感言

正所谓kali学得好,牢饭少不了,本文章仅为个人学习的一个简单学习记录,在此分享交流而已,还请各位看官学习后务必谨慎使用!该次学习中的一切扫描对象均为自己的靶机,请勿过度解读!重申,本文只为一次学习记录,无任何商业行为!

你可能感兴趣的:(安全,系统安全,安全架构)