Page 202 - 《软件学报》2026年第6期
P. 202

陈永威 等: 基于异质图匹配网络的恶意软件相似性度量方法                                                    2521


                 HGMSim  计算出的正样本对之间的相似值有相当大概率大于负样本对间的相似值, 进行样本对分类时的效果更
                 佳. 同时, HGMSim  在检索评价类指标上大幅度优于            Siamese_GNN, 表明局部点图匹配的嵌入方法能有效学习到
                 不同家族间高相似样本的语义差异, 使得在检索出的高相似样本中同家族样本排名更靠前. 对比实验表明, HGMSim
                 能很好地捕获恶意软件间语义, 有效地度量恶意软件间相似性.

                     表 2 模型性能对比结果        (绿盟企业数据集)                表 3 模型性能对比结果        (BODMAS  数据集)

                      模型名        MRR     NDCG@10     AUC           模型名         MRR    NDCG@10     AUC
                      TLSH       0.589     0.400     0.811         TLSH        0.465    0.315     0.815
                   Siamese_CNNs  0.404     0.269     0.810      Siamese_CNNs   0.294    0.203     0.824
                   Siamese_GNN   0.251     0.172     0.920      Siamese_GNN    0.242    0.171     0.882
                      RGCN       0.340     0.287     0.889         RGCN        0.335    0.268     0.875
                     MGMN        0.568     0.416     0.889         MGMN        0.455    0.324     0.870
                     HGMSim      0.595     0.508     0.919        HGMSim       0.471    0.335     0.878

                    对各个模型的预处理、训练、测试耗时进行统计和对比. 预处理耗时是统计模型处理                             2 500  个恶意软件的耗
                 时, 训练耗时是统计使用       3 500  对训练样本对模型进行训练的耗时, 测试耗时是统计模型对测试集中                    750  对样本进
                 行相似性度量的耗时. 其中, Siamese_CNNs 的预处理耗时包括将样本重采样为图像的时间, Siamese_GNN                     的预处
                 理耗时包括    Radare2  提取函数调用图和     Asm2Vec 生成图节点嵌入向量的时间. MGMN、HGMSim            和  RGCN  的预
                 处理耗时包括     IDA Pro  提取函数调用图和生成函数特征向量的时间. 所有模型的耗时对比结果如表                        4  所示, 其中
                 TLSH  为非机器学习方法, 直接使用二进制恶意软件作为模型输入, 所以无训练耗时和预处理耗时. Siamese_CNNs
                 将二进制恶意软件采样为恶意软件灰度图, 没有使用耗时的反汇编操作和计算开销大的图神经网络, 因此整体的
                                                                                       2
                                                                                                2
                 耗时较少. HGMSim    使用基于局部点图匹配的异质图嵌入方法, 虽然其时间复杂度                    O(L(|V| F + D|V|F )) 较高, 但
                 和不使用跨图交互的图方法相比, HGMSim            在训练和测试耗时上和        Siamese_GNN  接近, 小幅度高于    RGCN, 这验
                 证了  HGMSim  在二进制恶意软件相似性度量任务中的适用性. 耗时差异不大的原因为: 大多数恶意软件的函数调
                 用图较小    (绿盟数据集中, 图节点数量小于         1 000  的恶意软件占比    84.37%; BODMAS  数据集中, 图节点数量小于
                 1 000  的恶意软件占比为    84.76%), 同时我们优化了跨图交互的信息传递方式, 仅考虑同类型跨图节点间的信息传
                 递, 从而有效降低了计算复杂度.

                                                     表 4 耗时对比结果

                                       模型名        测试耗时 (s)    训练耗时 (h)     预处理耗时 (h)
                                       TLSH          28.8         无            无
                                    Siamese_CNNs     1.47        0.77         1.25
                                    Siamese_GNN      43.1        7.89          28
                                       RGCN          33.2        4.79         9.32
                                       MGMN          40.6         9           9.32
                                      HGMSim         48.7         7           9.32

                  4.2.2    消融实验
                    本节展示区分函数节点类型和增添跨图边使用局部点图匹配方法对                         HGMSim  模型性能的提升效果. 训练如
                 下模型, 进行消融实验.
                    HGMSim_zero: (1) HGMSim  模型不区分函数节点类型, 使用        struct2vec 方法聚合本图邻居信息. (2) 不考虑本
                 图和对比图的跨图间信息聚合.
                    HGMSim_w/o_cross: (1) HGMSim  模型区分函数节点类型, 使用本图异质邻居聚合方法聚合本图邻居信息.
                 (2) 不考虑本图和对比图的跨图间信息聚合.
                    HGMSim_GMN: (1) HGMSim  模型区分函数节点类型, 使用本图异质邻居聚合方法聚合本图邻居信息. (2) 考
                 虑本图和对比图的跨图间信息聚合, 其信息聚合基于                 GMN [20] 的方法, 跨图间信息聚合时, 每个图节点都会聚合其
   197   198   199   200   201   202   203   204   205   206   207