第十三章(二)—WEB渗透(扫描工具NIKTO)

1.实验环境

metasploitable

  • DVWA

下载安装

下载地址:https://sourceforge.net/projects/metasploitable/
在这里插入图片描述
用vm打开.vmsd文件,如果遇见需要配置文件什么的,就用vm打开vmx文件。
开启虚拟机,账号密码都是:msfadmin

网络配置

保证kail和metasploitable两个虚机处在同一个网段。
kail:
在这里插入图片描述
metasploitable:
在这里插入图片描述
测试一下是否能互相ping通。
默认情况下,metasploitable上webapplication,可以在kail虚机中通过浏览器访问一下,如下图所示,页面可以打开。

在这里插入图片描述

DVWA

我们要使用的主要目标就是DVWA:
在这里插入图片描述
默认账户已经给出来了:
在这里插入图片描述
DVWA他的代码安全性里分成了三个级别,我们可以通过选择来对他的安全级别进行修改。
在这里插入图片描述

2.侦察

Httrack工具

作用:对目标网站所有可访问可下载的网页进行克隆复制放到本地。
目的:尽量减少与目标服务器进行通信的交互,如果交互太多,可能在侦察阶段就会触发目标服务器的某些报警机制

使用

创建目录,该目录用于存放克隆好的项目。

cd /root
mkdir dvwa
httrack
apt-get install httrack -y #下载httrack
enter project name: #项目名
base path:#项目在本地的存放路径
enter urls:#你要克隆的网站的地址
	1.mirrir web site #直接镜像站点
	2.mirror web site with wizard #用一个向导来完成镜像
	3.just get files indicated #只下载网站中某种类型的文件
	4.mirror all links in urls #镜像在当前url下的所有的连接
	5.test links in urls #只测试在当前url里的链接
	0.退出
#比较常用的是1和2
proxy: #代理
wildcards:#定义通配符,乜有特殊的目标直接写*
additional options:#额外的选项

在这里插入图片描述
在这里插入图片描述

3.扫描工具

对目标网站进行了了侦察、信息收集,收集的差不多之后,势必要开始对目标系统进行主动性的扫描,这也是信息收集的一个手段,扫描的过程可以直接去发现目标系统的漏洞和问题。
基于web的扫描工具大部分都支持两种扫描模式,第一种代理截断模式,第二种主动扫描模式。

NIKTO

perl语言开发的开源web安全扫描器。

  • 扫描web服务器使用的软件版本
  • 搜索现在存在安全隐患的文件
  • 扫描服务器上配置的漏洞
  • 对web application层面的安全隐患进行检查
  • 避免404误判
    很多服务器不遵守RFC标准,对于不存在的对象返回200响应码,依据响应文件内容判断,不同扩展名的文件404响应内容不同,去除头,时间信息后,对静态的比较固定的返回信息内容取MD5值,通过这种方法提高扫描准确性,避免大量404误判。
    参数-no404,如果使用该参数,那么nikto在每次扫描前不会去尝试各种扩展名的文件去判断,而是直接向服务器发送请求,根据基本的返回响应吗和页面内容取判断服务器是否存在尝试的页面,会提高性能,但是这样准确性会降低,会产生很多误判,不建议使用。
使用
nikto -update #从CIRT.net网站升级他的数据库和插件,若是更新不成功,可以通过访问https://cirt.net/index.php去下载他最新的版本来使用
nikto -list-plugins #查看nikto的插件

#对目标进行扫描
nikto -host http://1.1.1.1 
nikto -host 1.1.1.1 -port 80,443 
nikto -host www.baidu.com -port 443 -ssl 
nikto -host 10.0.0.141 -port 80 -output 
nikto -host host.txt #扫描多个网站时,把多个网站放到host.txt里,一行表示一个要扫描的主机

nmap -p80 10.0.0.0/24 -oG - | nikto -host -#与nmap结合,用nmap发现网络里开放web端口的ip地址,发现后将ip交给nikto去进行进一步的扫描。即查一个网段
nikto -host http://10.0.0.141/dvwa -useproxy http://localhost:9150 #nikto支持代理,为了避免扫描时触发对方服务器报警机制导致我们的ip被封掉,所以可以使用一些代理
nikto -vhost 域名

-id+ #可以指定账号密码,但是该参数只适用于http身份认证,即他不是基于表单的身份认证,是基于websever本身实现的基于http协议实现的身份认证,这种身份认证会使用你的账号:密码放在一起进行一个base64的编码,然后把这个值作为身份认证信息发给服务器端,由服务器webserver来进行身份认证,而不是由webapplication代码层面实现的身份认证。

