• 四层发现-UDP发现


    udp发现要注意选择一个不常用的端口,如果目标ip在up时目标端口是开放状态,那么不管目标ip是否为up状态,都不会收到任何回应,只有在目标ip为down状态且目标端口为关闭状态,才会返回一个目标不可达的icmp数据包。

    为了理解UDP发现的过程,还是使用scapy进行手动发包。

    先定义好UDP数据包结构:

    定义及发送:

    在图中可以看到icmp端口不可达的信息,这足以证明目标ip是up状态。

    同样,为了实现一个网段的自动扫描,可以使用python脚本的方式:

     1 #!/usr/bin/python
     2 from scapy.all import *
     3 
     4 if len(sys.argv) != 2:
     5     print "this script need a arg"
     6     sys.exit()
     7 
     8 address = str(sys.argv[1])
     9 prefix = address.split(".")[0] + "." + address.split(".")[1] + "." + address.split(".")[2] + "."
    10 
    11 for addr in range(100, 254):
    12     response = sr1(IP(dst = prefix + str(addr)) / UDP(dport = 45454), timeout = 0.1,verbose = 0)
    13     try:
    14         if int(response[IP].proto) == 1:
    15             print prefix + str(addr)
    16     except:
    17         pass
    View Code
  • 相关阅读:
    mongoDB安装配置
    linux-批量修改目录下后缀shell
    备份mysql的shell
    mysql_DML_索引、视图
    mysql_存储过程
    mysql_备份_mysqldump
    mysql_DCL_grant/revoke
    mysql_DML_select_子查询
    mysql_DML_select_union
    mysql_DML_select_聚合join
  • 原文地址:https://www.cnblogs.com/angiejc/p/9384662.html
Copyright © 2020-2023  润新知