Kali Linux Web渗透测试手册(第二版) - 2.4 - 识别Web应用防火墙

时间:2021-11-29 13:38:37

Kali Linux Web渗透测试手册(第二版) - 2.4 - 识别Web应用防火墙

 

翻译来自掣雷小组

成员信息:

thr0cyte,Gr33k,花花,MrTools,R1ght0us,7089bAt

这个公众号,一定要关注哦,慢慢会跟上面老哥们一起分享很多干货哦~~

 

 

 

记红色的部分为今日更新内容。

第二章:侦察

介绍

2.1、被动信息收集

2.2、使用Recon-ng收集信息

2.3、使用Nmap扫描和识别应用服务

2.4、识别web应用防火墙

2.5、确定HTTPS加密参数

2.6、使用浏览器的开发工具分析和更改基本行为

2.7、获取和修改cookie

2.8、利用robots.txt

 

2.4、识别Web应用防火墙

web应用程序防火墙(WAF)是一种设备或软件,它检查发送到web服务器的包,以便识别和阻止那些可能是恶意的包,通常基于签名或正则表达式

如果未检测到的WAF阻塞了我们的请求或禁止了我们的IP地址,我们最终可能会在渗透测试中要处理很多问题。在执行渗透测试时,侦察阶段必须包括WAF、入侵检测系统(IDS)或入侵预防系统(IPS)的检测和识别。这是需要采取必要措施防止被这些保护装置屏蔽或禁止的。

在这个小节中,我们将使用不同的方法,以及KaliLinux中包含的工具,来检测和识别目标和我们之间是否存在web应用程序防火墙。

 

怎么做…

有很多方法来检测应用程序是否受到Waf和IDs的保护;在攻击的时候被阻止和拉入黑名单是最糟糕的事情,所以我们会使用Nmap和wafw00f来确定我们的目标是否存在WAF。

 

1.  Nmap有几个脚本可以来测试WAF中是否存在于所有检测到的HTTP端口.让我们来 尝试一下

# nmap -sT -sV-p 80,443,8080,8081 --script=http-waf-detect 192.168.56.11

Kali Linux Web渗透测试手册(第二版) - 2.4 - 识别Web应用防火墙 

看起来没有WAF来保护这个服务器

 

2.  现在,我们在有防火墙保护的服务器上尝试相同的命令。在这里,我们使用example.com来座椅虚构的名称;可以来尝试任何受保护的服务器。

# nmap -p 80,443--script=http-waf-detect www.example.com

Kali Linux Web渗透测试手册(第二版) - 2.4 - 识别Web应用防火墙

 

 

3. Nmap还有一个脚本可以帮助我们来更准确地识别正在使用的WAF。这个脚本是: http-waf-fingerprint:

# nmap -p80,443 --script=http-waf-fingerprint www.example.com 

4. KaliLinux中还有另一个工具,可以帮助我们来检测识别WAF的工具,就是wafw00f。假如www.example.com 是一个受WAF保护的网站:

# wafw00f  www.example.com

Kali Linux Web渗透测试手册(第二版) - 2.4 - 识别Web应用防火墙

 

 

 

它是怎么工作的…

WAF检测的工作原理是向服务器发送特定的请求,然后分析响应;例如,在HTTP WAF检测的情况下,它发送一些恶意的数据包,并且在寻找数据包被阻止,拒绝或者检测的指示符时比较响应.HTTP WAF指纹也会出现同样的情况,这个脚本也尝试解释这种响应,并且根据已知的IDSs和WAF,对其分类.同样也适用wafw00f。

 

 

Kali Linux Web渗透测试手册(第二版) - 2.4 - 识别Web应用防火墙