#nikto的配置文件
/etc/nikto.conf

在这里插入图片描述
在这里插入图片描述

交互性参数
回车 #报告当前扫描的状态
v #显示详细的信息
d #debug,最详细的信息,可以看到每一个http的指令
e #错误的报告信息
p #扫描进度
r #把服务器给我的所有重定向显示出来
c #把服务器给我的所有cookie全部现实出来
a #把身份认证这个相关过程现实出来
q #停止扫描
N #当使用的时候host.txt,即指定多个文件目标是,可以用该参数直接进入下一个主机目标
P #暂停
配置文件

/etc/nikto.conf

USERAGENT #客户端代理
RFIURL #RFI远程文件引用的一种攻击方式,验证这种远程文件包含漏洞攻击方式是否存在,nikto默认会使用http://cirt.net/rfiinc.txt文件,也可以手动修改成自己构建的url
CIRT #更新的时候使用的服务器端的ip地址
PROXY setting下的内容 #使用代理,就不用使用-useproxy这个命令
STATIC-COOKIE #使用cookie的值

使用cookie例子:
访问10.0.0.141/dvwa,登录
在这里插入图片描述
修改nikto.conf
在这里插入图片描述
使用debug模式查看
在这里插入图片描述

躲避技术
-evasion #使用LibWhisker中对IDS的躲避技术
nikto -host http://10.0.0.141/dvwa/ -evasion 167(逃避技术,可多选) 

可使用以下几种类型:
1.随机URL编码(非UTF-8方式)
2.自选择路径(/./)
3.过早结束的URL
4.优先考虑长随机字符串
5.参数欺骗
6.使用TAB作为命令的分隔符
7.使用变化的URL
8.使用windows路径分隔符“\”

Nikto是一款Web安全扫描工具,可以扫描指定主机的web类型,主机名,特定目录,cookie,特定CGI漏洞,XSS漏洞,SQL注入漏洞等,非常强大滴说。。。 root@91ri.org:~# cd /pentest/web/nikto/ root@91ri.org:/pentest/web/nikto# ls docs nikto.conf nikto.pl plugins templates root@91ri.org:/pentest/web/nikto# ./nikto.pl -h Option host requires an argument -config+ Use this config file -Cgidirs+ scan these CGI dirs: ‘none’, ‘all’, or values like “/cgi/ /cgi-a/” -dbcheck check database and other key files for syntax errors -Display+ Turn on/off display outputs -evasion+ ids evasion technique -Format+ save file (-o) format -host+ target host -Help Extended help information -id+ Host authentication to use, format is id:pass or id:pass:realm -list-plugins List all available plugins -mutate+ Guess additional file names -mutate-options+ Provide extra information for mutations -output+ Write output to this file -nocache Disables the URI cache -nossl Disables using SSL -no404 Disables 404 checks -port+ Port to use (default 80) -Plugins+ List of plugins to run (default: ALL) -root+ Prepend root value to all requests, format is /directory -ssl Force ssl mode on port -Single Single request mode -timeout+ Timeout (default 2 seconds) -Tuning+ Scan tuning -update Update databases and plugins from CIRT.net -vhost+ Virtual host (for Host header) -Version Print plugin and database versions + requires a value Note: This is the short help output. Use -H for full help. 升级插件 root@91ri.org:/pentest/web/nikto# ./nikto.pl -update -h 指定扫描的目标 –p 端口 root@91ri.org:/pentest/web/nikto# ./nikto.pl -h www.91ri.org -p 80 -C 指定CGI目录 –all表示猜解CGI目录 root@91ri.org:/pentest/web/nikto# ./nikto.pl -h www.91ri.org -C all -T选项包含很多小选项 –T 9表示扫描SQL注入漏洞 root@91ri.org:/pentest/web/nikto# ./nikto.pl -h www.91ri.org -T 9 -D指定输出显示 2显示cookies root@91ri.org:/pentest/web/nikto# ./nikto.pl -h www.91ri.org -D 2 -T选项包含的小选项解释: 0 检查文件上传页面 1 检查web日志 2 检查错误配置或默认文件 3检查信息泄露问题 4 检查XSS/Script/HTML问题 5 从根目录检查是否存在可访问的文件 6 检查拒绝服务问题 7 从任意文件检索是否存在可访问文件 8 检查是否存在系统命令执行漏洞 9 检查SQL注入漏洞 a 检查认证绕过问题 b 识别安装的软件版本 c 检查源代码泄露问题 x 反向链接选项
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值