Introduction

Nikto是一款开源的(GPL)网站服务器扫描器,使用Perl基于LibWhisker开发。它可以对网站服务器进行全面的多种扫描,包括6400多个潜在危险的文件/CGI,检查1200多个服务器版本以及270多个服务器上的特定于版本的问题。它还会检查服务器配置项,例如是否存在多个索引文件,HTTP服务器选项,并将尝试识别已安装的Web服务器和软件。扫描项目和插件会经常更新,并且可以自动更新。

Command

1.普通扫描

nikto -h <IP or hostname>

Nikto能够进行扫描SSL和端口443(HTTPS网站使用的端口)(HTTP默认使用端口80)。因此,我们可以扫描使用了SSL的网站。

nikto -h <IP or hostname> -ssl

其实不必指定443端口使用ssl,nikto首先使用HTTP规则,如果失败,接着尝试HTTPS规则。当然,指定-ssl能省去不必要的步骤,节省扫描时间。

同时,nikto也支持多域名/IP扫描,写入到txt文件中,一行一个。

nikto -h host.txt

2.扫描指定端口

nikto -h xx.xx.xx.xx -p 80       #对80端口的扫描

3.与Metasploit配对扫描

Nikto可以将信息导出为Metasploit在执行扫描时可以读取的格式。只需使用上面的命令来执行扫描,但将-Format msf +附加到它的末尾。该格式可以帮助我们使用漏洞库快速配检索数据。

nikto -h -Format msf+

4.目录猜解

-C 扫描CGI目录

nikto -h 192.168.3.111 -C all     # all表示猜解CGI目录

5.漏洞扫描

-T选项包含的小选项解释:

0 检查文件上传页面

1 检查web日志

2 检查错误配置或默认文件

3 检查信息泄露问题

4 检查XSS/Script/HTML问题

5 从根目录检查是否存在可访问的文件

6 检查拒绝服务问题

7 从任意文件检索是否存在可访问文件

8 检查是否存在系统命令执行漏洞

9 检查SQL注入漏洞

a 检查认证绕过问题

b 识别安装的软件版本

c 检查源代码泄露问题

x 反向链接选项

6.使用指定代理扫描

nikto -h localhost -useproxy

代理在nikto.conf文件中配置,也可以在命令行设置

nikto -h localhost -useproxy http://localhost:8080/

7.查看插件

nikto -list-plugins     #列出可运行的插件

8.选择插件运行

nikto -Plugins

9.更新插件和数据库

nikto -update

10.仅用来发现HTTP和HTTPS端口,而不执行检测规则

nikto -findonly

11.控制nikto的输出显示

nikto -Display 3

1 显示重定向

2 显示收到的cookie

3 显示200/OK响应

4 显示需要认证的URLs

D debug信息

E 所有的HTTP ERROR

P 打印进度到stdout

V verbose output

12.IDS逃避技术

nikto -evasion

常用的参数:

1 随机的URI编码(no-UTF8)

2 Directory self-reference (/./)

3 Premature URL ending

4 Prepend long random string

5 Fake parameter

6 TAB as request spacer

7 Change the case of the URL

8 Use Windows directory separator ()

A Use a carriage return (0x0d) as a request spacer

B Use binary value 0x0b as a request spacer

13.指定检测报告输出文件的格式

nikto -Format <csv/txt/html/msf/xml>   #默认是txt文件格式

如果没有定义,会根据-o(-output)的文件的后缀确定


详情见:使用手册

