## 系统完整性检测工具记录 之前没有做记录,此记录从V0.2开始进行记录 ### 当前情况 #### code目录 ``` code/ ├── datadifflib │   ├── main.c │   ├── Makefile │   ├── md5.c │   ├── md5.h │   ├── pkg.sh │   ├── scan │   ├── scan.c │   └── scan.h ├── dataintolib │   ├── clear_datelib.sh │   ├── into_datelib.sh │   └── iso ├── datalib │   ├── fileinfo.db │   ├── fileinfo.sql │   └── merge.sh ├── pkg.sh ├── README.md └── work ├── make.sh └── test.c ``` 完成详细设计的代码,整体分为两部分,系统信息收集部分(into_datelib.sh),目前的收集程序,采用交互式,只能收集系统的安装包,需要先在虚拟机上安装好系统,然后将镜像挂载到系统上,程序会先根据镜像中的安装包生成安装包列表,并收集安装包的全部信息,然后用命令(pkg、dpkg、rpm)收集当前已经安装的安装包列表,对已经安装的,收集系统中文件的信息,对未安装的,收集安装包中的文件信息。 文件对比部分,读取系统的全部安装包,与当前系统中的安装包做比较,将安装的安装包记录并比较(包信息、包所属文件信息),将不存在和被卸载的安装包记录。 ### 其他目录 目前已经编写,SIC-详细设计说明书-V0.2.odt、SIC-项目变更记录.doc、立项申请书.odt、项目计划书.odt、SIC-用户需求说明书-V0.1.pdf、SIC-产品需求说明书-V0.1.odt。 ``` zhang:~/git-zhang/SIC$ tree design/ design/ ├── README.md ├── SIC-详细设计说明书-V0.2.odt ├── SIC-详细设计说明书-V0.2.pdf ├── 产品信息入库工具.png ├── 文件完整性检测工具结构图.png ├── 文件信息对比模块-流程图.png └── 系统完整性检测工具结构图.png 0 directories, 7 files zhang:~/git-zhang/SIC$ tree manage/ manage/ ├── SIC-项目变更记录.doc ├── SIC-项目变更记录.pdf ├── 立项申请书.odt ├── 立项申请书.pdf ├── 项目计划书.odt └── 项目计划书.pdf 0 directories, 6 files zhang:~/git-zhang/SIC$ tree requirement/ requirement/ ├── SIC-产品需求说明书-V0.1.odt ├── SIC-产品需求说明书-V0.1.pdf ├── SIC-用户需求说明书-V0.1.odt └── SIC-用户需求说明书-V0.1.pdf 0 directories, 4 files ``` ### 电科院需求 #### 工具功能 1. 能够采集应用软件的可执行文件、配置文件的版本信息。 2. 能够对运行的进程进行版本信息采集,包括起依赖的软件版本信息。 #### 功能规范和信息输出格式。 1. 输出信息格式初步为:“文件成名+文件类型+md5校验码” 2. 文件类型:可执行二进制文件ELF、可执行shell脚本、文本配置文件、日志文件 #### 程序信息采集功能需求: 1. 能够动态采集运行的程序文件,同时按照程序文件、第三方组件、配置文件、系统文件、其>它文件等分类进行标识;(标识分类可讨论补充); 2. 程序采集按照指令触发响应的模式进行,即接收到触发指令,执行对程序文件信息的采集,>确定指令接口; 3. 采集程序过程中,控制资源消耗,不能影响正常程序文件的正常运行; 4. 由中国电科院提供校验码计算程序接口,在采集到程序文件列表后,利用计算程序接口计算>每个文件的校验码; 5. 计算结束后,按照软件名称、文件路径及名称、文件标识、校验码 ###