1. 程式人生 > >防火墻識別、負載均衡識別、waf識別

防火墻識別、負載均衡識別、waf識別

過濾 n! one 均衡 http lse verbose uri pytho

防火墻識別:

通過發送SYN和ACK數據包並分析回包可以大概判斷端口是否被防火墻過濾,對應關系如下表:

技術分享圖片

Python代碼實現:

技術分享圖片
 1 #!/usr/bin/python
 2 from scapy.all import *
 3 
 4 if len(sys.argv) != 3:
 5     print "This script needs 2 args!\nExample:./firewall_detect.py 192.168.0.0 80"
 6     sys.exit()
 7 
 8 ip = sys.argv[1]
 9 port = int(sys.argv[2])
10 11 r1 = sr1(IP(dst = ip) / TCP(flags = "S", dport = port), timeout = 1, verbose = 0) 12 r2 = sr1(IP(dst = ip) / TCP(flags = "A", dport = port), timeout = 1, verbose = 0) 13 14 if (r1 == None and r2[TCP].flags == "R") or ((r1[TCP].flags == "SA" or r1[TCP].flags == "SR") and r2 == None): 15 print
"Filtered!" 16 elif (r1[TCP].flags == "SA" or r1[TCP].flags == "SR") and r2[TCP].flags == "R": 17 print "Unfiltered/Open!" 18 else: 19 print "Closed!"
View Code

使用該腳本測試靶機:

技術分享圖片

負載均衡識別:

負載均衡技術說白了就是不讓所有的訪問量集中到一臺服務器上,從而實現網絡流量、服務器負載的平均分配,從而保證整個系統的高度可用性。

識別負載均衡的最常用的的命令就是lbd,用這個命令掃描大型網站一般都會掃除相應的結果。

WAF識別:

WAF全稱是web application firewall,即web應用防火墻。

wafw00f是kali上集成的WAF檢測工具,在命令後面接上要識別的站點就可以進行識別了:

技術分享圖片

我們可以看到微軟官網使用的是開源的ModSecurity。

防火墻識別、負載均衡識別、waf識別