在Office 365中,我们致力于保护客户的数据。我们使用行业领先的安全防护,以确保数据安全。入侵检测也是一种这样的安全措施,可以确保我们通知我们的服务器或网络中的任何异常活动或行为。我们定期监控和查看来自入侵检测系统的警告,以了解我们服务的对手活动的迹象,目的是防止对手未经授权访问客户数据。

域名系统或DNS用于计算机网络中将域名转换为计算机使用的IP地址进行通信。几乎每个计算机网络都存在DNS; 它与外部网络进行通信,并且由于其被设计为开放协议而非常难以锁定。对手可能会发现DNS是一种有意思的机制,用于执行网络侦察,恶意软件下载或与命令控制服务器的通信或与网络数据传输等恶意活动。因此,至关重要的是我们监控我们的网络有没有进行这样的活动以保护客户的数据。

这篇文章讨论了使用DNS协议以在计算机网络中获得未授权访问的对手所使用的技术以及用于检测这些技术的监控策略。

检测内容

对手的渗透测试工具可能会滥用DNS使用下表中的技术来实现以下目标。

有关详细讨论上述主题的帖子,请参阅参考部分。

本表总结了常见对手的目标,技术和DNS活动。

对手目标 对手技巧 DNS活动(指标)
网络足迹
  • 通过IP范围反向DNS查找
  • 域转移尝试
  • 强制添加子域名
  • 大量的PTR查询
  • SOA和AXFR查询
  • 转发目标网络本地域中不存在的子域的DNS查找
凭据盗窃,恶意软件安装
  • DNS劫持使用欺骗性域名
  • 将合法域解析为恶意IP地址(缓存中毒)
  • 转发错误的DNS查找
  • 主机文件修改
  • DNS缓存投毒
指挥与控制(C2)通信
  • 对对手控制域的定期查询
  • DNS异常域查询
  • 解析IP地址的低TTL
  • 独立DNS请求
恶意软件安装,数据窃取
  • 通过DNS隧道使用大量查询到对手控制域
  • 异常域的大量子域查找
  • 异常域的子域查询响应大
  • 高熵长子域 包含随机/非字典词
  • 大量或不寻常的查询类型(MX,TXT)
  • 独立DNS请求
逃避检测
  • 使用域生成算法
  • 使用快速通量
  • 对异常DNS流量使用异常的名称服务器
  • 许多DNS请求失败(NXDomain响应)
  • 域的低TTL和多个IP地址分析
  • DNS流量绕过默认DNS服务器

上表中列出的指标有助于我们为对手使用的技术创建检测清单。以下是检测的总结列表。

如何检测

我们分析了我们服务中的DNS流量,观察到服务中没有一个可以监控和实现检测恶意活动,报告服务器是否可靠的解决方案。

为了解决这个问题,我们设计了一个包含三个监控策略的解决方案。每个策略都捕获了我们网络中DNS流量的所有细节。这些策略也有一些重复,所以所有的细节都可以拼凑在一起,创造一个端到端的活动图片。

我们通过Windows ETW数据部署这些基于主机的监控策略。隐藏的宝藏:入侵检测与ETW讨论了使用Windows ETW进行安全监控的细节。

监控策略

让我们来看看我们实施的监测策略。

这是每个监控策略的优缺点的总结。

监控策略 优点 缺点
监控每个端点上的DNS解析
  • 与集中监控相比,分布式监控和负载较小
  • 更简单的处理
  • 细节清晰。例如可以记录每个DNS查询和响应
  • 无法查看外部名称服务器的IP
  • 无法查看绕过标准解析器的DNS查询(例如,nslookup,chrome)
监控Netflow(IP)流量到出站DNS端口53
  • 由于数据主要来自数据包头(元数据)
  • 过程信息对于检测标准DNS解析器的bypassing是非常有价值的(例如,nslookup,chrome)
  • 有助于检测标准DNS服务器的bypassing
  • 无法查看应用程序级数据(域名,查询类型,响应等)
  • 标准DNS查询的进程信息不足
监视服务内部DNS服务器上的DNS解析(Dnsflow)
  • 接近完整的覆盖
  • 访问名称服务器的IP地址
  • DNS服务器的ETW跟踪能展示DNS客户端跟踪的更多数据
  • 数据量很大
  • 无法查看请求DNS解析的客户端进程
  • 需要复杂的处理
  • 可能导致CPU效率低下,可能会导致服务范围的影响,而对其他两种策略的工作产生影响

性能和可靠性

由于每个策略涉及基于主机的监控,因此数据收集,处理和日志记录功能非常重要。我们通过过滤,聚合数据量高的地方实现这一目标,并持续监测资源使用情况。

监测策略的重叠确保了我们监测中没有任何盲点。此外,整个策略的重叠部分增加了冗余数据,但提高了整体解决方案在几台服务器上监控故障的弹性。

方案总结

我们已经实施了DNS检测,以便检测异常报告包括异常活动中涉及到的用户名,进程名称,计算机名称,异常域名和域名服务器IP地址等可用信息。这有助于我们对异常数据作出最明智的决定。

以下概况了我们如何做到这一点。

Dns_Intrusion_Detection_1

上图显示了通过我们网络DNS流量和与活动相关的监控数据。监视数据在端点上收集并进行处理,以便检测来自所有监控模块(Netflow,Dnsflow等)的数据。

当我们检测到DNS异常时,我们致力于获取与活动相关的所有数据 – 从用户到名称服务器的IP地址。上图显示了监控数据如何检测包含有关可用数据的信息。以下是每个监控模块的相关信息。

我们使用上述数据加入每个异常检测的中间结果,以创建有关DNS异常的更完整的图像。此外,我们将DNS检测结果与其他检测结果进行聚合。这有助于我们理解与机器或域相关的其他异常情况下的DNS异常。

参考文献

 

*参考来源:office365

源链接

Hacking more

...