您的位置:首页 > 其它

nmap绕过WAF

2017-01-11 17:31 190 查看
1、碎片化
Nmap发送8个字节的数据包绕过防火墙/IDS/IPS。这种技术已经很古老了,但是在防火墙配置不当的时候依旧有用。
Nmap -f host
MTU,最大传输单元,它是碎片化的别名,我们可以指定它的大小。
Nmap --mtu 66 host
上面的Nmap扫描使用16字节的数据包而不是8个字节。所以我们可以指定自定义数据包大小为8的倍数。
2、诱饵
这种类型的扫描是非常隐蔽且无法察觉。目标由多个假冒或伪造IP地址进行扫描。这样防火墙就会认为***或扫描是通过多个资源或IP地址进行,于是就绕过了防火墙。
诱饵在初始的ping扫描(使用ICMP,SYN,ACK等)使用,在实际的端口扫描阶段使用。诱饵在远程操作系统检测(-O)期间也使用。诱饵不在版本检测工作或TCP连接扫描中使用。
这实际上在目标看来是由多个系统同时扫描,这使得防火墙更难追查扫描的来源。
有两种方式来执行诱饵扫描:
1.nmap –D RND:10 TARGET
2.nmap –D decoy1,decoy2,decoy3(诱饵主机) target
以下网络抓包显示多个诱饵将欺骗防火墙。
3、空闲扫描
***者将首先利用一个空闲的系统并用它来扫描目标系统。
扫描的工作原理是利用某些系统中采用可预见的IP序列ID生成。为了使空闲扫描成功,僵尸主机的系统必须是在扫描时间处于闲置状态。对于任何疑问,请参考之前的文章。
在这种技术中会隐藏***者的IP地址。
Nmap –P0 -sI zombie(僵尸) target
我们使用tcpdump来捕获所有网络流量。
Tcpdump -i interface
4、选项–source-port
每个TCP数据包带有源端口号。默认情况下Nmap会随机选择一个可用的传出源端口来探测目标。该–source-port选项将强制Nmap使用指定的端口作为源端口。这种技术是利用了盲目地接受基于特定端口号的传入流量的防火墙的弱点。端口21(FTP),端口53(DNS)和67(DHCP)是这种扫描类型的常见端口。
Nmap --source-port port target
5、随机数据长度:
附加随机数据长度,我们也可以绕过防火墙。许多防火墙通过检查数据包的大小来识别潜伏中的端口扫描。这是因为许多扫描器会发送具有特定大小的数据包。为了躲避那种检测,我们可以使用命令–data-length增加额外的数据,以便与默认大小不同。在下图中,我们通过加入25多个字节改变数据包大小。
nmap --data-length target
捕获数据流量
6、随机顺序扫描目标:
选项–randomize-host用于随机 顺序扫描指定目标。–randomize-host有助于防止因连续 扫描多个目标而防火墙和***检测系统检测到。
nmap --randomize-hosts targets
7、MAC地址欺骗:
每台机器都有自己独特的mac地址。因此这也是绕过防火墙的另一种方法,因为某些防火墙是基于MAC地址启用规则的。为了获得扫描结果,您需要先了解哪些MAC地址可以使用。这可以通过手动或先进的模糊测试完成。我更喜欢模糊测试,用Python实现非常容易。我们只需要手工导入正则表达式到Python中,然后自动化执行。
特别是–spoof-MAC选项使您能够从一个特定的供应商选择一个MAC地址,选择一个随机的MAC地址,或者设定您所选择的特定MAC地址。 MAC地址欺骗的另一个优点是,你让你的扫描隐蔽,因为你的实际MAC地址就不会出现在防火墙的日志文件。
nmap -sT -PN –spoof-mac aa:bb:cc:dd:ee:ff target
8、发送错误校验
在某些防火墙和IDS / IPS,只会检查有正确校验包的数据包。因此,***者通过发送错误校验欺骗IDS / IPS。
nmap --badsum target
9、Sun-RPC 扫描
什么是Sun RPC?Sun RPC(远程过程调用)是一种Unix协议,用来实现多种服务比如NFS。最初由Sun开发,但现在广泛使用在其他平台上(包括Digital Unix的)。也被称为开放式网络计算(ONC)。
Sun RPC包带有一个RPC编译器,自动生成服务端和客户端的存根。
nmap带有将近600个RPC程序的数据库。许多RPC服务使用高端口编号或者使用UDP协议,RPC程序还有严重的远程利用漏洞。所以网络管理员和安全审计人员往往希望了解更多在他们的网络内有关任何RPC程序。
我们可以通过以下命令获得RPC 的详细信息:
rpcinfo/rpcinfo --p hostname
nmap通过以下三个步骤跟开放的RPC端口直接通信,然后获取信息。
1)使用TCP或者UDP扫描开放的端口。
2)-sV选项检查使用Sun RPC协议的开放端口。
3)RPC暴力破解引擎会逐一向nmap-rpc数据库中记录的端口发送空命令,来判断RPC程序。当nmap猜测错误,会收到一条错误消息,指出请求的端口并没有运行PRC程序。当nmap耗尽了所有已知的记录,或者端口返回了非RPC的数据包,nmap才会放弃。
SSL后处理器扫描
NMAP具有检测SSL加密协议的能力,进行版本检测时会自动启用这个功能。正如先前讨论的RPC扫描,只要检测一个适当的(SSL)端口自动执行将SSL后处理器扫描。
命令:
nmap -Pn -sSV -T4 –F target
转载自http://www.2cto.com/article/201604/498533.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nmap WAF