乐趣区

网络分析利器wireshark命令版:Apache Spot中tshark模块(3)

tshark 是网络分析工具 wireshark 下的一个工具,主要用于命令行环境进行抓包、分析,尤其对协议深层解析时,tcpdump 难以胜任的场景中。本系列文章将整理介绍 tshark 相关内容。本文将介绍与 tshark 相关的开源系统。
Apache Spot
Spot 简介
Apache Spot 是一个开源软件,提供流量和数据包分析的洞察力。通过透明的服务交付,可以帮助识别企业与服务提供商或在云规模运营的资源之间发生的攻击、潜在安全威胁,深入了解其网络环境及安全风险。虽然威胁情报工具有助于识别未知威胁和攻击,但发现未知威胁仍然是一项挑战。Apache Spot 通过大数据和科学计算学科中强大的技术,专注于检测诸如横向移动,旁道数据逃逸,内幕问题或隐身行为等事件的“深层安全问题”,使用流量和数据包分析技术暴露可疑连接和以前看不见的攻击的能力,为公司构建一个旨在支持这一战略的解决方案。
整体架构

主要功能及特点
感知 Telemetry

Flows.
域名解析 DNS (pcaps).
代理 Proxy.

** 并行采集框架 Parallel Ingest Framework

开源解码器 Open source decoders.
读取 hadoop 数据 Load data in Hadoop.
数据转换 Data transformation.

机器学习 Machine Learning

快速过滤 10 亿级事件 Filter billion of events to a few thousands.
无监督学习 Unsupervised learning.

操作分析 Operational Analytics

可视化 Visualization.
启发式分析 Attack heuristics.
噪音过滤 Noise filter.

Spot 采集架构
由上图可知,Apache Spot 在处理 DNS 流量时采用 tshark 方案,用于协议解析数据 ETL 等工作。
tshark 相关源码
根据架构图,发现主要在 ingest 模块,查看相关源码,可以发现 Spot 是如何应用 tshark 的。具体代码如下:
查看源码 spot-ingest/pipelines/dns/worker.py
# build process cmd.
process_cmd = “tshark -r {0}{1} {2} > {0}{1}.csv”.format(self._local_staging, file_name, self._process_opt)
再查看相关配置 spot-ingest/ingest_conf.json
“dns”:{
“type”:”dns”,
“collector_path”:”/collector_path/dns”,
“local_staging”:”/collector_path/dns/tmp”,
“supported_files”:[“.pcap”],
“pkt_num”:”650000″,
“pcap_split_staging”:”/collector_path/dns/dns_staging”,
“process_opt”:”-E separator=, -E header=y -E occurrence=f -T fields -e frame.time
-e frame.time_epoch -e frame.len -e ip.src -e ip.dst -e dns.resp.name
-e dns.resp.type -e dns.resp.class -e dns.flags.rcode -e dns.a ‘dns.flags.response == 1′”
},
上面 Dshark 命令就不详细介绍,可参考上篇文章:tshark 使用示例 (2)
尝试 Demo

部署 docker 环境
抽取 docker 镜像: docker pull apachespot/spot-demo

启动镜像: docker run -it -p 8889:8889 apachespot/spot-demo

在浏览器中打开 http://localhost:8889/files/ui/flow/suspicious.html#date=2016-07-08

参考

Apache Spot 主站
incubator-spot

系列文章:

网络分析利器 wireshark 命令版:tshark 简介 (1)
网络分析利器 wireshark 命令版:tshark 使用示例 (2)
网络分析利器 wireshark 命令版:Apache Spot 中 tshark 模块 (3)
[网络分析利器 wireshark 命令版:tshark 结合 ES(4)]

退出移动版