2

我有一个任务,我需要一点帮助。我已经感染了.pcap 和以下任务:

硬编码 IP 地址 有时,恶意软件包含硬编码 IP 地址以下载其有效负载或与其命令和控制 (C&C) 服务器通信。找到所有这样的交流。提示:此类 IP 没有先前的 DNS 请求。

我需要用 Bro 脚本解决它。这是我的想法,但不幸的是我所有的连接都没有 DNS 请求:

    @load base/protocols/dns/main.bro
event file_timeout(f: fa_file)
    {
    for ( cid in f$conns )
        {
    if(f$conns[cid]?$dns){
        print f$conns[cid]$dns; 
        print "DNS";
    }else {
        print "No DNS";
    }
        }
    }

你知道我的代码有什么问题吗?

4

1 回答 1

0

我建议您为此使用错误的事件。file_timeout仅当文件传输正在发生然后在未完成的情况下停止时才会发生。一个更有趣的事件关联是:

  1. 跟踪 DNS 地址查找响应(我可能会使用event dns_A_reply(c: connection, msg: dns_msg, ans: dns_answer, a: addr))。
  2. 记录一组返回的地址;这将为您提供一组通过 DNS 查询发现的所有地址。
  3. 检查出站请求(orig_hSYN 上是内部地址)
  4. 检查 in 中的地址id$resp_h是否在第 2 步的地址集中。如果是,则返回,如果不是,则生成通知,因为您有一个没有相应 DNS 查找的出站连接尝试。
于 2017-12-21T16:18:28.460 回答