一款被动收集DNS记录的工具,用于辅助事件处理、网络安全监控(NSM)及常规数字取证。
PassiveDNS 从网络接口嗅探流量或读取 pcap 文件,并将 DNS 服务器应答输出到日志文件中。PassiveDNS 可在内存中缓存/聚合重复的 DNS 应答,从而在不丢失 DNS 应答核心信息的前提下,减少日志文件中的数据量。
版本 1.0.0 至当前版本的日志文件(/var/log/passivedns.log)示例输出:
#timestamp||dns-client ||dns-server||RR class||Query||Query Type||Answer||TTL||Count 1322849924.408856||10.1.1.1||8.8.8.8||IN||upload.youtube.com.||A||74.125.43.117||46587||5 1322849924.408857||10.1.1.1||8.8.8.8||IN||upload.youtube.com.||A||74.125.43.116||420509||5 1322849924.408858||10.1.1.1||8.8.8.8||IN||www.adobe.com.||CNAME||www.wip4.adobe.com.||43200||8 1322849924.408859||10.1.1.1||8.8.8.8||IN||www.adobe.com.||A||193.104.215.61||43200||8 1322849924.408860||10.1.1.1||8.8.8.8||IN||i1.ytimg.com.||CNAME||ytimg.l.google.com.||43200||3 1322849924.408861||10.1.1.1||8.8.8.8||IN||clients1.google.com.||A||173.194.32.3||43200||2
PassiveDNS 支持 IPv4 和 IPv6 流量,并可解析 TCP 与 UDP 上的 DNS 流量。
** PassiveDNS 如何使用:**
典型用法:
在事件调查中搜索域名或 IP 历史记录。 示例: 公司有恶意软件与 bad.twittertoday.com 通信。 当前时间,该域名解析为 202.29.94.200。 你搜索流量数据并找到与该 IP 通信的客户端,然后进行修复。查看流量数据后,发现客户端首次与该 IP 通信的日期和时间,并以此确定为感染时间...
但借助 PassiveDNS 数据查询该域名,你会得到以下历史记录:
2011-12-01 | 2011-12-11 | A | 60 | bad.twittertoday.com | 71.51.115.11 2011-12-11 | 2011-12-18 | A | 60 | bad.twittertoday.com | 127.0.0.1 2011-12-18 | 2012-01-14 | A | 60 | bad.twittertoday.com | 202.29.94.200
再回头搜索流量数据中的 71.51.115.11,你找到了自首次出现日期以来的流量,同时还发现更多初始感染的客户端(因此仅凭 IP 202.29.94.200 进行第一轮修复/检查时,你并未覆盖所有客户端)。对第一轮遗漏的客户端进行取证后发现,它们下载了不同的恶意软件并删除了最初的那个,这就是为什么你没有看到它们向 202.29.94.200 发送流量的原因。新的恶意软件提供了新的域名和 IP 供你追踪...
假设你收到指示,有恶意的 C&C 流量正在向某个 IP 的 80 端口发送。该疑似恶意软件使用的域名应为 cc.twittertoday.com。搜索你的流量数据后发现大量客户端与该 IP 通信,你可能会认为整个公司都被攻陷了。但在 PassiveDNS 数据库中快速搜索,发现该 IP 还托管了 300 多个网站,你甚至可能在其中找到一个你熟悉的、公司内部许多人日常合法访问的网站。 在 PassiveDNS 数据库中搜索相关域名,未找到任何结果,这或许意味着你的网络中并没有该恶意软件在使用该域名进行通信。
你知道 *.twittertoday.com 经常被恶意软件使用,且子域名随机变化。许多人在入侵检测/防御系统(IDS/IPS)中为此类域名配置了规则,消耗了系统不必要的资源。编写一个脚本,预先加载要监控的域名和子域名正则表达式列表,当它们出现时触发告警,这样基于域名的威胁检测效果会好得多。
你还可以对所有新出现的主域名进行 whois 查询,将 whois 信息与已知的恶意信息(如域名注册人姓名、公司、电话号码/传真、地址等)进行关联,最终得出一个评分,当评分足够高时,向你发出警报。
欢迎提问、建议、吐槽或赞美 :)
希望 PassiveDNS 能成为你对抗恶意软件及其操控者的新工具...
(c)2011-2020 - Edward Bjarte Fjellskål