Linux系统恶意软件文件识别与分析指南
1. 文件相似度索引
在文件识别过程中,将可疑文件与私有或公共存储库中收集或维护的其他恶意软件样本进行比较是重要的一环。传统哈希算法(如MD5和SHA1)基于整个文件内容生成单个校验和,文件内容的微小改变(如增减一位)都会导致校验和变化,难以匹配相似文件。
而模糊哈希(Fuzzy Hashing)或上下文触发分段哈希(Context Triggered Piecewise Hashing,CTPH)则是一种有效的文件相似度比较方法。CTPH为文件计算一系列随机大小的校验和,使调查人员能够关联内容相似但不完全相同的文件,这在恶意软件分析中尤为有价值,因为攻击者常共享或交易恶意软件,导致同一恶意软件有多种变体。
1.1 工具推荐
使用ssdeep工具,它利用CTPH来识别同源文件。ssdeep可生成文件的唯一哈希值,或比较未知文件与已知文件或文件哈希列表。以下是“漂亮匹配模式”的示例:
lab@MalwareLab:~/home/malwarelab/Malware Repository$ ssdeep -bp trtq trtq-COPY trtq matches trtq-COPY (99) trtq-COPY matches trtq (99)1.2 哈希存储库
在线哈希存储库可用于查询可疑文件的哈希值,以下是一些常见的在线哈希存储库:
| 名称 | 链接 |
| ---- | ---