基于熵的固件加密检测方法、装置、计算机设备及介质制造方法及图纸

技术编号:34898916 阅读:16 留言:0更新日期:2022-09-10 14:00
本申请涉及基于熵的固件加密检测方法、装置、计算机设备及介质,所述方法包括:接收固件文件,将固件文件等量划分为预设字节长度的数据区段,固件文件包括第一固件文件、第二固件文件和第三固件文件;利用香农熵策略计算每个数据区段的信息熵,利用地址计算策略获取每个数据区段在固件文件中的偏移中间地址;将信息熵和偏移中间地址相结合用于定义每个数据区段的熵值属性,构建包含所有数据区段的熵值属性集合,并建立熵值属性的数据集;基于第一固件文件和第二固件文件的数据集,利用逻辑回归策略构建预测模型;将第三固件文件的数据集输入至预测模型中,通过预测模型的输出结果判断第三固件文件是否加密。本申请能够有效提高检测速度和效率。测速度和效率。测速度和效率。

【技术实现步骤摘要】
基于熵的固件加密检测方法、装置、计算机设备及介质


[0001]本申请涉及固件加密检测
,特别是涉及一种基于熵的固件加密检测方法、装置、计算机设备及介质。

技术介绍

[0002]在软件安全性逐步提升的同时,固件和硬件安全称为热点安全问题,实际上,固件近年来已成为攻击者的热门目标,基于固件的恶意软件很大程度上被安全团队忽略,这使服务器、存储和网络设备的固件成为企业安全的“软肋”。
[0003]电子产品更新速度不断地加快,每次升级都常常伴随着系统及固件的升级,而固件担任着一个系统最基础最底层的工作。且某些硬件除固件外没有其他软件组成,其决定着硬件设备的功能性能,而在升级过程中,攻击者可能拿到固件文件,并通过对固件的分析去实施固件的篡改等进行攻击,据Gartner数据,截止2022年,约有70%未执行固件升级计划的组织将由于固件漏洞而遭到入侵,而疫情的出现也导致了全球供应链不断增加的中短期风险,所以固件的加密就尤为重要的。现有的固件加密方法通常为对整个固件文件进行加密等。
[0004]目前对固件加密的检测方式多为安全测试人员对固件文件进行分析,效率不高且速度较慢。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种基于熵的固件加密检测方法、装置、计算机设备及介质。
[0006]一方面,提供一种基于熵的固件加密检测方法,所述方法包括:
[0007]步骤A:接收数据生成设备发送的固件文件,将所述固件文件等量划分为预设字节长度的数据区段,所述固件文件包括第一固件文件、第二固件文件和第三固件文件;
[0008]步骤B:利用香农熵策略计算每个所述数据区段的信息熵,利用地址计算策略获取每个所述数据区段在所述固件文件中的偏移中间地址;
[0009]步骤C:采用二元数组机制将所述信息熵和所述偏移中间地址相结合用于定义每个所述数据区段的熵值属性,基于所述每个所述数据区段的熵值属性构建包含所有所述数据区段的熵值属性集合,并建立所述熵值属性的数据集;
[0010]步骤D:基于所述第一固件文件和所述第二固件文件的数据集,利用逻辑回归策略构建预测模型;
[0011]步骤E:将所述第三固件文件的数据集输入至所述预测模型中,通过所述预测模型的输出结果判断所述第三固件文件是否加密。
[0012]在其中一个实施例中,所述固件文件包括:所述第一固件文件,所述第一固件文件为加密固件文件;所述第二固件文件,所述第二固件文件为未加密固件文件;所述第三固件文件,所述第三固件文件为待测固件文件。
[0013]在其中一个实施例中,所述香农熵策略包括:
[0014]H(X)=

