利索能及
我要发布
收藏
专利号: 2022109075489
申请人: 杭州电子科技大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于动态图注意力网络的恶意软件检测的方法,其特征在于包括以下步骤:步骤(1)、数据预处理阶段:

1‑1获取待检测软件的API调用序列;对API调用序列进行去重处理,得到真实反映软件行为的API调用序列;

1‑2将步骤1‑1去重处理后的API调用序列中同一功能的所有API函数名进行去除后缀,使其函数名相同;

1‑3将步骤1‑2处理后的API调用序列按观察窗口划分,得到T个API子序列;

1‑4将步骤1‑3每个API子序列转换为API调用图的形式;其中子序列中的API作为API调用图的节点,并用有向边代表当前API与其他API节点之间的调用关系,调用的次数作为边的权重;构建出的API调用图用G=(N,E)表示,其中N为节点的集合,E为边集合;

1‑5将步骤1‑4得到的T个API调用图按照API子序列顺序拼接,得到调用图快照序列,用以表示API调用图的结构变化过程与趋势;

步骤(2):使用图注意力网络捕获局部API之间的软件恶意信息;

2‑1将步骤1‑5图快照序列中的每个API节点使用one‑hot编码作为其初始的特征向量;

通过Embedding函数把API节点的特征向量映射到更低维的向量空间中并记作其中N是API数目,F是API的维数;

F*F'

2‑2初始化共享线性变换矩阵W,其中W∈R ,表示将特征矩阵H从F维转换到F'维;利用共享线性变换矩阵W对API节点进行特征转换,同时计算节点间注意力系数;

每个API节点i与其邻居节点j的注意力系数的计算公式如下:

式中, 为节点i和节点j之间注意力系数,代表了邻居API节点对当前目标API节点的重要程度; 为节点i的初始特征向量;Ni为节点i的所有邻居节点的集合;||表示拼接操作,将向量串联在一起; 为单层的前馈神经网络;LeakyReLU为激活函数计算节点i和其邻居节点j之间的注意力权重;

2‑3根据注意力系数对各节点信息进行加权聚合,其结果作为当前节点的新特征向量进一步得到新特征矩阵 F'表示输出节点的特征维度;

2‑4使用多个相互独立的单头注意力层,通过拼接或平均结果的方式来更新节点的嵌入;多头的公式采用公式(3)或公式(4):其中,||表示级联操作, 表示由第k个注意力机制计算出的节点i和j之间的归一化注k意力系数,W表示对应的输入线性变化权重矩阵, 表示K个头注意力层的特征输出;

2‑5将每个调用图快照中的API节点的特征向量 展平串联在一起,得到代表当前调用图快照的特征向量xi,作为门控循环神经网络模块的输入;图快照序列的特征表示为X={x1,x2,...,xT},其中T表示快照数;

步骤(3):使用门控循环神经网络学习软件调用图结构的演变过程,捕获软件的行为发生的长远时序信息;

3‑1将图注意力网络输出的所有调用图快照的特征向量X作为门控循环神经网络的输入,并根据上一个时刻传递下来的隐藏状态ht‑1和当前时刻的输入xt来计算当前时刻更新门与重置门的状态信息;更新门与重置门每个时刻的状态表示为:rt=σ(Wxrxt+Whrht‑1+br)    (5)

zt=σ(Wxzxt+Whzht‑1+bz)    (6)

其中xt表示特征向量X的第t个元素;ht‑1表示在t‑1时刻的隐藏层状态;rt表示重置门,用于控制前一个时刻隐藏层状态ht‑1对当前输入xt的影响;zt表示更新门,用于决定是否忽略当前输入的xt;σ为Sigmoid激活函数;

3‑2在计算出门控信号后,使用重置门来控制候选状态 是否依赖于上一时刻的状态ht‑1;具体将重置之后的数据与当前时刻的输入xt进行拼接或相加,然后通过一个tanh激活函数将数据缩放到(‑1,1)的范围内,得到表示当前时刻的隐藏信息 计算公式如下:

3‑3使用更新门来控制历史信息的保留程度;具体的计算公式如下:步骤(4):将门控循环神经网络的输出结果输入至分类器,以实现待测软件的恶意情况。

2.如权利要求1所述方法,其特征在于步骤1‑1所述去重处理是删除连续调用的相同API函数或相同API序列片段,将包含冗余信息试图隐藏代码恶意意图的API片段删除后,获得真实反映软件行为的API调用序列。

3.如权利要求1所述方法,其特征在于步骤1‑3具体是使用一个不断扩大的窗口来截取API调用序列,窗口每次增加的长度为超参数。

4.如权利要求1所述方法,其特征在于步骤(4)所述分类器计算方法如下所示:其中B是偏置,Ws是线性变换权值矩阵。

5.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1‑4任一项所述方法。

6.一种机器可读存储介质,其特征在于,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现权利要求1‑

4任一项所述方法。