大家好,小弟最近在研究一个项目,是假设从一个公司内部的 443 端口获取流量并筛选出可疑的 DoH 流量,希望能防止恶意软件通过 DoH 连接主机传输数据,目前在讨论这个策略是否有可行性,学识尚浅,有很多不确定的部分,想请教各位。
明文传输 DNS 请求可以尝试直接检测恶意流量,而 DoH 可以把请求加密后混淆在 HTTPS 流量中,应该也存在攻击者利用这个加密进行特定传输,但是转了一圈好像国内并没有厂商的对应安全防御产品?
于是我就开始找相关的论文学习,分析了一个公开的 DoH 数据集,从 pcap 开始处理,整理出 flow 信息后进行特征提取,目前在验证集上判断 is_doh 这个标签已经达到了较高的准确率,但是遇到了两个问题。
第一个就是如何在实际的本地数据上进行验证呢,直接把模型应用到本地数据上,有很多预测为 DoH 的流量,但是没有办法实际检验是否准确。
论文中的数据集是根据 DSP_IP 是否是公开的 DoH 服务商名单来标注的,但是这个名单有很多遗漏,而且实际中攻击者可能并不会用这些公开的 DoH 服务商,我想通过本地获取所有的 HTTPS 的请求内容来判断是否在使用 DoH 请求 DNS ,pcap 中加密的 HTTPS 请求数据有条件解密成明文吗,实际涉及的设备众多,如果这个思路可行的话想先通过一两台进行数据模拟,判断已有模型的准确性,再进行调整和训练。
另一个思路是抓包的 pcap 文件中有没有其他的有用信息啊,小弟第一次接触 pcap 格式,把预处理工具编译成能提取特征的 csv 然后移植就花了半个月的时间,再从头解密 HTTPS 想必也有难度,如果有其他的方法,我也想去尝试。
以下是提取的 flow 特征和用于分类的特征
还有一个思路就是训练时不单单检测 DoH 流量,而是直接针对DoH 中的恶意流量学习,但这个不仅仅存在第一个训练后在实际场景准确率检验的问题,而且恶意流量的特征可能并不总一致的,而且不确定是否存在这类公开数据集。
最后的一个问题,就是各位觉得这项技术的可行性如何啊?我其实觉得这个 idea 很好,也有存在的价值,但是想到 DoH 和 HTTPS 本身就是为了加密而产生的,想要解密肯定不容易,我只在本科的计算机网络里面浅显的了解过 TCP/IP 什么的,并没有实际抓包处理的经验,感觉还是有较大困难的。
感谢各位,请不吝赐教!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.