用户
搜索
  • TA的每日心情
    奋斗
    2021-4-15 22:46
  • 签到天数: 22 天

    连续签到: 1 天

    [LV.4]经常看看II

    安全团队

    wiki.bylibrary.cn

    Rank: 7Rank: 7Rank: 7

    7

    主题

    26

    帖子

    439

    魔法币
    收听
    0
    粉丝
    1
    注册时间
    2018-10-31

    i春秋认证安全团队

    发表于 2021-3-15 10:41:26 73645
    本帖最后由 白泽Sec安全团队 于 2021-3-15 02:42 编辑

    前言
    作者:白泽Sec安全团队_aaaahui
    声明:转载请注明出处

    前段时间老大发来任务,让帮忙用nmap扫一些ip段,我拿过来就准备开扫,但是发现nmap无法直接扫描同一B段不同C段下的IP段,例如111.111.111.0-111.111.222.255

    原本我是准备写个工具联动nmap来扫描大批量IP段资产的,但是由于环境有些问题,工具成品还没有出来,并且hvv在即,就先和大家分享一下写的小脚本,将我们要扫描的IP循环写入文件中,再用nmap扫描就可以了

    小白向脚本,保存为test.py运行,根据提示输入即可:

    [Python] 纯文本查看 复制代码
    a = int(input("请输入您要扫描的ip A段地址:"))
    while not 0 < a <= 255:
      a = int(input("您的输入有误,请重新输入您要扫描的ip A段地址:"))
    ​
    b = int(input("请输入您要扫描的ip B段地址:"))
    while not 0 <= b <= 255:
      b = int(input("您的输入有误,请重新输入您要扫描的ip B段地址:"))
    ​
    ipAB = str(a) + "." + str(b)
    while 1:
      c1 = int(input("请输入您要扫描的ip C段地址(起始地址):"))
      while not 0 <= c1 <= 255:
          c1 = int(input("您的输入有误,请重新输入您要扫描的ip C段地址(起始地址):"))
    ​
      c2 = int(input("请输入您要扫描的ip C段地址(结束地址):"))
      while not 0 <= c2 <= 255:
          c2 = int(input("您的输入有误,请重新输入您要扫描的ip C段地址(结束地址):"))
      if c2 < c1:
          print("您的输入有误,青重新输入!")
      else:
          break
    ​
    ip = []
    ​
    g = input("请输入要您要储存的IP的方式:\n1.单条IP方式,例:192.168.0.1\n2.同一C段IP存储为/24形式,例:192.168.0.0/24\n")
    ​
    while 1:
      if g=="1":
          for i in range(c2 + 1 - c1):
              e = c1 + i
              e = str(e)
              for j in range(256):
                  j = str(j)
                  ip.append(ipAB + "." + e + "." + j)
          break
      elif g=="2":
          for i in range(c2 + 1 - c1):
              e = c1 + i
              e = str(e)
              ip.append(ipAB + "." + e + ".0/24")
          break
      else:
          g=input("您的输入有误,请重新输入要您要储存的IP的方式:\n1.单条IP方式,例:192.168.0.1\n2.同一C段IP存储为/24形式,例:192.168.0.0/24\n")
    ​
    ​
    ​
    f = input("是否要保存全部ip地址?(Y/N):").upper()
    while 1:
      if f == "Y":
          spath = input(r"请输入您要保存的路径+文件名,例如(C:\test.txt),只输入文件名则默认保存在工具路径下:")
          while 1:
              try:
                  with open(spath, "a+") as file:
                      for i in range(len(ip)):
                          file.write(ip + "\n")
                      print("保存成功!")
                      break
              except:
                  spath=input(r"您输入的路径路径有误,请重新输入您要保存的路径+文件名,例如(C:\test.txt),只输入文件名则默认保存在工具路径下:")
          break
      elif f == "N":
          print("没有保存ip地址!")
          break
      else:
          f = input("您的输入有误,请重新输入(Y/N):")
    

    可以选择自己想要保存的IP形式,可以是以同一C段形式,也可以是单条形式,代码写的不好,师傅们有建议的尽管提出来,会听取师傅们意见改进的~[/md]
    白阁文库:https://wiki.bylibrary.cn
    公众号:白泽Sec
    挺好的啦 一目了然呢  感谢分享哦~
    使用道具 举报 回复
    感谢分享
    使用道具 举报 回复
    发表于 2021-3-15 20:26:05
    可爱的小雨淅淅 发表于 2021-3-15 08:10
    挺好的啦 一目了然呢  感谢分享哦~

    白阁文库:https://wiki.bylibrary.cn
    公众号:白泽Sec
    使用道具 举报 回复
    发表于 2021-3-15 20:26:14
    白阁文库:https://wiki.bylibrary.cn
    公众号:白泽Sec
    使用道具 举报 回复
    发表于 2021-3-17 16:38:03
    感谢分享!
    使用道具 举报 回复
    发表于 2021-3-18 13:50:40
    白阁文库:https://wiki.bylibrary.cn
    公众号:白泽Sec
    使用道具 举报 回复
    发表于 2021-4-7 13:00:02
    白阁文库:https://wiki.bylibrary.cn
    公众号:白泽Sec
    使用道具 举报 回复
    发新帖
    您需要登录后才可以回帖 登录 | 立即注册