子域名扫描, 后台扫描
子域名和后台扫描
一, 子域名扫描
在渗透测试的早期阶段,子域名扫描是一个非常重要的步骤,它有助于识别目标组织的网络结构和在线资源。
子域名扫描应该在获得适当的权限和授权的情况下进行,以确保所有活动都是合法和合规的。
1. 原因与目的
以下是进行子域名扫描的几个主要原因和目的:
##### 1.1 **信息收集和枚举**:- 通过子域名扫描,渗透测试人员可以收集有关目标组织网络结构的宝贵信息。- 这包括识别网络服务、服务器、应用程序和其他在线资源。##### 1.2 **攻击面发现**:- 子域名通常与目标组织的不同网络服务和应用程序相关联。每个子域名可能代表一个潜在的攻击向量。- 通过识别尽可能多的子域名,渗透测试人员可以更全面地了解目标的攻击面。##### 1.3 **发现隐藏或遗忘的资源**:- 组织可能在一些子域名上托管旧的、未维护的或遗忘的服务和应用程序。- 这些资源可能包含易于利用的安全漏洞,提供了渗透测试和攻击的机会。##### 1.4 **识别可能的安全风险和配置错误**:- 子域名扫描可能会揭示诸如错误配置、不安全的服务、未更新的系统和其他安全风险之类的问题。##### 1.5**为后续步骤做准备**:- 了解目标组织的网络拓扑和在线资源对于后续的渗透测试步骤至关重要,例如网络扫描、漏洞评估和实际的渗透测试。##### 1.6 **合规性和审计**:- 在某些情况下,进行子域名扫描也可能是为了满足特定的合规性要求或进行安全审计。##### 1.7**监控和报告**:- 子域名扫描可以为组织的安全团队提供必要的洞察力,以监控网络资源的状态和安全,同时也能提供渗透测试报告的必要信息。
2. 域名分类
一级域: baidu.com, sina.com
二级域: www.baidu.com, mail.sina.com
三级域: np.weixin.qq.com
3. 子域名扫描
3.1 使用 ping 命令:
ping baidu.com
ping baidu.com -n 2 # windows, 发送2次
ping baidu.com -c 2 # linux, 发送2次
ping baidu.com -w 1000 # windows, 超时限制1秒
ping baidu.com -W 1000 # linux, 超时限制1秒
(1) 域名存在:
正在 Ping www.a.shifen.com [120.232.145.185] 具有 32 字节的数据:来自 120.232.145.185 的回复: 字节=32 时间=11ms TTL=54来自 120.232.145.185 的回复: 字节=32 时间=11ms TTL=54来自 120.232.145.185 的回复: 字节=32 时间=11ms TTL=54来自 120.232.145.185 的回复: 字节=32 时间=11ms TTL=54120.232.145.185 的 Ping 统计信息:数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),往返行程的估计时间(以毫秒为单位):最短 = 11ms,最长 = 11ms,平均 = 11ms
(2) 域名存在, 但禁用ping(ICMP echo 请求):
ping 192.168.110.129正在 Ping 192.168.110.129 具有 32 字节的数据:请求超时。请求超时。请求超时。请求超时。192.168.110.129 的 Ping 统计信息:数据包: 已发送 = 4,已接收 = 0,丢失 = 4 (100% 丢失),
(3) 域名不存在:
Ping 请求找不到主机 ssk.baidu.com。请检查该名称,然后重试。
使用python执行ping命令, 根据字典扫描子域名:
# 基于Ping命令的子域名扫描
def ping_domain(dname):# 读取字典with open('../dict/subdomain-top160k.txt') as file:domain_list = file.readlines()for domain in domain_list:result = os.popen(f"ping -n 1 -w 1000 {domain.strip()}.{dname}").read()if '找不到主机' not in result:print(f"{domain.strip()}.{dname}")if __name__ == '__main__':ping_domain(dname='baidu.com')
3.2 使用 socket.gethostbyname() 域名解析方法
使用socket库的DNS解析方法, 根据字典扫描子域名:
# socket.gethostbyname() 方法解析域名的ip地址
# 如果是有效的域名, 则正常返回ip, 如果是无效的域名, 则发生异常
def socket_domain(dname):# 读取字典with open('../dict/subdomain-top160k.txt') as file:domain_list = file.readlines()for domain in domain_list:try:ip = socket.gethostbyname(f'{domain.strip()}.{dname}')print(f'{domain.strip()}.{dname}, {ip}')except socket.gaierror:passif __name__ == '__main__':socket_domain(dname='baidu.com')
3.3 Layer挖掘机工具
这是一个windows窗口程序, 输入域名扫就行了, 指定域名层数, 也可以扫描端口. 同样基于字典来扫描, 没啥好说的.
3.4 dnsenum 工具
这工具在kali里面就有, 根据一个dns的字典文件来做扫描, 命令:
dnsenum -f /usr/share/dnsenum/dns.txt baidu.com
3.5 http://z.zcjun.com/ 网站
用在线网站进行扫描, 输入域名扫就行了, 速度很快
二, 后台扫描
网站的后台地址一般没有在网站页面的url链接中, 正常情况下是给网站管理员登录使用的, 而不是普通用户.
扫描网站后台地址可能涉及到未授权访问和侵入测试,这种行为在没有明确授权的情况下是非法的。如果没有网站所有者的明确许可,探查、扫描或尝试访问网站的后台地址是不允许的,并可能违反法律。在执行任何安全测试或扫描之前,务必确保你有适当的授权和许可。
御剑后台扫描工具
这是一个windows窗口程序, 输入域名扫就行了, 没啥好说的.
相关文章:
子域名扫描, 后台扫描
子域名和后台扫描 一, 子域名扫描 在渗透测试的早期阶段,子域名扫描是一个非常重要的步骤,它有助于识别目标组织的网络结构和在线资源。 子域名扫描应该在获得适当的权限和授权的情况下进行,以确保所有活动都是合法和合规的。 1. 原因与目…...
毛玻璃带有光影效果的卡片
效果展示 页面结构组成 从效果展示可以看到,页面的主要元素是卡片,卡片的内容呈现上都是比较常规的布局,只是卡片上带有光影效果。 CSS / JavaScript 知识点 transformVanillaTilt.js 使用 页面基础结构实现 <div class"contain…...
【Java】面向过程和面向对象思想||对象和类
1.面向过程和面向对象思想 两者都贯穿于软件分析、设计和开发的各个阶段,对应面向对象就分别称为面向对象的分析(OOA)、面向对象的设计(OOD)和面向对象的编程(OOP)。C语言是一种典型的面向过程语…...
孤举者难起,众行者易趋,openGauss 5.1.0版本正式发布!
📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…...
软考——软件设计师中级2023年11月备考(1.计算机组成原理)
一、计算机组成原理 1.数据的表示 1.1 十进制转R进制 方法:对十进制数除R取余,最后对余数取倒序 如: 1.2 原码反码补码 1.3 浮点数 1.4 校验码 —— 海明码 (非重点,了解即可) 海明码的构成方法&…...
前端JavaScript入门到精通,javascript核心进阶ES6语法、API、js高级等基础知识和实战 —— Web APIs(四)
思维导图 一、日期对象 1.1 实例化 实例化,默认得到当前时间,也可以指定时间 1.2 日期对象方法 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible&q…...
【前端】HTML5 Audio 预加载 按照队列顺序播放音频, 可以陆续往队列中加内容
【前端】Audio 按照队列顺序播放音频, 可以陆续往队列中加内容 var 音频库 {} var 当前音频集合 [] /*** 将文本添加到队列中* 持续去播放* 播放过的音频会自动从队列中删除* * 已规划* 要保障同时进行加载的数据不能超过5个(线程池 5)* * param 文本*/播放音频队列(文本){i…...
【单片机】13-实时时钟DS1302
1.RTC的简介 1.什么是实时时钟(RTC) (rtc for real time clock) (1)时间点和时间段的概念区分 (2)单片机为什么需要时间点【一定的时间点干什么事情】 (3)RTC如何存在于…...
springboot和vue:十三、VueX简介与安装与推荐视频+前端数据模拟MockJS
VueX简介与安装与推荐视频 VueX用于管理分散在vue各个组件中的数据。每一个VueX的核心都是一个store,当store中的状态发生变化时,与之绑定的视图也将重新渲染。store中的状态不允许被直接修改,只能显示提交mutationVueX中有五个重要的概念&a…...
[React] Zustand状态管理库
文章目录 1.Zustand介绍2.创建一个store3.使用方法3.1 获取状态3.2 更新状态3.3 访问存储状态3.4 处理异步数据3.5 在状态中访问和存储数组3.6 持续状态 4.总结 1.Zustand介绍 状态管理一直是现代程序应用中的重要组成部分, Zustand使用 hooks 来管理状态无需样板代码。 更少…...
【ChatGPT】ChatGPT发展历史
更多优质文章请看底部:ChatGPT与日本首相交流核废水事件-精准Prompt... hello,我是小索奇,在AI日益庞大的环境下,接下来将为大家不断的ChatGPT学习 ChatGPT使用了 Transformer 结构,建立在 OpenAI的 GPT-3.5 大型语言模…...
分布式文件存储系统Minio实战
分布式文件系统应用场景 互联网海量非结构化数据的存储需求电商网站:海量商品图片视频网站:海量视频文件网盘 : 海量文件社交网站:海量图片 1. Minio介绍 MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存…...
【MySQL】MySQL 官方安装包形式
MySQL 官方提供3种包: 1. 源码包 mysql-5.7.42.tar.gz mysql-5.7.42-aarch64.tar.gz http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.34.tar.gz http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.42.tar.gz需要用户根据自己的CPU架构选择对应的…...
使用sqlmap获取数据步骤
文章目录 1.使用sqlmap获取所有数据库2.使用sqlmap获取当前连接数据库3.使用sqlmap获取当前数据库下所有表名4.使用sqlmap获取当前数据库下某个表下所有列名5.使用sqlmap获取当前数据库下某个表下指定字段的数据6.测试当前用户是否是管理员7.使用burpsqlmap批量检测8.脱库命令9…...
[论文笔记]GLM
引言 今天带来论文GLM: General Language Model Pretraining with Autoregressive Blank Infilling的笔记。论文中文标题为 通用语言模型预训练与自回归填空。 有很多不同类型的预训练架构,包括自编码模型(BERT、RoBERTa、ALBERT)、自回归模型(GPT系列)以及编码器-解码器模型…...
漏洞扫描环境:win10系统用VMware Workstation打开虚拟机若干问题
win10系统用VMware Workstation打开虚拟机若干问题 一 .VMware打开虚拟机就蓝屏重启怎么解决?一. VMware打开虚拟机就蓝屏重启怎么解决?方法一:1、同时按下CTRLSHIFTESC打开任务管理器功能,之后依次点击-详细信息-性能后出现下列界…...
OpenCV实现模板匹配和霍夫线检测,霍夫圆检测
一,模板匹配 1.1代码实现 import cv2 as cv import numpy as np import matplotlib.pyplot as plt from pylab import mplmpl.rcParams[font.sans-serif] [SimHei]#图像和模板的读取 img cv.imread("cat.png") template cv.imread(r"E:\All_in\o…...
消息队列实现进程之间通信方式
1. snd 源代码 #include <myhead.h>#define ERR_MSG(msg) do{\fprintf(stderr,"__%d__:",__LINE__);\perror(msg);\ }while(0)typedef struct{ long msgtype; //消息类型char data[1024]; //消息正文 }Msg;#define SIZE sizeof(Msg)-sizeof(long)int main(i…...
用简单例子讲清楚webgl模板测试
文章目录 搭建简易的webgl环境绘制简单三角形(不带stencilTest)绘制另一个三角形(不带模板测试)加入模板测试总结调参练习 搭建简易的webgl环境 一直以来,我只是想通过搭建纯webgl环境,进行开发,来清楚地了…...
区块链(8):p2p去中心化之websoket服务端实现业务逻辑
1 业务逻辑 例如 peer1和peer2之间相互通信 peer1通过onopen{ write(Mesage(QUERY_LATEST))} 向peer2发送消息“我要最新的区块”。 peer2通过onMessage收到消息,通过handleMessage方法对消息进行处理。 handleMessage根据消息类型进行处理 RESPONSE_BLOCKCHAIN:返回区块链…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...
3-11单元格区域边界定位(End属性)学习笔记
返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...
STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...
Vue 模板语句的数据来源
🧩 Vue 模板语句的数据来源:全方位解析 Vue 模板(<template> 部分)中的表达式、指令绑定(如 v-bind, v-on)和插值({{ }})都在一个特定的作用域内求值。这个作用域由当前 组件…...
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
UniApp 集成腾讯云 IM 富媒体消息全攻略(地理位置/文件) 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型,核心实现方式: 标准消息类型:直接使用 SDK 内置类型(文件、图片等)自…...
云原生周刊:k0s 成为 CNCF 沙箱项目
开源项目推荐 HAMi HAMi(原名 k8s‑vGPU‑scheduler)是一款 CNCF Sandbox 级别的开源 K8s 中间件,通过虚拟化 GPU/NPU 等异构设备并支持内存、计算核心时间片隔离及共享调度,为容器提供统一接口,实现细粒度资源配额…...
实战设计模式之模板方法模式
概述 模板方法模式定义了一个操作中的算法骨架,并将某些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的前提下,重新定义算法中的某些步骤。简单来说,就是在一个方法中定义了要执行的步骤顺序或算法框架,但允许子类…...