Nikto使用方法的更多相关文章

  1. NIKTO介绍及使用方法

    1.    NIKTO:perl语言开发的开源WEB安全扫描器:识别网站软件版本:搜索存在安全隐患的文件:检查服务器配置漏洞:检查WEB Application层面的安全隐患:避免404误判(原因:很 ...

  2. javaSE27天复习总结

    JAVA学习总结    2 第一天    2 1:计算机概述(了解)    2 (1)计算机    2 (2)计算机硬件    2 (3)计算机软件    2 (4)软件开发(理解)    2 (5) ...

  3. Web开发常见的几个漏洞解决方法 (转)

    基本上,参加的安全测试(渗透测试)的网站,可能或多或少存在下面几个漏洞:SQL注入漏洞.跨站脚本攻击漏洞.登陆后台管理页面.IIS短文件/文件夹漏洞.系统敏感信息泄露. 1.测试的步骤及内容 这些安全 ...

  4. Nikto主动扫描神器!!!

    Perl语言开发的开源web安全扫描器 Nikto只支持主动扫描:可扫描web服务器类型是不是最新版本(分析先版本与新版相比有哪些漏洞) 针对:1.软件版本.2.搜索存在安全隐患的文件.3.服务器配置 ...

  5. Web开发常见的几个漏洞解决方法

    http://www.cnblogs.com/wuhuacong/archive/2013/04/15/3022011.html 如何利用SQL注入漏洞攻破一个WordPress网站 平时工作,多数是 ...

  6. mapreduce多文件输出的两方法

    mapreduce多文件输出的两方法   package duogemap;   import java.io.IOException;   import org.apache.hadoop.conf ...

  7. 【.net 深呼吸】细说CodeDom(6):方法参数

    本文老周就给大伙伴们介绍一下方法参数代码的生成. 在开始之前,先补充一下上一篇烂文的内容.在上一篇文章中,老周检讨了 MemberAttributes 枚举的用法,老周此前误以为该枚举不能进行按位操作 ...

  8. IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法

    直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...

  9. 多线程爬坑之路-Thread和Runable源码解析之基本方法的运用实例

    前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面 ...

随机推荐

  1. VirtualBox 安装 Centos8 使用 Xshell 连接

    1.下载CentOS CentOS下载地址:https://wiki.centos.org/Download 这里选择本地安装包,网络安装包在安装时需要在线下载资源比较慢 2.安装VirtualBox ...

  2. 采用vue编写的功能强大的swagger-ui页面

    think-swagger-ui-vuele swagger-ui有非常多的版本,觉得不太好用,用postman,每个接口都要自己进行录入.所以在基于think-vuele进行了swagger格式js ...

  3. java基本数据类型和引用数据类型的调用传递的区别

    (1)基本数据类型:就是进行了值的传递把一份数据拷贝了之后传递过去 (2)引用数据类型:实际上也是进行了数据拷贝然后传过去,实际上也是值传递,只不过传递过去的值和原有的值指向了同一个对象 所以在调用的 ...

  4. 最小生成树(次小生成树)(最小生成树不唯一) 模板:Kruskal算法和 Prim算法

    Kruskal模板:按照边权排序,开始从最小边生成树 #include<algorithm> #include<stdio.h> #include<string.h> ...

  5. VS2015 Visual Assist X 破解版安装教程

    前言 此方法适合VS2010~VS2015版本. 安装包下载方法:公众号[视觉IMAX]后台回复「VA助手」,即可得到安装包下载链接. 工作以来,一直在使用VS2015,之前一直根据的网上飘云阁的破解 ...

  6. Python python 数据类型--集

    # set 集 '''Python还包括集合的数据类型.集合是无序集合,没有重复元素. 基本用途包括成员资格测试和消除重复条目. 集合对象还支持数学运算,如并集,交集,差异和对称差异. ''' nam ...

  7. js 图片轮播简单版

    <html> <head> <meta charset="utf-8" /> <title></title> <s ...

  8. 解决ASP.NET MVC返回的JsonResult 中 日期类型数据格式问题,和返回的属性名称转为“驼峰命名法”和循环引用问题

    DateTime类型数据格式问题 问题 在使用ASP.NET MVC 在写项目的时候发现,返回给前端的JSON数据,日期类型是 Date(121454578784541) 的格式,需要前端来转换一下才 ...

  9. 相见恨晚的 Git 命令动画演示,一看就懂!

    虽然 Git 是一个强大的工具,但是我觉得大部分人都会同意我说的:它也可以是一个--噩梦!我一直觉得,使用 Git 的时候把操作过程在脑海里视觉化会非常有用:当我执行某个命令的时候,分支之间是如何交互 ...

  10. [斯坦福大学2014机器学习教程笔记]第五章-控制语句:for,while,if语句

    在本节中,我们将学习如何为Octave程序写控制语句. 首先,我们先学习如何使用for循环.我们将v设为一个10行1列的零向量. 接着,我们写一个for循环,让i等于1到10.写出来就是for i = ...