我创建了一个兄弟脚本,目的是从 pcap 文件中提取所有可能协议的所有文件。但我不想写所有日志。Bro 为每个协议创建一个日志文件。示例:“http.log”、“smtp.log”等。甚至会生成“weird.log”。我的 pcap 文件很大(20gb),所以每个日志文件包含超过 30mb 的信息。此日志生成会降低文件提取的性能。我可以使用该行禁用“conn.log”,Log::disable_stream(Conn::LOG)
但是,所有协议日志记录呢?这是我的脚本
@load base/files/extract
event bro_init()
{
Log::disable_stream(Conn::LOG);
}
event file_sniff(f: fa_file, meta: fa_metadata)
{
local ext = "";
if ( meta?$mime_type )
ext = split_string(meta$mime_type, /\//)[1];
local fname = fmt("%s-%s.%s", f$source, f$id, ext);
Files::add_analyzer(f, Files::ANALYZER_EXTRACT, [$extract_filename=fname]);
}