域名指纹信息探测采集系统设计原理分析
# 0x00 背景
- 网络安全威胁增加
- 随着互联网的普及和技术的进步,网络攻击的数量和复杂性也在不断增加。攻击者利用各种手段,如网络钓鱼、恶意软件、拒绝服务攻击等,对目标进行攻击。域名作为互联网的基础设施之一,成为了攻击者的重要目标。
- 域名系统(DNS)的重要性
- DNS是互联网的“电话簿”,将人类可读的域名(如www.example.com)转换为机器可读的IP地址(如192.0.2.1)。DNS的安全性和稳定性对整个互联网的正常运行至关重要。因此,了解和保护域名及其相关信息显得尤为重要。
- 信息情报与威胁分析
- 通过域名指纹信息探测,可以收集大量有关域名的情报信息。这些信息对于威胁情报分析、攻击溯源、漏洞发现等具有重要意义。安全专家可以利用这些信息预判潜在的安全威胁,并采取相应的防护措施。
域名指纹信息探测采集利用域名探测前端探针服务器对全球域名进行探测采集,采集域名的IP、WHOIS、网站首页代码、截图(80端口和443端口)、SSL证书等信息,通过大数据进行处理、存储,供域系统使用。
# 0x01 工作原理
主要工作过程:

- 获取域名绑定IP:探测域名,获取域名绑定IP,并记录域名历史绑定IP
- 获取域名证书:获取域名443网站的证书及历史绑定证书
- 获取whois:获取域名whois信息
- 获取域名的网站内容:保存可访问域名的网站(80,443),Response内容、网站截图、保存历史。
- 上传域名:探测任务管理,可上传域名,建立域名库。
- 探测进度:可以查看探测进度,探测服务器状态。
功能清单
(1)指纹采集
指纹采集主要功能是读取指定目录的域名文件并对每一个域名进行采集,采集的信息包括:IP、WHOIS信息、页面截图(80和443)、页面代码(80和443)、head信息、SSL证书信息。

(2)后台配置
主要包含用户、角色、权限、采集服务器等各类相关信息的管理。

(3)信息查询
该模块主要用于各类信息的查询,包括支持通过IP、域名、内容、WHOIS等信息进行查询。
实现方法
域名指纹信息探测采集是利用域名服务与具体服务IP的关系获取域名解析的IP,其主要方法包括NSLOOKUP、PING、HOST、DNS日志解析、WHOIS等。
(1)NSLOOKUP
nslookup是站长较为常用的工具之一,它甚至比同类工具dig的使用人数更多,原因是它的运行环境是windows,并且不需要我们再另外安装什么东西。dig是在linux环境里运行的命令,不过也可以在windows环境里使用,只是需要安装digwindows版本的程序.
nslookup主要是用来查询dns服务器信息,不过,nslookup的作用绝非仅此而止,利用nslookup命令,还可以查到更多有关域名的服务器信息,IP、CNAME、TLL等。
最常用最简单的用法,可以直接获得目标域名的IP地址和CNAME。打开终端运行nslookup域名,如下图,后面4行,Name是目标域名的CNAME,Address是目标域名的IP地址。

用nslookup进行检测,采用不同的dns域名解析,看显示出的ip是否一致

(2)PING方式
Ping属于一个通信协议,是TCP/IP协议的一部分。利用“ping”命令可以检查网络是否通畅或者网络连接速度,很好地分析和判定网络故障。它的原理是:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,通过对方回复的数据包来确定两台网络机器是否连接相通,时延是多少。
在此我们以获取域名www.baidu.com的IP地址为例来介绍利用ping命令获取域名对应的IP地址的方法,打开终端界面,输入pingwww.baidu.com,按回车键后即可看到如下图所示的输出信息,红色框内即为域名对应的IP地址:

(3)HOST
HOST拓展主要是利用主机的网际缓存的数据来获取域名的IP信息,其命令为以下两种方式,具体包括配置检索和DNS服务检索两种方法。
host[-n[-a][-cClass][-d][-r][-tType][-v][-w][-z]]Hostname|Address[Server]
hostnew[-a][-cClass][-d][-r][-tType][-v][-w][-z]Hostname|Address[Server]
(4)配置检索法
该方式是用resolv.conf中定义的DNS服务器查出www.qq.com的IP,通过HOST命令来获取相关IP地址,如下图所示。

