恶意软件检测中字符串签名的自动生成
1. 签名筛选的启发式规则
1.1 字节级多样性相关规则
1.1.1 文件数量和比例规则
若文件集中包含签名 S 的文件数量超过阈值比例,或者数量超过阈值计数,签名 S 会被拒绝。前提是每个恶意软件组对应一个恶意软件家族,这种情况下这些文件不太可能是单一恶意软件家族的变体。
1.1.2 签名位置偏差规则
Hancock 会计算签名 S 在每个文件中的位置,并计算这些位置的标准差。若标准差超过阈值,S 会被拒绝。因为较大的位置偏差表明 S 出现在这些文件中的原因差异很大,所以这些文件不太可能属于同一恶意软件家族。S 在恶意软件文件中的位置可以是相对于文件开头的绝对字节偏移量,也可以是相对于包含 S 的代码段开头的相对字节偏移量。
1.1.3 多个公共签名规则
Hancock 会尝试寻找另一个公共签名,该签名存在于所有文件中且与 S 至少相距 1 K 字节。若存在这样的签名,且该签名与 S 之间的距离在文件集中的标准差较小,那么 S 会被接受。这表明文件集共享一大块代码,因此很可能是单一恶意软件家族的变体。此启发式规则利用足够远的额外签名来衡量文件之间的相似性,并且可以推广到使用第三个或第四个签名。
1.1.4 周围上下文计数规则
Hancock 在每个恶意软件文件中扩展签名 S,通过在其开头和结尾添加字节,直到生成的字节序列不同。对于每个这样的不同字节序列,重复相同的扩展过程,直到扩展后的字节序列达到大小限制,或者不同扩展字节序列的总数超过阈值。若扩展过程因不同扩展字节序列的数量超过阈值而终止,S 会被拒绝。
恶意软件字符串签名自动生成
超级会员免费看
订阅专栏 解锁全文
6764

被折叠的 条评论
为什么被折叠?



