admin管理员组文章数量:1530518
2024年7月18日发(作者:)
如何使用Nikto漏洞扫描工具检测网站安全
随着信息技术的发展,网络应用越来越广泛,很多企业单位都依靠网站来运营,正因为
业务的不断提升和应用,致使网站的安全性显得越来越重要。另一方面,网络上的黑客也越
来越多,而且在利益驱使下,很多黑客对网站发起攻击,并以此谋利。作为网站的管理人员,
应该在黑客入侵之前发现网站的安全问题,使网站能更好的发挥作用。那么究竟如何检查网
站的安全隐患和漏洞呢?
下面我们介绍一款开放源代码的Web漏洞扫描软件,网站管理员可以用它对WEB站点进行安
全审计,尽早发现网站中存在的安全漏洞。
Nikto是一款开放源代码的、功能强大的WEB扫描评估软件,能对web服务器多种安全项目
进行测试的扫描软件,能在230多种服务器上扫描出 2600多种有潜在危险的文件、CGI及
其他问题,它可以扫描指定主机的WEB类型、主机名、特定目录、COOKIE、特定CGI漏洞、
返回主机允许的 http模式等等。它也使用LibWhiske库,但通常比Whisker更新的更为频
繁。Nikto是网管安全人员必备的WEB审计工具之一。
Nikto最新版本为2.0版,官方下载网站:[url]/[/url]
Nikto是基于PERL开发的程序,所以需要PERL环境。Nikto支持Windows(使用ActiveState
Perl环境)、Mac OSX、多种Linux 或Unix系统。Nikto使用SSL需要Net::SSLeay PERL
模式,则必须在Unix平台上安装OpenSSL。具体的可以参考nikto的帮助文档。
从官方网站上下载文件,在Linux系统解压操作:
tar -xvf
gzip -d
解压后的结果如下所示:
、docs、kbase、、plugins、 templates
Nikto的使用说明:
Nikto扫描需要主机目标IP、主机端口。默认扫描的是80端口。扫描主机目标IP地址可以
使用选项-h(host)。下面将扫描IP为192.168.0.1的TCP 80端口,如下所示:
perl –h 192.168.0.1
也可以自定义扫描的端口,可以使用选项-p(port),下面将扫描IP为192.168.0.1的TCP 443
端口,如下所示:
perl –h 192.168.0.1 –p 443
Nikto也可以同时扫描多个端口,使用选项-p(port),可以扫描一段范围(比如:80-90),
也可以扫描多个端口(比如:80,88,90)。下面扫描主机的80/88/443端口,如下所示:
Perl –h 192.168.0.1 –p 80,88,443
如果运行Nikto的主机是通过HTTP proxy来访问互联网的,也可以使用代理来扫描,使用
选项-u(useproxy)。下面将通过HTTP proxy来扫描,如下所示:
Perl –h 192.168.0.1 –p 80 –u
Nikto的更新:
Nikto的升级可以通过-update的命令来更新插件和数据库,如下所示:
Perl –update
也可以通过从网站下载来更新插件和数据库:[url]/[/url]
Nikto的选项说明:
-Cgidirs
扫描CGI目录。
-config
使用指定的config文件来替代安装在本地的文件
-dbcheck
选择语法错误的扫描数据库。
-evasion
使用LibWhisker中对IDS的躲避技术,可使用以下几种类型:
1.随机URL编码(非UTF-8方式)
2.自选择路径(/./)
3.虚假的请求结束
4.长的URL请求
5.参数隐藏
6.使用TAB作为命令的分隔符
7.大小写敏感
8.使用Windows路径分隔符替换/
9.会话重组
-findonly
仅用来发现HTTP和HTTPS端口,而不执行检测规则
-Format
指定检测报告输出文件的格式,默认是txt文件格式(csv/txt/htm)
-host
目标主机,主机名、IP地址、主机列表文件。
-id
ID和密码对于授权的HTTP认证。格式:id:password
-mutate
变化猜测技术
1.使用所有的root目录测试所有文件
2.猜测密码文件名字
3.列举Apache的用户名字(/~user)
4.列举cgiwrap的用户名字(/cgi-bin/cgiwrap/~user)
-nolookup
不执行主机名查找
-output
报告输出指定地点
-port
扫描端口指定,默认为80端口。
-Pause
每次操作之间的延迟时间
- Display
控制Nikto输出的显示
1.直接显示信息
2.显示的cookies信息
3.显示所有200/OK的反应
4.显示认证请求的URLs
输出
-ssl
强制在端口上使用SSL模式
-Single
执行单个对目标服务的请求操作。
-timeout
每个请求的超时时间,默认为10秒
-Tuning
Tuning 选项控制Nikto使用不同的方式来扫描目标。
0.文件上传
1.日志文件
2.默认的文件
3.信息泄漏
4.注射(XSS/Script/HTML)
5.远程文件检索(Web 目录中)
6.拒绝服务
7.远程文件检索(服务器)
8.代码执行-远程shell
注入
a.认证绕过
b.软件关联
g.属性(不要依懒banner的信息)
x.反向连接选项
-useproxy
使用指定代理扫描
-update
更新插件和数据库
例子:使用Nikto扫描目标主机10.0.0.12的phpwind论坛网站。
Perl –h 10.0.0.12 –o
查看文件,如下图所示:
图1
通过上面的扫描结果,我们可以发现这个Phpwind论坛网站,是在windows操作系统上,使
用Apache/2.2.4版本,Php/5.2.0版本,以及系统默认的配置文件和路径等。
综上所述,Nikto工具可以帮助我们对Web的安全进行审计,及时发现网站存在的安全漏洞,
对网站的安全做进一步的扫描评估。
简单扫描 目标基本WEB基本配制信息,服务器,PHP解析器等版本信息
perl –h 192.168.0.1
多端口扫描
Perl –h 192.168.0.1 –p 80,88,443
加代理扫描
Perl –h 192.168.0.1 –p 80 –u
CGI扫描 -C参数只能放在后面,应该可以指定相对目录。
Perl –h 192.168.0.1 -c
Perl –h 192.168.0.1 -c /phpbb
数据库扫描 此参数也需要跟在后面
Perl –h 192.168.0.1 -c -d
猜测apache默认配制密码 前提需要目标服务器允许guess
Perl –h 192.168.0.1 -m
报告输出指定地点
Perl –h 192.168.0.1 -o
Tuning选项控制Nikto使用不同的方式来扫描目标。 这个最有价值。
-T参数后的数字是隐藏的,大家可以灵活搭配使用
0.文件上传
1.日志文件
2.默认的文件
3.信息泄漏
4.注射(XSS/Script/HTML)
5.远程文件检索(Web 目录中)
6.拒绝服务
7.远程文件检索(服务器)
8.代码执行-远程shell
注入
a.认证绕过
b.软件关联
g.属性(不要依懒banner的信息)
x.反向连接选项
Perl –h 192.168.0.1 -T 58
Perl –h 192.168.0.1 -T 58x
Perl –h 192.168.0.1 -T 默认不指定数字,应该是全部扫描
吧, 没测试过
更新插件和数据库
Perl -update
完全点的检测一个主机信息
Perl –h 192.168.0.1 -m -T -c -o 结果.txt
版权声明:本文标题:如何使用Nikto漏洞扫描工具检测网站安全 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1721264692a868726.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论