(5)DNS检索
DNS检索是利用提供DNS解析服务厂商所公开的DNS服务IP进行DNS递归查询,来获取域名对应的解析IP地址。例如利用是用谷歌的DNS(8.8.8.8)来查www.qq.com的IP。

(6)DNS日志解析
DNS日志解析拓展是根据DNS解析记录来进行关联获取域名对应的IP记录,如利用PDNS记录来查询待拓展的域名,获取历史的域名解析记录。
(7)WHOIS
WHOIS是用来查询域名的IP,以及所有者等信息的传输协议,简单来说,WHOIS就是一个查询域名的系统,用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商、注册时间、到期时间等),通过WHOIS来实现对域名信息的查询。早期的WHOIS查询多以命令列接口存在,但是现在出现了一些网页接口简化的线上查询工具,可以一次向不同的数据库查询。网页接口的查询工具仍然依赖WHOIS协议向服务器发送查询请求,命令列接口的工具仍然被系统管理员广泛使用。WHOIS通常使用TCP协议43端口。每个域名/IP的WHOIS信息由对应的管理机构保存。不同域名后缀的WHOIS信息需要到不同的WHOIS数据库查询。目前,国内提供WHOIS查询服务的网站有聚名网等等。“WHOIS”是当前域名系统中不可或缺的一项信息服务。域名WHOIS是用来查询域名所有者、域名的IP等信息的传输协议。通过域名WHOIS查询我们可以得到域名注册商、联系人、联系方式、注册时间、到期时间、域名服务器、状态等,还可以查询到公司、地址、电话更详细的信息。
(8)IP-Whois
IP-Whois拓展主要是对目标IP地址通过API的方式进行IP注册信息或者分配信息进行查询,主要获取IP地址所示的网络路由块、IP地址所属的网络范围、分配给网络注册的IP地址的标识符、注册网络的唯一标识符、国家代码、邮件地址、域名服务器、创建日期、更新日期、相关联系人、运营商、特征信息等内容。
其特征信息如下表所示:
|
序号 |
标签(tag) |
描述 |
|
1 |
IDC |
该IP最近一个月内用于IDC产商服务 |
|
2 |
CDN |
该IP最近一个月内存在绑定CDN域名进行加速服务 |
|
3 |
ADSL |
该IP最近一个月内被用作ADSL服务 |
|
4 |
MX |
该IP最近一个月内被用作邮件服务 |
|
5 |
NS |
该IP最近一个月内被用作域名服务 |
|
6 |
Scanner |
该IP在过去一天里被用作探测扫描服务 |
|
7 |
ProxyXXX |
该IP常用作于XXX代理服务 |
|
8 |
UsageXXX |
该IP被用作于XXX业务(用途) (COM)商业用途 (RSV)保留 |

(9)域名-whois
域名WHOIS拓展是根据域名名称,从域名服务器商或域名查询注册查询服务中获取域名的的注册信息,进而扩展域名资产的所有人、域名注册商、注册时间等信息数据。
whois是用来查询域名的IP,以及所有者等信息的传输协议,简单来说,whois就是一个查询域名的系统,用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商、注册时间、到期时间等),通过whois来实现对域名信息的查询。早期的whois查询多以命令列接口存在,但是现在出现了一些网页接口简化的线上查询工具,可以一次向不同的数据库查询。网页接口的查询工具仍然依赖whois协议向服务器发送查询请求,命令列接口的工具仍然被系统管理员广泛使用。whois通常使用TCP协议43端口。每个域名/IP的whois信息由对应的管理机构保存。不同域名后缀的whois信息需要到不同的whois数据库查询。目前,国内提供WHOIS查询服务的网站有聚名网等等。“WHOIS”是当前域名系统中不可或缺的一项信息服务。域名Whois是用来查询域名所有者、域名的IP等信息的传输协议。通过域名Whois查询我们可以得到域名注册商、联系人、联系方式、注册时间、到期时间、域名服务器、状态等,还可以查询到公司、地址、电话更详细的信息。

0x02 总结
本文分享了一个域名指纹信息探测采集系统设计过程,由此可见域名指纹信息探测与采集在网络安全中扮演着关键角色。通过系统地收集和分析域名的相关信息,安全专家可以更好地理解和保护互联网基础设施,预防和应对各种网络威胁。在数字化和网络化不断深入的今天,加强域名指纹信息的探测与采集,对于保障网络安全具有重要的现实意义。

浙公网安备 33010602011771号