乙方渗透测试之Fuzz爆破

发表于:2018-1-29 14:41

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:whoam1    来源:个人博客


  端口爆破
  hydra -L user.txt -P pass.txt -F ftp://192.168.0.1
  其中-L和-P大写均为挂载字典,-F表示全局一旦发现合法用户密码即停止破解,亦可加入-t参数指定线程数.
  浅谈爆破在渗透测试中的重要性:hydra案例
  mailbrute使用poplib3模块
  验证码
  暴力破解之验证码破解
  识别验证码暴力破解小记
  python下调用pytesseract识别某网站验证码
  一些打码平台就不贴上了,根据个人喜好
  域
  前段时间一家授权厂商,在拿下企业邮箱导出联系人后,构造强弱密码规则,爆破vpn登录口,得到的就是域密码,直接内网。
  针对域用户暴力破解,就要构造高强度弱规则密码字典,在满足域密码规则的前提下,爆破跟企业相关的弱口令,此处对信息收集的要求很高,找到特定规则,产出就会很高,危害也就很大。
  爆破之随机代理
  关于限制ip,网上爬一堆代理,验证,做一个代理池,为每一个爆破请求分配一个代理。
  常用的代理池
  抓取代理程序
  Python
  import requests
  import re
  import json
  #http://httpbin.org/get?show_env=1
  #http://www.ip181.com/
  def online():
      downloads = []
      test_url = 'https://www.rmccurdy.com/scripts/proxy/good.txt'
      down = requests.get(test_url).content
      k = down.split('\n')
      for j in k:
          if j not in downloads and j != ':':
              downloads.append(j)
      urls = ['http://www.proxylists.net/http_highanon.txt','http://www.proxylists.net/http.txt','http://ab57.ru/downloads/proxylist.txt']
      for url in urls:
          download = requests.get(url).content
          key = download.split('\r\n')
          for i in key:
              if i not in downloads and i != '':
                  downloads.append(i)
      return downloads
  def check(host):
      proxies = {
          'http':host,
          'https':host
      }
      try:
          r = requests.get("http://2017.ip138.com/ic.asp", proxies=proxies,timeout=3)
          ip = re.findall(r'\[(.*?)\]',r.content)[0]
          if ip.count('.') == 3:
              return ip
      except:pass
  if __name__ == '__main__':  
      url = 'http://2017.ip138.com/ic.asp'
      rep = requests.get(url=url)
      verify_ip = re.findall(r'\[(.*?)\]',rep.content)[0]
      onlines = online()
      for pro in onlines:
          if verify_ip != check(pro) and check(pro):
              print pro
      '''
      f = open('proxy.list','r')
      for i in f.readlines():
          handle = json.loads(i)
          host = handle['host']
          port = handle['port']
          key = str(host) + ':' + str(port)
          if verify_ip != check(key) and check(key) == host:
              print key''' 
  burp使用代理:
  后记
  爆破门槛不高,入手快,产出也很高,但是在渗透测试时的优先级不高,一般是测完逻辑漏洞,才进行的步骤,其实渗透也没什么步骤,路子野的话,效率会更高。本篇不定时更新,记录平时遇到的好的爆破姿势,总结分享。

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号