明天为大家举荐由360网络安全研究院-平安剖析资深专家分享的议题《用DNS进行网络度量和平安剖析》,本课题简要论述了DNS协定的历史和倒退现状,在此基础上,联合360网络安全研究院的多年剖析DNS数据的教训,介绍了咱们利用DNS数据做过的一些对于大网方面的度量,并联合公司多维度的海量数据做的平安剖析方面的一些工作。
1
DNS概述
DNS协定对互联网的从业者来说并不生疏,它是互联网的最古老也是最根底和最外围的协定之一。简略来说的话,它最次要的性能是实现域名和IP地址的映射,即互联网的电话簿。
但DNS协定可能实现的性能远远不止于实现域名和IP地址的映射,很多古代互联网的根底业务都要基于DNS协定才可能实现,能够认为跟域名相干的业务简直都和DNS协定无关。依据dns-camel我的项目[1]统计,截止到2019年6月,共有150篇规范,倡议,最佳实际方面的RFC,共有2637页,十分庞杂的内容。所以DNS协定理论的复杂度超出了大多数人对其的了解。
下图显示了DNS协定相干的RFC页数从1984年到2019年的变动量,能够看到从1996年开始,简直以每四年500页的速度在稳固减少。
也正因为如此根底和简单,简直所有的互联网业务都会在DNS数据中留下痕迹。应用了DNS服务的歹意行为也不例外,对DNS数据进行平安剖析,能够涵盖绝大多数的歹意行为。
本文从应用DNS数据角度来介绍一下能够做的事件。次要是两大类,别离为网络(业务的)度量和平安剖析。
2
网络度量
**DNS劫持状况
**
同大多数晚期的互联网协议相似,DNS协定在设计之初是以明文模式传输,反对TCP和UDP两种传输协定,并且在理论应用过程中次要以传输协定次要以UDP为主。
所以到当初,大多数的DNS申请和应答依然是基于UDP协定的明文模式进行传输,因而DNS劫持是DNS在理论环境中十分广泛的问题,为了对这个问题有个准确的度量。清华大学网络迷信与网络空间研究院和360公司单干,对寰球范畴内的DNS劫持状况做了一个定量的度量。测量计划通过申请随机化子域名(防止缓存服务器对申请域名的缓存)在不同的公共DNS服务器,从不同的申请类型,顶级域以及协定等维度的形式来探测DNS劫持的状况。
测量结果表明:
1. 基于UDP的DNS数据包更容易受到劫持。
2. A类型(IPv4地址)的DNS申请比其余类型稍高。
3. 寰球的8.5%的自治域存在DNS劫持,其中包含像中国移动这种较大的ISP。
4. 揣测DNS劫持的次要目标是为了缩小财务结算和进步DNS相应的性能。
具体的测量具体过程和残缺后果参见这里[2]。
小贴士:DNS加密传输的停顿
针对DNS明文传输的问题,最近几年,业界曾经踊跃的推动起来了,客户端方面大的浏览器厂商(Firefox,Chrome,360浏览器等)和操作系统厂商(包含windows和macOS)逐渐开始反对DoT/DoH;在服务器方面包含360平安DNS[3]在内的公共DNS服务提供商都开始DoT/DoH服务,有条件的用户能够尝试一下,应该能够极大的缓解因为DNS劫持所引起的平安危险。
**用DNS数据来度量NTP pool的应用状况
**
NTP pool成立于2003年,是一个由志愿者组织起来的,由联网计算机的动静虚构群集组成,可向寰球数百万个零碎提供高度精确的工夫同步服务。它是大多数次要Linux发行版和许多联网设施的默认工夫服务器。
因为它的非凡工作形式,在PDNS(参见上面的小贴士)中,它的域名和IP的映射关系在肯定水平上是随机的,特地像之前十分风行的僵尸网络规避攻打检测和防封堵应用的Fastflux[4]。
为了摸清楚NTP pool的理论工作状况,咱们通过DNS数据对NTP pool做了一次度量。
次要有如下发现:
1. 服务器方面
- NTP pool服务器大略在4000左右,其中IPv6的占比在25%,IPv4占75%。
- NTP pool服务器遍布寰球97个国家,不过次要次要集中在美、德、法、英、荷、加等发达国家。
- 国内的服务器只占总服务器个数2%,并且次要集中在香港,台湾,广东和北京,也是经济较为发达的地区。
2. 子域名方面:
- TP pool的子域名次要有三种划分形式:依照大洲,依照国家/地区,依照供应商。
- NTP pool的域名DNS申请中,大概3%的域名申请是有效的,次要是因为拼写错误或者零碎的bug导致的。
- 依照供应商拜访的NTP pool服务会在肯定水平上裸露用户发动申请的客户端的类型。下图是咱们对不同供应商的DNS申请次数的统计:
3. 应用服务器效率方面:
a. NTP pool的在轮询服务器方面实践上来说是平衡的
b. 在实际操作中,收到地理位置以及不同服务器服务能力,服务策略的不同导致不同的IP提供服务的机会并不均等。
c. TOP4000的RRset(约占总数的1%)即可占总记录数的41.21%,不同RRset的CDF图如下:
残缺的文章请参阅:https://blog.netlab.360.com/l...
小贴士:被动DNS零碎
与被动扫描(探测)不同,能够利用大量的被动DNS数据进行大规模的基于DNS数据的度量。所谓被动DNS也即PassiveDNS(PDNS) 数据库是将历史DNS记录解析/交融/存储的零碎。通过被动的收集DNS流量,构建域名和Rdata(域名的解析后果)之间的全量历史映射关系,实现域名和Rdata的互查,以及历史DNS记录的查问。
360的PDNS零碎(https://passivedns.cn)是国内...
**其余的度量
**
利用PDNS能够实现很多其余的度量工作,比方:
1. 不同CDN厂商规模的评估
2. 黑灰色产业规模的评估
3. 新通用顶级域名(new gTLD)应用状况/(在事实应用中的)抵触状况的评估
4. 域名在注册,备案以及解析尤其是波及到批量的域名解决时的相干状况的评估
5. 国家(波及域名方面)政策的执行状况的评估
6. ……
总之在网络测量方面,只有波及到域名,DNS数据简直就是人造的基准数据,只有设计正当的测量计划,就可能失去精确的后果。
3
平安剖析
面向DNS的平安剖析,大体可分为两类:
· 针对DNS协定和零碎自身的平安问题的剖析
- DNS投毒
- DNS劫持
- 伪随机前缀DoS攻打
- NXNSAttack攻打
- …
· 应用DNS数据来剖析相干的安全事件
- DNS隧道
- DNS反射放大
- DGA
- Fastflux
- …
DNSMon——基于DNS数据的威逼检测和剖析零碎
在日常工作中,针对DNS协定和零碎的攻打在DNS数据中有肯定的体现,但并不是利用DNS数据威逼发现的次要指标。如前所述,只有互联网应用域名的业务就会在DNS数据中留下本身的痕迹,恶意程序也不例外。因而从威逼发现的角度来说,应用DNS数据检测,剖析和阻断平安威逼是海量DNS数据发挥作用的次要场景。
为了可能更加及时高效的发现安全事件,360公司开发了DNSMon零碎。该零碎以DNS数据在统计维度上的异样为出发点筛选初始域名,综合web页面数据,证书数据,whois数据,沙箱以及蜜罐等多维度的数据,并联合高质量的IOC和word2vec,LSTM等深度学习算法,对产生异样的域名进行综合判断,标定其异样状态,给出较为确定性的标签。
对于标黑和高危域名能够录入威逼情报库供第三方应用。对于白和其余灰域名则录入标签库供第三方查问应用。
根本流程如下图:
零碎的劣势次要体现为如下三点:
· 准实时的解决和关联海量的数据。目前在于可能在百万QPS的DNS申请的状况下,交融多维度的其余数据源进行解决,达到小时级别的输入。
· 自动化水平高。每天可能主动产生千级别的黑域名和高危域名。
· 无先验常识的状况下能够大规模的阻断黑,高危域名
- 永恒之蓝挖矿蠕虫及其系列变种
- MSRAminer歹意挖矿程序及其系列变种
- NuggetPhantom恶意程序及其系列变种
- DGA.popad广告网络挖矿程序
- Mylobot僵尸网络
- Godlua后门
- Burimi挖矿蠕虫
- LSDMiner挖矿恶意程序
- 盗贼歹意SDK利用
- 歹意利用某大型互联网厂商的评论系统漏洞刷广告流量
- Skidmap恶意程序
- 更多案例请参考:https://blog.netlab.360.com/t...
平安剖析的其余方面
在对PDNS数据进行深入分析之后,咱们就会发现其实针对很多类型的攻打如果从DNS数据入口就会非常简单,可能达到事倍功半的成果。
1. 比方传统的采纳DGA技术和fastflux技术的僵尸网络从DNS数据动手是非常容易的。
2. 再比方某些黑灰行业他们在一直的改良本人的攻打手法时,其所应用的基础设施却是不变的,以某一个或者几个IP/域名为入口通过DNS数据可能很快的将其余之前未发现的IOC关联进去。
3. 再比方一些恶意程序在运行时,在时序上有着十分稳固的程序,这种十分强的关联关系也会在DNS中留下十分显著的特色。只有在时序上构建较好的模型,咱们就可能对域名进行聚类和扩大剖析,从而无效的进步剖析效率。
4. …
4
**总结
**
近年来DNS协定正向着更重视隐衷性,安全性方面疾速倒退。而针对DNS数据的剖析则在对度量DNS协定倒退状况,对依靠于DNS数据所做的平安剖析方面,尤其是在威逼情报的生产方面施展着越来越重要的作用。
毫无疑问,DNS协定对将来互联网的倒退起着重要的作用,只管咱们还不晓得它将走向何处,会给将来的网络带来哪些影响,当初是体验这个变动过程的最好机会。无论是对DNS数据做平安剖析还是利用DNS做各种度量,DNS这个宝库都值得深刻摸索和开掘。
参考资料
1. https://powerdns.org/dns-camel/
2. https://www.usenix.org/system...
3. https://dns.360.cn/
4. https://en.wikipedia.org/wiki...:~:text=Fast%20flux%20is%20a%20DNS,compromised%20hosts%20acting%20as%20proxies.