Netcap:安全和可扩展的网络流量分析工具

电子说

1.3w人已加入

描述

介绍

Netcap (NETwork CAPture) 是一个基于命令行的工具,用于对网络流量进行数据包数据分析,该工具能够捕获网络流量中的数据包流并将其转换为系统可以识别的审计记录。生成的审计记录可以保存在单独的硬盘上,也可以通过网络将结果传到另外的服务器保存。

Netcap:安全和可扩展的网络流量分析工具

Netcap 在通过网络流量收集数据包方面非常有效,数据包可以从离线PCAP-NG或PCAP转储文件等输入源收集,其它数据包可以通过实时界面访问和收集。

Netcap 使用 Google 的 Protocol Buffers 对其输出进行编码,解析很方便。也可以通过逗号分隔的CSV格式传输。为了不让系统中的数据占用太多空间,Netcap 将其所有数据压缩为gzip格式_._

Netcap 可以使用转储工具查看可用的审计记录,net.dump然后将审计记录转换为支持的文件格式,例如 CSV 和 JSON。由格式错误的数据包导致的日志错误记录在该errors.log部分中。

特点:

PCAP 和 PCAP-NG 支持

支持 USB 捕捉

允许实时捕捉

CLI命令行界面

可以从分布式来源收集网络数据包

对取证数据分析非常有用

功能:

net.capture(实时捕获审计记录或从转储文件中捕获)

net.dump(转储各种格式的审计记录)

net.label(用于从 netcap 数据创建带标签的 CSV 数据集的工具)

net.collect(分布式收集的收集服务器)

net.agent(分布式收集的传感器代理)

net.proxy(用于从 Web 服务捕获流量的 http 反向代理)

net.util(用于验证审计记录和转换时间戳的实用工具)

net.export(prometheus 指标的导出器)

支持的平台

Windows, Linux, OS X

Netcap的安装

使用Go Get

 

$ go get -u github.com/dreadl0ck/netcap/...

 

要安装命令行(使用 Development Build),请运行:

 

$ go build -o $(go env GOPATH)/bin/netcap -i github.com/dreadl0ck/netcap/cmd

 

MacOS使用brew安装

 

$ brew tap dreadl0ck/formulas  
$ brew install netcap

 

安装Netcap后,执行如下命令检查所有单元是否正常运行:

 

$ go test -v -bench=. ./...

 

Netcap使用

 

/ |  
 _______    ______   _10 |_     _______   ______    ______
/     / \  /    / \ / 01/  |   /     / | /    / \  /    / \
0010100 /|/011010 /|101010/   /0101010/  001010  |/100110  |
01 |  00 |00    00 |  10 | __ 00 |       /    10 |00 |  01 |
10 |  01 |01001010/   00 |/  |01 \_____ /0101000 |00 |__10/|
10 |  00 |00/    / |  10  00/ 00/    / |00    00 |00/   00/
00/   10/  0101000/    0010/   0010010/  0010100/ 1010100/
                                                  00 |
Network Protocol Analysis Framework               00 |
created by Philipp Mieden, 2018                   00/
v5

 +---------------+--------+                                                                                                                                                                                                             
 |   Setting     | Value  |                                                                                                                                                                                                             
 +---------------+--------+                                                                                                                                                                                                             
 | Workers       | 1000   |                                                                                                                                                                                                             
 | MemBuffer     | true   |                                                                                                                                                                                                             
 | Compression   | true   |                                                                                                                                                                                                             
 | PacketBuffer  | 100    |                                                                                                                                                                                                             
 +---------------+--------+                                                                                                                                                                                                             
 spawned 1000 workers                                                                                                                                                                                                                   
 initialized 29 layer encoders | buffer size: 4096                                                                                                                                                                                      
 initialized 7 custom encoders | buffer size: 4096                                                                                                                                                                                      
 running since 535785474s, captured 13000 packets…

 

要查看 Netcap 所支持的所有编码器,加上–encoders参数,根据你要执行的操作,你可以使用这些标志来排除-exclude或包含-include编码器 。

例子:

从网卡读取流量:

 

$ net.capture -iface eth0

 

使用 Ctrl-C (SIGINT) 停止捕获。

PCAP 从和PCAP-NG转储文件中读取流量:

 

$ net.capture -r traffic.pcap

 

读取转储文件并打印stdout 为 csv格式

 

$ net.dump -r TCP.ncap.gz

 

将 CSV 输出保存到文件:

 

$ net.dump -r TCP.ncap.gz -select Timestamp,SrcPort,DstPort > tcp.csv

 

展示

还可以通过grafana实时展示网络数据

 

 

  审核编辑:汤梓红
 
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分