Malicious DNS Tunnel Tool Recognition using Persistent DoH Traffic Analysis
论文信息:
名称:Malicious DNS Tunnel Tool Recognition using Persistent DoH Traffic Analysis
作者:Mitsuhashi, Rikima;
收录:IEEE Transactions on Network and Service Management 2022(CCF-C)
PS:这是作者基于其上一篇论文改进后的论文,和上一篇论文联系密切
研究背景:
为了保护用户隐私和网络安全,对互联网上的DNS流量进行加密的呼声越来越高。使用SSL/TLS协议对DNS流量进行加密的一种很有前途的方法是通过HTTPS ( Do H )进行DNS,这在RFC8484中得到了标准化。近年来,支持Do H的软件数量迅速增加。最新版本的Web浏览器,如Mozilla Firefox、Google Chrome、Microsoft Edge等都支持DoH。在操作系统方面,2021年10月发布的Windows 11已经开始支持DoH协议的加密DNS连接。2020年9月推出的Mac OS 11和iOS 14提供了一种Do H网络配置NEDNS Settings Manager。在Linux系统上,DoH代理软件可以在传统DNS和DoH之间转换域名解析协议,如Cloudflare Tunnel ( cloudflared )、DNS - over - HTTPS、DNS Over HTTPS Proxy、DNSCrypt、doh - client等。
DoH协议可以减轻互联网用户访问网站时隐私泄露的风险,但由于DNS流量加密使得网络管理员难以控制网络安全服务。需要检测DoH隐蔽信道的技术。
研究内容:
研究动机:
对上一篇论文进行扩充,上一篇论文首次提出针对doh隧道工具(共3种)进行分类检测,这篇论文提出检测更多的doh隧道工具(共6种)。
数据集:
CIRA-CICDoHBrw-2020 dataset https://www.unb.ca/cic/datasets/dohbrw2020.html
DoH - TunnelTraffic - HKD https://github.com/doh-trafficdataset/DoH-Tunnel-Traffic-HKD
自己收集的数据集,包含dnstt 、tcp-over-dns、tuns三种工具 ,每个工具运行48小时,20个客户端使用工具。捕获流量(论文给的链接已经失效了)
数据集详情:
特征提取:
还是使用数据集自带的28个特征,新数据集用DoHlyzer工具提取这28个特征。29-34特征并没有使用。
模型选择及参数调优:
使用CIRA-CICDoHBrw-2020 dataset数据集确定超参数,交叉验证(好像没说针对哪一个任务确定超参数?)
流程应该是3个模型针对3个任务,分别进行测试(共9个组合,每个组合针对不同的超参数配合进行网格搜索验证),最终每个模型针对每个任务阶段选择最优的参数组合,然后每个阶段选取效果最好的模型及其超参数。
知识更新,使用了新数据集,貌似是模型初始化结束后,确定好超参数后,再放入新数据集(还是联合数据集)进行训练。
评价指标:
ACC、Pre、Recall、F-score
模型结构:
网格搜索确定超参数,结果如图所示,第一阶段使用XGBoost、第二阶段使用CatBoost、第三阶段使用LightGBM,超参数在表格中展示。
实验结果:
只在CIRA-CICDoHBrw-2020 dataset数据集进行性能测试,与以往论文进行对比,发现不存在过拟合并且效果最优,与K-fold Cross-Validation(K折交叉验证)和hold-out Method(留出法)这两类实验分别进行比较。
只用CIRA-CICDoHBrw-2020 datase训练的模型,在CIRA-CICDoHBrw-2020 datase和DoH - TunnelTraffic - HKD两个数据集上进行测试,发现模型能较好的分辨https和Doh,但是第二阶段区分正常Doh和恶意Doh出现性能较差较大。

为了检测出现第二阶段性能降低显著的原因,在交叉验证的测试中检测了混淆矩阵,发现,这几个新兴的工具都被检测为正常DoH。这说明知识更新对于持久性DoH流量分析是必不可少的。
更新模型后对比试验,结果如图所示。before是指只用第一个数据集训练测试的结果,第二个是更新后的模型在联合数据集上的测试结果。
(有点没搞懂,这里进行对比实验更新前更新后进行对比,这两个实验数据集都不一样了,放在一起比较真的很合适吗?感觉没什么意义?为什么不拿前面用更新前的模型检测联合数据集的实验呢?感觉也怪怪的。)
分析讨论:
第一阶段(区分https和doh),重要的特征为“包时间方差"和”模式数据包长度“。第1阶段非DoH流量的"包时间方差"均值为76.10,DoH流量的"包时间方差"均值为670.58。这种差异表明,由于DoH服务器查询未知域的时间,DoH服务器的"包时间方差"比Web服务器的"包时间方差"更广泛。
第二阶段(区分正常和恶意doh),最重要的特征为“模式数据包长度”以及“中值数据包长度”。正常的DoH流量中包含大量客户端与Do H服务器之间的SSL / TLS密钥交换数据。相比之下,可疑的DoH流量具有较少的数据,而且需要发送心跳包。
第三阶段(工具分类),最重要的特征为”请求/响应时间差的中位数“和”请求/响应时间差的中位数偏差“。第三阶段的平均"请求/响应时间差" dns2tcp为0.17 s,dnscat2为2.74 s,I为1.97 s,dnstt为1.26 s,tcp - overdns为1.02 s,tuns为0.86 s。这种差异高度依赖于将查询从隧道工具发送到DoH服务器的时间间隔,因此服务器性能的波动或高达几十毫秒的网络延迟对其几乎没有影响。
本次实验数据集恶意DoH流量要多于正常DoH流量,这在生活中是很可能发生的,符合实际。
实验总结:
亮点:可更新的模型,首次检测6种DoH隧道工具。
疑惑:实验设置有点没看懂,感觉有点乱。
缺点:数据集是封闭环境采集的数据集,可扩展性差。
未来发展:
- 新数据集是捕获了48小时的流量,要研究如何减少数据捕获时间,并保持或者获得更高的精度,缩短知识更新的提前期,研究新型隧道工具最佳捕获时间。
- 可疑与正常交通流量之间的比例如何影响分类精度是未来应该研究的重要问题。
- 扩展提取的特征。
本文研究了在保护用户隐私的DoH协议背景下,如何利用持久性DoH流量分析来识别恶意DNS隧道工具。作者扩展了先前工作,检测了6种工具,并使用CIRA-CICDoHBrw-2020和自建数据集,通过XGBoost、CatBoost和LightGBM等模型优化参数,评估了模型性能和知识更新的重要性。

2470

被折叠的 条评论
为什么被折叠?