∑p(x)logp(x)
[0015]其中,H(X)表示连续数据X的信息熵,x表示固件文件对应段中的字符,p(x)表示是x占对应段字符的比率;
[0016]所述地址计算策略包括:
[0017][0018]其中,f
i
表示所述数据区段在所述固件文件中的偏移首地址,l
i
表示所述数据区段在所述固件文件中的偏移末地址,i表示所述f
i
和所述l
i
的所述偏移中间地址。
[0019]在其中一个实施例中,所述采用二元数组机制将所述信息熵和所述偏移中间地址相结合用于定义每个所述数据区段的熵值属性包括:定义所述预设字节长度的数据区段为R
i
,计算获取所述数据区段的信息熵为H(R
i
);定义所述数据区段在所述固件文件中的偏移中间地址为i;所述采用二元数组机制将所述信息熵和所述偏移中间地址相结合,表示为<H(R
i
),i>,用于定义每个所述数据区段的熵值属性。
[0020]在其中一个实施例中,所述基于所述每个所述数据区段的熵值属性构建包含所有所述数据区段的熵值属性集合,并建立所述熵值属性的数据集包括:采集所述每个所述数据区段的熵值属性<H(R
i
),i>构建包含所有所述数据区段的熵值属性集合SH(R);基于所述熵值属性集合SH(R)中的每个元素,以i为横坐标,R
i
为纵坐标,构建所述熵值属性的数据集,其中,所述第一固件文件、第二固件文件和第三固件文件的数据集独立存在。
[0021]在其中一个实施例中,所述基于所述第一固件文件和所述第二固件文件的数据集,利用逻辑回归策略构建预测模型,包括:利用逻辑回归函数对所述熵值属性的数据集进行压缩变换,用于将所述熵值属性的数据集映射到最后的判断结果中,利用1和0表示加密固件文件和未加密固件文件,包括:基于所述逻辑回归函数的表达形式定义假设函数,所述假设函数为:
[0022][0023]通过代价函数对所述假设函数进行优化,所述代价函数为:
[0024][0025][0026]其中,θ表示权值,即参数,x表示偏移组,h
θ
(x)表示偏移段的熵值,θ
T
x=θ0+θ1x1+θ2x2+...+θ
n
x
n
,m表示分段数,x
(i)
表示通过逻辑回归函数和对应参数得到的估计值,y
(i)
表示真实值,y表示对应不同x下的真实值;
[0027]利用梯度下降策略求解所述逻辑回归函数,并进行重复迭代至所述代价函数收敛不变得到回归参数,保存对应的模型,即为所述预测模型。
[0028]在其中一个实施例中,所述将所述第三固件文件的数据集输入至所述预测模型
中,通过所述预测模型的输出结果判断所述第三固件文件是否加密,包括:通过所述预测模型获取加密概率,当所述加密概率大于0.7时,判断所述第三固件文件为加密固件文件。
[0029]另一方面,提供了一种基于熵的固件加密检测装置,所述装置包括:
[0030]划分模块,用于接收数据生成设备发送的固件文件,将所述固件文件等量划分为预设字节长度的数据区段,所述固件文件包括第一固件文件、第二固件文件和第三固件文件;
[0031]计算模块,用于利用香农熵策略计算每个所述数据区段的信息熵,利用地址计算策略获取每个所述数据区段在所述固件文件中的偏移中间地址;
[0032]数据集生成模块,用于采用二元数组机制将所述信息熵和所述偏移中间地址相结合用于定义每个所述数据区段的熵值属性,基于所述每个所述数据区段的熵值属性构建包含所有所述数据区段的熵值属性集合,并建立所述熵值属性的数据集;
[0033]模型构建模块,用于基于所述第一固件文件和所述第二固件文件的数据集,利用逻辑回归策略构建预测模型;
[0034]判断模块,用于将所述第三固件文件的数据集输入至所述预测模型中,通过所述预测模型的输出结果判断所述第三固件文件是否加密。
[0035]再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于熵的固件加密检测方法,其特征在于,所述方法包括:接收数据生成设备发送的固件文件,将所述固件文件等量划分为预设字节长度的数据区段,所述固件文件包括第一固件文件、第二固件文件和第三固件文件;利用香农熵策略计算每个所述数据区段的信息熵,利用地址计算策略获取每个所述数据区段在所述固件文件中的偏移中间地址;采用二元数组机制将所述信息熵和所述偏移中间地址相结合用于定义每个所述数据区段的熵值属性,基于所述每个所述数据区段的熵值属性构建包含所有所述数据区段的熵值属性集合,并建立所述熵值属性的数据集;基于所述第一固件文件和所述第二固件文件的数据集,利用逻辑回归策略构建预测模型;将所述第三固件文件的数据集输入至所述预测模型中,通过所述预测模型的输出结果判断所述第三固件文件是否加密。2.根据权利要求1所述的基于熵的固件加密检测方法,其特征在于,所述固件文件包括:所述第一固件文件,所述第一固件文件为加密固件文件;所述第二固件文件,所述第二固件文件为未加密固件文件;所述第三固件文件,所述第三固件文件为待测固件文件。3.根据权利要求1或2所述的基于熵的固件加密检测方法,其特征在于,所述香农熵策略包括:H(X)=

∑p(x)logp(x)其中,H(X)表示连续数据X的信息熵,x表示固件文件对应段中的字符,p(x)表示是x占对应段字符的比率;所述地址计算策略包括:其中,f
i
表示所述数据区段在所述固件文件中的偏移首地址,l
i
表示所述数据区段在所述固件文件中的偏移末地址,i表示所述f
i
和所述l
i
的所述偏移中间地址。4.根据权利要求3所述的基于熵的固件加密检测方法,其特征在于,所述采用二元数组机制将所述信息熵和所述偏移中间地址相结合用于定义每个所述数据区段的熵值属性包括:定义所述预设字节长度的数据区段为R
i
,计算获取所述数据区段的信息熵为H(R
i
);定义所述数据区段在所述固件文件中的偏移中间地址为i;所述采用二元数组机制将所述信息熵和所述偏移中间地址相结合,表示为<H(R
i
),i>,用于定义每个所述数据区段的熵值属性。5.根据权利要求4所述的基于熵的固件加密检测方法,其特征在于,所述基于所述每个所述数据区段的熵值属性构建包含所有所述数据区段的熵值属性集合,并建立所述熵值属性的数据集包括:采集所述每个所述数据区段的熵值属性<H(R
i
),i>构建包含所有所述数据区段的熵值
属性集合SH(R);基于所述熵值属性集合SH(R)中的每个元素,以i为横坐标,R
i
为纵坐标,构建所述熵值属性的数...

【专利技术属性】
技术研发人员:张宸赫
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1