zoukankan      html  css  js  c++  java
  • 防火墙识别、负载均衡识别、waf识别

    防火墙识别:

    通过发送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!
    Example:./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。

  • 相关阅读:
    性能篇系列—stream详解
    Java正则表达式详细解析
    干货系列性能篇之——序列化
    面试官之问:知道你的接口“QPS”是多少吗?
    Java性能之优化RPC网络通信
    Spring之 JDBC 异常
    Java性能之synchronized锁的优化
    浅谈Java中switch分支语句
    Spring Boot 之异步执行方法
    Java性能 -- Lock优化
  • 原文地址:https://www.cnblogs.com/angiejc/p/9390653.html
Copyright © 2011-2022 走看看