cert-tools

简介

本文主要是介绍一些开源的处理 netflow 的工具,关注 CERT NetSA Security Suite 的一些工具。CERT 是从是网络安全的,其主要是联合 CMU 大学做的大规模复杂网络威胁方面的分析。后续还有其他的处理工具,也会考虑更新。

本文测试环境:Ubuntu 22.04.5 LTS

YAF

YAF 全称 Yet Another Flowmeter,它主要的能力是从 pcap 文件中提取双向流,或者从实时的网络物理接口上面抓包提取双向流,然后把这些流导出 IPFIX 的格式,并且会生成一个IPFIX-based 格式的文件。然后这些文件可以用于它提到的类似 SiLK 的工具,或者 super_mediator 工具,Pipeline 5 工具等来进行处理。

安装

官网下载:yaf-2.18.3.tar.gz

需要安装部分依赖,参考下面的指令,注意自己所在的目录:

1
2
3
4
5
6
7
8
9
10
11
wget https://tools.netsa.cert.org/releases/p0flib.tar.gz
wget https://tools.netsa.cert.org/releases/yaf-2.18.3.tar.gz

tar -zxvf p0flib.tar.gz
tar -zxvf yaf-2.18.3.tar.gz

# 安装 p0flib
cd p0flib/libp0lf
./configure
make
sudo make install

configure 的时候,由于使用的版本比较老,需要手动修改一个地方,参考下面的指令:

1
2
3
4
5
6
7
8
9
10
11
12
13
# 修改yaf的configure文件,里面的--date后面的%v格式不对,改成%Y-%M-%D

cd yaf
./configure \
--enable-applabel \
--enable-p0fprinter \
--enable-plugins \
--enable-mpls \
--enable-entropy \
--enable-fpexport \
--enable-nonip
make -j
sudo make install

使用

主要是输入有两类,可以自行抓包生成一个 test.pcap,然后进行测试处置:

1
2
3
4
5
yaf --in test.pcap --out flows.ipfix
yafscii --in flows.ipfix --out readable_flow.txt

# Decode and print IPFIX records using tshark
tshark -r flows.ipfix -V

其他

最新的 prelease 版本有一些依赖,可以支撑 nDPI 等。

super_mediator

super_mediator 是 IPFIX 处理中间件,将 YAF 处理的内容给 SiLK 工具使用。它可以把 YAF 获取到的 IPFIX 数据,处理成 csv 文件或 json 文件,甚至可以保存到 MySQL 数据库中。

安装

这里我们依然安装稳定版本,有一些坑需要注意,参考下面的指令:

1
2
3
4
5
6
7
8
9
wget https://tools.netsa.cert.org/releases/super_mediator-1.13.0.tar.gz

tar -zxvf super_mediator-1.13.0.tar.gz
sudo apt install libmysqlclient-dev
sudo touch /usr/include/mysql/my_global.h # 老版本有这个,新版本内容移植到了mysql.h中,创建一个支持configure的逻辑

./configure --with-mysql --with-openssl
make CPPFLAGS="-Dmy_bool=bool"
sudo make install

注意一下版本,现在的mysql的依赖版本太高了,和原来的版本有所差别,所以需要处置一下。

使用

直接转换

有两个模式,分别转换成 json 格式或者 csv 格式。

1
2
3
4
5
# Convert an existing IPFIX file to JSON format
super_mediator --in flows.ipfix --out flows.json --output-mode JSON

# Convert an existing IPFIX file to CSV format
super_mediator --in flows.ipfix --out flows.csv --output-mode CSV

守护进程

设置一个配置文件,例如:

1
2
3
EXPORTER TEXT
PATH "output.txt"
EXPORTER END

更加复杂的使用方式,得参考官方网站给出的示例。

其他

最新的 pre-release 版本里面,进行了一些更新,包括对 DPI 的支持,并且可以把从 YAF 获取到的数据进行 DPI 分析过后发送给其他的 IPFIX 收集器。


cert-tools
https://www.bencorn.com/2026/04/19/cert-tools/
作者
Bencorn
发布于
2026年4月19日
许可协议