当前位置: 首页 > news >正文

慕课网站开发文档河南今日头条新闻最新

慕课网站开发文档,河南今日头条新闻最新,做自己的网站logo,济南建网站公司Python武器库开发-武器库篇之子域名扫描器开发(四十一) 在我们做红队攻防或者渗透测试的过程中,信息收集往往都是第一步的,有人说:渗透的本质就是信息收集,前期好的信息收集很大程度上决定了渗透的质量和攻击面,本文将…

Python武器库开发-武器库篇之子域名扫描器开发(四十一)

在我们做红队攻防或者渗透测试的过程中,信息收集往往都是第一步的,有人说:渗透的本质就是信息收集,前期好的信息收集很大程度上决定了渗透的质量和攻击面,本文将教会大家如何开发一个子域名扫描器进行主动信息收集。

对于一个网站的URL,列如:https://www.baidu.com一般有以下几个部分组成:

  1. 协议
  2. 子域
  3. 域名
  4. 顶级域名

如果我们要对一个子域名进行爆破,那么我们就需要修改子域这一个部分,然后去观察返回的响应包,我们都知道状态码 200 代表成功,所以我们在子域名进行爆破的过程中去判断返回包的状态码是不是200就能判断出当前爆破的这个域名是否存在。现在我们开发子域名扫描器的核心思想已经非常清楚了。当然说道爆破肯定就离不开字典了,所以大家也请自己去准备一个适合子域名爆破的字典。

首先我们来做一个初版的子域名扫描器,内容代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-#引用库
import requestsdef domain_scan(domain_name,sub_names):#循环读取子域名字典for sub in sub_names:#添加请求头headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.84 Safari/537.36"}url = f"https://{sub}.{domain_name}"try:requests.head = headersrequests.get(url)#输出爆破成功的子域名print(f"successful! [*]{url}")except requests.ConnectionError:print("error")passif __name__ == '__main__':#获取要爆破的域名dom_name = input("enter the domain name:")with open("subdomain.txt") as file:#读取字典文件sub_name = file.read()#区分换行sub_dom = sub_name.splitlines()print("文件中存在的子域名数量:{}".format(len(sub_dom)))print("文件子域名列表:{}".format(sub_dom))domain_scan(dom_name,sub_dom)

代码运行的实际效果图如下:

在这里插入图片描述

首先我们去输入我们想要爆破的域名,比如baidu.com

在这里插入图片描述

然后他将从字典中选出爆破成功的子域名并打印输出出来,没有的则输出 error

在这里插入图片描述

当然在实际的渗透过程中,我们都需要添加代理池去做到隐蔽自己的目的,所以接下来开发一个添加了代理池的子域名扫描器版本,代码内容如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-#引用库
import requests# 添加你的代理池的隧道域名:端口号
tunnel = "xxx.com:xxxx"# 修改你的用户名和密码
username = "username"
password = "password"
proxies = {"http": "http://%(user)s:%(pwd)s@%(proxy)s/" % {"user": username, "pwd": password, "proxy": tunnel},"https": "http://%(user)s:%(pwd)s@%(proxy)s/" % {"user": username, "pwd": password, "proxy": tunnel}
}def domain_scan(domain_name,sub_names):#循环读取子域名字典for sub in sub_names:#添加请求头headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.84 Safari/537.36"}url = f"https://{sub}.{domain_name}"try:requests.head = headersrequests.get(url,proxies=proxies)#输出爆破成功的子域名print(f"successful! [*]{url}")except requests.ConnectionError:print("error")passif __name__ == '__main__':#获取要爆破的域名dom_name = input("enter the domain name:")with open("subdomain.txt") as file:#读取字典文件sub_name = file.read()#区分换行sub_dom = sub_name.splitlines()print("文件中存在的子域名数量:{}".format(len(sub_dom)))print("文件子域名列表:{}".format(sub_dom))domain_scan(dom_name,sub_dom)

这串代码中只需要你配置上自己的代理池的IP和端口,还有账户的用户名和密码,就可以启用代理池配置去扫描子域名了。代码效果图如下:

在这里插入图片描述

如果想要加快爆破的速度的话,那么也可以添加多线程进行同时爆破,这里就不多演示了。

http://www.mmbaike.com/news/107745.html

相关文章:

  • 企业网站标题优化网站建设技术解决方案
  • 企业网店推广运营策略seo推广怎么样
  • 做殡葬名片的网站滴滴友链
  • 网站开发参考文献期刊百度竞价推广费用
  • 做网站广告词找王思奇广州百度seo优化排名
  • 网站建设价格槽闸阀seo课程培训学校
  • 网站关键词优化步骤百度关键词搜索推广
  • 做网站武汉兰州网站seo服务
  • 辽宁大连网站建设关于普通话的手抄报
  • 网站后台bootstrap指数基金怎么买才赚钱
  • 做网站推广还是B2B推广好软文案例200字
  • 做电影的网站赚什么钱域名注册 阿里云
  • 做窗帘的网站最有效的15个营销方法
  • 地方性小网站的建设深圳网站优化网站
  • 桂林做网站的公司有哪些app推广一手单平台
  • 谁有专门做外挂的网站百度爱采购推广怎么收费
  • 我要建网站需要什么长沙官网seo技术厂家
  • 卡密提取网站怎么做跟我学seo从入门到精通
  • 网站推广自己可以做吗百度如何添加店铺位置信息
  • 网站建设可以在家做吗免费推广的渠道有哪些
  • 怎样设计网站模板百度搜索资源平台提交
  • 做跨境电商一件代发的网站互联网培训机构排名前十
  • 长沙门户网站建设优化网站收费标准
  • 研究院网站系统建设方案百度seo搜搜
  • 流媒体网站开发教程百度竞价推广收费
  • 最新军事新闻伊朗页面优化的方法
  • 网站如何引入流量最新互联网项目平台网站
  • 建设银行 福州招聘网站自动点击器下载
  • apache 网站日志东莞快速优化排名
  • 湛江市国外网站建设报价推广平台免费b2b网站大全