LFMSystem使用说明
- 功能
a) 记录某个进程访问(包括打开、新建)过的文件。(open、openat、creat)
b) 如果进程对某个文件访问了多次,则只产生一条记录,记录中包含访问次数和访问类型(打开/新建)等。
c) 可以设置只监视哪些进程(支持通配符)。
d) 可以设置哪些文件或文件夹不记录(支持通配符)。
e) 可以设置只监控哪些文件或文件夹。
- 实现
- 信息收集工具(Linux无界面)
将信息记录到文件中。文件格式同Windows下的TFMSystem记录。
收集工具包括两个程序
- LFMConfig(用户层程序)
- 内核收集的信息使用方式保存到文件中。
- LFM_*.ko(内核模块)
- 根据过滤选项将内容收集信息,并将信息传给LFMConfig
下一步实现计划:实现图形界面,包含过滤选项的配置、停止、启用记录、导出记录内容等。
- 信息查看工具LFMViewer(Windows有界面)
打开收集的文件,以图形界面的方式显示分析。
与Windows下的TFMSystem工具的TFMViewer类似。
注:由于一些分隔符和路径等处理不同,如果使用TFMViewer打开Linux收集的信息,或反过来使用LFMViewer打开windows收集的信息,都会导致获取的信息部分显示不正确。
- 操作
- 收集信息
- 加载内核模块LFM_*.ko
运行insmodKO.sh(这个脚本会根据系统是32位或是64位,加载对应内核模块)加载匹配的内核模块。LFM.ko加载后一直保持在后台运行。
请保持ko文件夹(这个文件中存放内核内核模块LFM_*.ko)和insmodKO.sh在同一级目录下。
注:不允许与加密客户端一起使用。
- 运行LFMConfig收集信息
运行LFMConfig(32位)、LFMConfig64(64位)加过滤选项,开始收集信息。
-
- 支持命令行参数
- h:显示帮助信息
- c:包含子进程
- p:指定进程(默认为所有进程)
- e:过滤指定进程(默认过滤系统图形界面相关的进程nautilus gnome-*)
- f:指定文件(默认为所有文件)
- o:过滤指定文件(默认为Linux加密客户端本身就会过滤的文件夹/proc/* /sys/* /etc/* /var/* /boot/* /dev/* /selinux/* /usr/lib/*;)
- 支持命令行参数
注:p、e、f、o者支持“*?”通配符,当对应多个参数时使用空格分隔,如果文件名或进程包含空格,则需要加上“”。对于f、o,包含“/”时匹配全路径,否则匹配文件名。可使用-h显示详细信息。
例:LFMConfig -p nano vi* "Tes t" gedit –c –f *.c *.cpp “/home/H h/*”
注:每次LFMConfig运行后开始收集,进程退出停止收集。收集的内容保存在/tmp/.Ocular文件夹下。如果文件下的内容不为空时,每次运行都会叠加收集。
- 导出文件
- 执行exportZip.sh脚本将数据打包成ZIP
例:exportZip.sh /root/Desktop/fm.zip(将收集的数据打包到/root/Desktop/fm.zip)
- 如果不想下次收集的数据,在这次收集的基础上进行叠加,需要清空收集的内容。
可运行ClearData.sh脚本清空数据。
- 分析信息
使用LFMViewer打开收集的信息,进行分析。
与TFMViewer区别:LFMViewer无法显示文件是否修改、是否关闭时删除以及区分进程。无法获取进程详细信息。