一、参考
官方文档 file analysis
二、名词解释
FAF, file analysis framework, 文件分析框架
DPD, dynamic protocol detection, 动态协议检测框架
三、正文
1. 文档翻译
在过去,编写 zeek 脚本分析文件内容非常麻烦,因为根据文件传输涉及到的网络协议,可能会有多种不同的事件(分布在不同的协议层)呈现,当不同协议中包含文件时,需要修改某个协议的分析事件用于适应其他协议的事件。
现在,通过 FAF 框架,可以通过一套事件,解决不同协议中文件分析。有关于网络传输文件所涉及的协议信息仍然可以使用,但是不需要组织脚本逻辑来处理文件。FAF 框架的目标是提供和 Zeek 已有的网络连接分析类似的文件分析。
文件提取生命周期,主要的事件如下:
(1) file_new,
(2) file_over_new_connection
(3) file_timeout
(4) file_gap
(5) file_state_remove
有内置的分析器,可以添加到文件分析过程,一旦添加,当 zeek 从正在进行的网络连接中提取文件时候,分析器获取文件的内容。这些内置的文件分析器的处理逻辑各不相同,但是它们通常会通过事件呈现更多的文件信息。例如:
Files:ANALYZER_MD5
将计算文件的 md5 校验值 Files:ANALYZER_EXTRACT
将提取文件内容到服务器文件系统中
未来,可能会有基于启发式的文件自动分析功能,类似于 DPD 框架