首页> 中国专利> 基于可信平台的嵌入式设备软件远程审计方法及装置

基于可信平台的嵌入式设备软件远程审计方法及装置

摘要

本申请公开了一种基于可信平台的嵌入式设备软件远程审计方法及装置,其中,方法包括:通过向可信平台模块发送嵌入式设备软件的检测请求,获取嵌入式设备软件的检测信息;提取检测信息中嵌入式设备软件的特征,利用预先训练的联邦检测器判断嵌入式设备软件是否为恶意软件;在嵌入式设备软件为恶意软件时,根据嵌入式设备软件的安全类型验证嵌入式设备软件的安全性,从而为嵌入式设备的软件远程审计提供安全保障,防止其遭受伪造、重放攻击、伪装攻击、完整性破坏等攻击。由此,解决了物联网设备计算资源少、抵御恶意软件攻击能力差、检测解决方案部署困难以及嵌入式设备种类众多难以管理等问题。

著录项

  • 公开/公告号CN114925361A

    专利类型发明专利

  • 公开/公告日2022-08-19

    原文格式PDF

  • 申请/专利权人 北京航空航天大学;

    申请/专利号CN202210487820.2

  • 申请日2022-05-06

  • 分类号G06F21/56(2013.01);H04L9/40(2022.01);H04L67/12(2022.01);

  • 代理机构北京清亦华知识产权代理事务所(普通合伙) 11201;

  • 代理人赵丽婷

  • 地址 100191 北京市海淀区学院路37号

  • 入库时间 2023-06-19 16:25:24

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-04-18

    授权

    发明专利权授予

  • 2022-09-06

    实质审查的生效 IPC(主分类):G06F21/56 专利申请号:2022104878202 申请日:20220506

    实质审查的生效

说明书

技术领域

本申请涉及信息安全技术领域,特别涉及一种基于可信平台的嵌入式设备软件远程审计方法及装置。

背景技术

随着物联网技术的快速发展,嵌入式设备的应用越来越广泛,各个行业对嵌入式设备的依赖程度越来越高,然而,目前针对物联网设备的攻击也越来越多,对嵌入式设备的广泛使用带来了巨大的安全风险,其安全性也日益受到重视。

传统的恶意软件识别方案很难检测经过伪装或添加反检测措施的恶意软件。混合恶意软件检测方案HyMalD采用双向长短时记忆(Bi-LSTM)和空间金字塔池网络(SPP-Net),可以减少混乱恶意软件感染造成的损失,检测准确率可达92.5%。利用全局和局部特征有效检测恶意软件变体,混合深度生成模型可以将检测精度提高到97%,在原来的基础上增加了4%。混合深度生成模型将恶意软件转换为图像来表示全局特征,使用二进制代码序列来提取局部特征。将提取的两个特征串联起来,并输入到恶意软件检测训练器中。然而,该方案需要对代表全局特征的图像进行变换,这在当前系统中是无法实现的。现有的恶意软件识别模型通常可以达到较高的精度,但很难获得训练样本,不适合在嵌入式设备上获取特征。

如果嵌入式设备运行恶意软件,很可能会迅速传播病毒,并对其他嵌入式节点甚至整个系统构成重大安全威胁。如Wannacry的蠕虫病毒可以通过端口漏洞迅速广泛传播。使用部署了HPC(HardwarePerfomranceCounters,硬件性能计数器)的恶意软件检测器(HaRM)来检测恶意软件和良性应用程序的可以在一定程度上保护嵌入式设备的安全性。通过HPC的检测,嵌入式设备可以在资源开销较小的情况下提取软件的特征,并将其传输到后端服务器进行识别,准确率可达到92.21%。然而,在嵌入式设备与服务器之间的通信过程中,攻击者仍然可以进行攻击,这可能会破坏服务器接收到的数据的完整性,因此无法判断它是恶意软件还是良性软件。

嵌入式设备通常是针对特定场景设计的,本身具有结构可变的特点,因此具有特定结构的嵌入式设备需要单独设计安全模型,很难使用单一的安全模型进行防护。恶意代码检测是一种常规的安全保护方法,已经应用于服务器和PC。将恶意代码检测技术应用于嵌入式设备,来判断嵌入式设备是否受到恶意软件的控制,可以有效提高了嵌入式系统的安全性。

但是现有的恶意代码检测模型难以在嵌入式设备上进行部署,攻击者发送攻击导致部分节点的错误运行,如果不能及时识别并阻止,可能会威胁整个系统的安全性。同时,目前针对恶意软件检测的方案大多基于神经网络学习方法,需要大量的训练样本在服务器进行训练,而嵌入式设备本身计算资源和运行能力极其有限,没有足够的计算资源运行神经网络模型,所以可以考虑在后端服务器上独立运行检测模型的部分,后端服务器的检测结果将返回给嵌入式设备的管理中心。虽然这种方法可以解决嵌入式设备计算资源不足的问题,但嵌入式设备本身搭载的操作系统可能各不相同,难以进行统一有效地管理。如果将针对于嵌入式设备的软件检测放在服务器端进行,就需要增加额外的通信过程。在通信的过程中,现有的检测方案可能会遇到完整性破坏、伪造攻击、重放攻击、伪装攻击等安全威胁。

为了解决嵌入式设备和服务器之间通信不安全的问题,可以使用远程审计方案。远程认证(Remote Authentication,RA)将确保通信的安全性。它将计算和验证的负担外包给服务器,以减少其在嵌入式设备上的实现。但是,由于嵌入式设备数量庞大,恶意软件检测器通过远程审计的反馈效率很低。在云计算中,可以添加安全模块来审计数据并将数据验证过程委托给第三方进行审计。这种模式的优点是审计开销较小,可以审计计算资源不足的嵌入式设备。其中签名是一项非常耗时的操作,通过改进签名算法的步骤,可以提前进行一些计算,使TPM(Trusted Platform Module,可信平台模块)上的操作只需幂运算一次,可以大大减少审计过程中的签名时间。该审计方案提高了签名算法的效率,但在远程审计过程中仍然存在安全威胁。如果攻击者可以提前获得上一次审核过程的签名,则可以发起重放攻击。

为了满足远程审计的要求,需要增加一个安全模块,以确保通信过程的安全。TPM是一种合适的解决方案。TPM是TCG(Trusted Computing Group,可信计算组织)提出的一套安全的密码处理器标准,可以在计算机或其他设备上实现可信计算的功能。目前,TPM规范已更新为第二代。通过TPM,可以实现通信过程中所需的身份认证和完整性验证等功能。

综上所述,嵌入式设备的大规模应用和不完善的安全措施带来了巨大的安全风险。现有的恶意软件检测方案对训练样本要求严格,难以直接部署在嵌入式设备中,需要通过后端服务器进行检测。在通信过程中,现有的远程审计方案不能直接应用于嵌入式设备或不能满足安全需求,亟待解决。

发明内容

本申请提供一种基于可信平台的嵌入式设备软件远程审计方法及装置,以解决物联网设备计算资源少、抵御恶意软件攻击能力差、检测解决方案部署困难以及嵌入式设备种类众多难以管理等问题。

本申请第一方面实施例提供一种基于可信平台的嵌入式设备软件远程审计方法,包括以下步骤:向可信平台模块发送嵌入式设备软件的检测请求,获取所述嵌入式设备软件的检测信息;提取所述检测信息中所述嵌入式设备软件的特征,利用预先训练的联邦检测器判断所述嵌入式设备软件是否为恶意软件;在所述嵌入式设备软件为恶意软件时,根据所述嵌入式设备软件的安全类型验证所述嵌入式设备软件的安全性。

可选地,在本申请的一个实施例中,所述向可信平台模块发送嵌入式设备软件的检测请求之前,还包括:将所述可信平台模块接入嵌入式设备,通过所述可信平台模块的摘要生成算法计算静止状态下的所述嵌入式设备软件的第一哈希值,将所述第一哈希值存储在所述可信平台模块的可信存储区上。

可选地,在本申请的一个实施例中,所述向可信平台模块发送嵌入式设备软件的检测请求,获取所述嵌入式设备软件的检测信息,包括:向所述可信平台模块发送检测请求,请求发送所述嵌入式设备软件和当前检测次数,将所述可信平台模块接收到的检测请求转发给所述嵌入式设备;所述嵌入式设备接受到检测请求后,将所述嵌入式设备软件发送给所述可信平台模块,所述可信平台模块利用摘要生成算法计算所述嵌入式设备软件的第二哈希值;将所述第一哈希值与所述第二哈希值进行对比,在所述第一哈希值等于所述第二哈希值时,利用所述可信平台模块的私钥对所述第二哈希值和当前检测次数进行签名,得到第一签名消息;所述可信平台模块将所述嵌入式设备软件、所述第一签名消息、所述第二哈希值一起发送给检测服务器,通过签名验证算法,利用所述可信平台模块的公钥对所述第一签名消息进行验证得到所述嵌入式设备软件的第三哈希值,将所述第三哈希值与所述第二哈希值进行对比,在所述第三哈希值等于所述第二哈希值时,所述当前检测次数加一。

可选地,在本申请的一个实施例中,在利用预先训练的联邦检测器判断所述嵌入式设备软件是否为恶意软件之前,还包括:通过联邦学习方法对恶意软件检测模型进行训练,并结合对抗样本对恶意软件检测模型进行重训练;在恶意样本中心服务器和多个用户主机上分别训练所述恶意软件检测模型,整合多个并行分布式训练器的参数信息,在服务器端汇聚整合得到联邦检测器;设计所述联邦检测器的网络结构和学习策略,利用具有二进制交叉熵损失的多层前馈结构和初始学习率为Adam的优化函数对所述联邦检测器进行优化,得到训练好的联邦检测器。

可选地,在本申请的一个实施例中,所述在所述嵌入式设备软件为恶意软件时,根据所述嵌入式设备软件的安全类型验证所述嵌入式设备软件的安全性,包括:所述嵌入式设备软件的安全类型为完整性破坏时,攻击者发送部分良性软件进行检测,在所述可信平台模块进行验证时,如果部分良性软件的哈希值与所述第一哈希值不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题;所述嵌入式设备软件的安全类型为伪造攻击时,攻击者截取通信内容伪造良性软件替换所述嵌入式设备软件,利用所述可信平台模块的私钥对替换后的所述嵌入式设备软件的哈希值和当前检测次数进行签名,得到第二签名消息,所述可信平台模块将所述嵌入式设备软件、所述第一签名消息、所述第二哈希值一起发送给检测服务器,通过签名验证算法,利用所述可信平台模块的公钥对所述第二签名消息进行验证得到替换后的所述嵌入式设备软件的第四哈希值,如果所述第四哈希值与所述第三哈希值不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题;所述嵌入式设备软件的安全类型为重放攻击时,攻击者预先截获一个嵌入式设备的通信数据,对嵌入式设备进行替换,并在当前检测次数为预设次数时向服务器发送预先存好的第三签名消息,通过签名验证算法进行验证,若当前检测次数与所述预设次数不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题;所述嵌入式设备软件的安全类型为假冒攻击时,攻击者伪装成一个良性嵌入式设备进行检测,在所述可信平台模块进行验证时,若伪装的良性嵌入式设备的哈希值与所述第一哈希值不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题。

本申请第二方面实施例提供一种基于可信平台的嵌入式设备软件远程审计装置,包括:获取模块,用于向可信平台模块发送嵌入式设备软件的检测请求,获取所述嵌入式设备软件的检测信息;提取模块,用于提取所述检测信息中所述嵌入式设备软件的特征,利用预先训练的联邦检测器判断所述嵌入式设备软件是否为恶意软件;验证模块,用于在所述嵌入式设备软件为恶意软件时,根据所述嵌入式设备软件的安全类型验证所述嵌入式设备软件的安全性。

可选地,在本申请的一个实施例中,还包括:存储模块,用于向所述可信平台模块发送嵌入式设备软件的检测请求之前,将所述可信平台模块接入嵌入式设备,通过所述可信平台模块的摘要生成算法计算静止状态下的所述嵌入式设备软件的第一哈希值,将所述第一哈希值存储在所述可信平台模块的可信存储区上。

可选地,在本申请的一个实施例中,所述获取模块,包括:转发单元,用于向所述可信平台模块发送检测请求,请求发送所述嵌入式设备软件和当前检测次数,将所述可信平台模块接收到的检测请求转发给所述嵌入式设备;计算单元,用于所述嵌入式设备接受到检测请求后,将所述嵌入式设备软件发送给所述可信平台模块,所述可信平台模块利用摘要生成算法计算所述嵌入式设备软件的第二哈希值;第一对比单元,用于将所述第一哈希值与所述第二哈希值进行对比,在所述第一哈希值等于所述第二哈希值时,利用所述可信平台模块的私钥对所述第二哈希值和当前检测次数进行签名,得到第一签名消息;第二对比单元,用于通过签名验证算法,利用所述可信平台模块的公钥对所述第一签名消息进行验证得到所述嵌入式设备软件的第三哈希值,将所述第三哈希值与所述第二哈希值进行对比,在所述第三哈希值等于所述第二哈希值时,所述当前检测次数加一。

可选地,在本申请的一个实施例中,在利用预先训练的联邦检测器判断所述嵌入式设备软件是否为恶意软件之前,还包括:训练模块,用于通过联邦学习方法对恶意软件检测模型进行训练,并结合对抗样本对恶意软件检测模型进行重训练;整合模块,用于在恶意样本中心服务器和多个用户主机上分别训练所述恶意软件检测模型,整合多个并行分布式训练器的参数信息,在服务器端汇聚整合得到联邦检测器;优化模块,用于设计所述联邦检测器的网络结构和学习策略,利用具有二进制交叉熵损失的多层前馈结构和初始学习率为Adam的优化函数对所述联邦检测器进行优化,得到训练好的联邦检测器。

可选地,在本申请的一个实施例中,所述验证模块,包括:第一判断单元,用于所述嵌入式设备软件的安全类型为完整性破坏时,攻击者发送部分良性软件进行检测,在所述可信平台模块进行验证时,如果部分良性软件的哈希值与所述第一哈希值不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题;第二判断单元,用于所述嵌入式设备软件的安全类型为伪造攻击时,攻击者截取通信内容伪造良性软件替换所述嵌入式设备软件,利用所述可信平台模块的私钥对替换后的所述嵌入式设备软件的哈希值和当前检测次数进行签名,得到第二签名消息,所述可信平台模块将所述嵌入式设备软件、所述第一签名消息、所述第二哈希值一起发送给检测服务器,通过签名验证算法,利用所述可信平台模块的公钥对所述第二签名消息进行验证得到替换后的所述嵌入式设备软件的第四哈希值,如果所述第四哈希值与所述第三哈希值不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题;第三判断单元,用于所述嵌入式设备软件的安全类型为重放攻击时,攻击者预先截获一个嵌入式设备的通信数据,对嵌入式设备进行替换,并在当前检测次数为预设次数时向服务器发送预先存好的第三签名消息,通过签名验证算法进行验证,若当前检测次数与所述预设次数不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题;第四判断单元,用于所述嵌入式设备软件的安全类型为假冒攻击时,攻击者伪装成一个良性嵌入式设备进行检测,在所述可信平台模块进行验证时,若伪装的良性嵌入式设备的哈希值与所述第一哈希值不相等,则验证不通过,所述可信平台模块确定所述嵌入式设备软件存在安全问题。

由此,本申请的实施例具有以下有益效果:

1)本申请实施例采用联邦学习方法,经过多轮样本生成和联邦学习检测器的再训练,联邦学习检测器的鲁棒性不断提高,能够有效识别出真正的恶意样本。

2)有效地防止攻击者进行的完整性破坏、伪装、重放攻击、假冒等攻击行为,为嵌入式设备的软件审计提供了安全保障。

3)本申请实施例通过提取嵌入式设备软件的实时可信度,并将其发送到后端联邦学习检测服务器进行处理,解决了物联网设备无法检测恶意软件行为的问题。

由此,解决了物联网设备计算资源少、抵御恶意软件攻击能力差、检测解决方案部署困难以及嵌入式设备种类众多难以管理等技术问题。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为根据本申请实施例提供的一种基于可信平台的嵌入式设备软件远程审计方法的流程图;

图2为根据本申请的一个实施例提供的一种基于可信平台的嵌入式设备软件远程审计方法的体系结构示意图;

图3为根据本申请的一个实施例提供的一种基于对策学习和联邦学习的恶意软件识别系统结构示意图;

图4为根据本申请的一个实施例提供的一种联邦学习和任务定义结构示意图;

图5为根据本申请的一个实施例提供的一种基于可信平台的嵌入式设备软件远程审计的执行逻辑示意图;

图6为根据本申请实施例的基于可信平台的嵌入式设备软件远程审计装置的示例图;

附图标记说明:获取模块-100、提取模块-200、验证模块-300。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。

下面参考附图描述本申请实施例的基于可信平台的嵌入式设备软件远程审计方法及装置。针对上述背景技术中提到的问题,本申请提供了一种基于可信平台的嵌入式设备软件远程审计方法,在该方法中,通过向可信平台模块发送嵌入式设备软件的检测请求,获取嵌入式设备软件的检测信息;提取检测信息中嵌入式设备软件的特征,利用预先训练的联邦检测器判断嵌入式设备软件是否为恶意软件;在嵌入式设备软件为恶意软件时,根据嵌入式设备软件的安全类型验证嵌入式设备软件的安全性,从而为嵌入式设备的软件远程审计提供安全保障,防止其遭受伪造、重放攻击、伪装攻击、完整性破坏等攻击。由此,解决了物联网设备计算资源少、抵御恶意软件攻击能力差、检测解决方案部署困难以及嵌入式设备种类众多难以管理等问题。

具体而言,图1为本申请实施例所提供的一种基于可信平台的嵌入式设备软件远程审计方法的流程图。

如图1所示,该基于可信平台的嵌入式设备软件远程审计方法包括以下步骤:

在步骤S101中,向可信平台模块发送嵌入式设备软件的检测请求,获取嵌入式设备软件的检测信息。

本领域技术人员应该理解到的是,在本申请的实施例中,为获取嵌入式设备软件的检测信息,服务器需向可信平台模块发送嵌入式设备软件的检测请求,其体系结构如图2所示,可信平台模块对嵌入式设备发送的数据进行身份验证。服务器在收到签名后可以对其进行验证,从而确保数据源的可靠性。

需要注意的是,在本申请实施例中,服务器并非直接向可信平台模块发送嵌入式设备软件的检测请求,在其发送检测请求前,可信平台模块还需进行一些预处理操作,具体操作过程下述进行详细介绍。

可选地,在本申请的一个实施例中,向可信平台模块发送嵌入式设备软件的检测请求之前,还包括:将可信平台模块接入嵌入式设备,通过可信平台模块的摘要生成算法计算静止状态下的嵌入式设备软件的第一哈希值,将第一哈希值存储在可信平台模块的可信存储区上。

具体地,在本申请实施例中,首先将TPM芯片通过QSPI接口接入嵌入式设备,TPM和服务器通过以太网口进行通信。静止状态下运行在嵌入式设备的软件表示为SOFT,TPM使用摘要生成算法,得到该软件的摘要,即第一哈希值H

可选地,在本申请的一个实施例中,向可信平台模块发送嵌入式设备软件的检测请求,获取嵌入式设备软件的检测信息,包括:向可信平台模块发送检测请求,请求发送嵌入式设备软件和当前检测次数,将可信平台模块接收到的检测请求转发给嵌入式设备;嵌入式设备接受到检测请求后,将嵌入式设备软件发送给可信平台模块,可信平台模块利用摘要生成算法计算嵌入式设备软件的第二哈希值;将第一哈希值与第二哈希值进行对比,在第一哈希值等于第二哈希值时,利用可信平台模块的私钥对第二哈希值和当前检测次数进行签名,得到第一签名消息;通过签名验证算法,利用可信平台模块的公钥对第一签名消息进行验证得到嵌入式设备软件的第三哈希值,将第三哈希值与第二哈希值进行对比,在第三哈希值等于第二哈希值时,当前检测次数加一。

具体地,本申请实施例在基于可信平台模块,获取嵌入式设备软件的检测信息的步骤如下所述:

1)服务器通过以太网口向TPM发送检测请求,要求发送嵌入式设备运行的软件SOFT和当前检测次数counter给服务器。TPM将服务器的检测请求通过QSPI接口转发给嵌入式设备。

2)嵌入式设备接受到请求以后,将相关的软件代码SOFT'通过QSPI接口发送给TPM,TPM接收到SOFT'后使用摘要生成算法,得到该软件的摘要,即第二哈希值H

3)TPM从可信存储区中读取预先存储的H

4)检测服务器接收到消息M后,使用签名验证算法,利用TPM的公钥PU

可以理解的是,该轻量级TPM数据可信采集操作负责协助完成远程审计,具体的执行逻辑如图3所示。TPM可以生成非对称密钥及其证书,用于身份验证,并且其包含数据加密功能,可以通过摘要生成算法生成软件的哈希值,并通过验证哈希值是否正确来判断完整性是否受损。通过上述签名过程,TPM对嵌入式设备发送的数据进行身份验证,使得服务器在收到签名后可以对其进行验证,使得TPM为嵌入式设备和服务器之间的通信提供安全保障,从而确保数据源的可靠性。

在步骤S102中,提取检测信息中嵌入式设备软件的特征,利用预先训练的联邦检测器判断嵌入式设备软件是否为恶意软件。

在步骤S103中,在嵌入式设备软件为恶意软件时,根据嵌入式设备软件的安全类型验证嵌入式设备软件的安全性。

在上述TPM对嵌入式设备发送的数据进行身份验证,获取嵌入式设备软件的检测信息,检测服务器确认TPM发送的数据有效后,本申请实施例将使用联邦检测器对上述检测信息进行测试,提取上述检测信息中嵌入式设备软件的特征,并判断当前软件是否为恶意软件。

需要注意的是,为了有效识别出真正的恶意软件,本申请实施例在判断嵌入式设备软件是否为恶意软件之前,还需对联邦检测器进行训练。

可选地,在本申请的一个实施例中,在利用预先训练的联邦检测器判断嵌入式设备软件是否为恶意软件之前,还包括:通过联邦学习方法对恶意软件检测模型进行训练,并结合对抗样本对恶意软件检测模型进行重训练;在恶意样本中心服务器和多个用户主机上分别训练恶意软件检测模型,整合多个并行分布式训练器的参数信息,在服务器端汇聚整合得到联邦检测器;设计联邦检测器的网络结构和学习策略,利用具有二进制交叉熵损失的多层前馈结构和初始学习率为Adam的优化函数对联邦检测器进行优化,得到训练好的联邦检测器。

具体地,本申请实施例训练的联邦检测器的过程如下所述:

1)首先,恶意软件检测器,即为一个前馈的深度神经网络模型,需要对模型进行训练,该模型使用联邦学习框架(federated learning framework)在每台服务器上集中训练恶意样本,分布式训练良性样本。由于数据集中恶意软件的特征重叠更多,样本ID重叠更少,使用横向的联邦学习策略。

2)在联邦服务器端集成多个并行分布式训练器的参数信息,汇聚整合得到联邦检测器。通过合理设计网络结构和学习策略,即使用具有二进制交叉熵损失的多层前馈结构和初始学习率为10

3)将联邦学习系统部署在分布式环境中,配置定义了分布式训练的节点信息,包括服务器和训练器的数量,及各训练器的IP地址、端口等。

4)联邦检测器在云端或第三方集群中运行,用于聚合和处理每轮训练中来自联邦训练器的参数,并将其更新和重新分发到下一轮训练的训练器中,其中,联邦检测器结构如图4所示。

5)多个训练器并行训练本地数据。

6)调度器负责在每轮培训前随机选择一部分服务器加入训练,并在服务器和中心服务器之间传递参数。

7)采用paddleFL联邦学习方法对检测器进行训练,在检测服务器上采集恶意样本,多台服务器采集局部良性样本进行分布式训练,如图5所示。在再训练中,上一轮生成的恶意软件样本被包括在训练集中,以对检测器进行再训练。经过多轮样本生成和检测器再训练,检测器的鲁棒性不断提高,最终能够有效识别出真正的恶意样本。

通过上述采用联邦学习方法对模型进行训练,并且结合对抗样本对模型进行再训练后,其准确度得到提高。本申请实施例利用TPM提取嵌入式设备的软件并发送到后端服务器,通过上述训练好的联邦检测器对其进行分析检测。

然而,需要注意的是,将上述针对于嵌入式设备的软件检测放在服务器端进行,就需要增加额外的通信过程。在通信的过程中,可能会遇到完整性破坏、伪造攻击、重放攻击、伪装攻击等安全威胁。为实现整个远程审计过程的安全性,本申请实施例根据嵌入式设备软件的安全类型验证嵌入式设备软件的安全性。

可选地,在本申请的一个实施例中,在嵌入式设备软件为恶意软件时,根据嵌入式设备软件的安全类型验证嵌入式设备软件的安全性,包括:嵌入式设备软件的安全类型为完整性破坏时,攻击者发送部分良性软件进行检测,在可信平台模块进行验证时,如果部分良性软件的哈希值与第一哈希值不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题;嵌入式设备软件的安全类型为伪造攻击时,攻击者截取通信内容伪造良性软件替换嵌入式设备软件,利用可信平台模块的私钥对替换后的嵌入式设备软件的哈希值和当前检测次数进行签名,得到第二签名消息,可信平台模块将嵌入式设备软件、第一签名消息、第二哈希值一起发送给检测服务器,通过签名验证算法,利用可信平台模块的公钥对第二签名消息进行验证得到替换后的嵌入式设备软件的第四哈希值,如果第四哈希值与第三哈希值不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题;嵌入式设备软件的安全类型为重放攻击时,攻击者预先截获一个嵌入式设备的通信数据,对嵌入式设备进行替换,并在当前检测次数为预设次数时向服务器发送预先存好的第三签名消息,通过签名验证算法进行验证,若当前检测次数与预设次数不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题;嵌入式设备软件的安全类型为假冒攻击时,攻击者伪装成一个良性嵌入式设备进行检测,在可信平台模块进行验证时,若伪装的良性嵌入式设备的哈希值与第一哈希值不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题。

具体地,在本申请的实施例中,验证嵌入式设备软件的安全性的具体步骤如下所述:

1)对于完整性破坏,如果攻击者发送部分代码即自身的良性软件部分SOFT

2)对于伪造攻击,如果攻击者能够截取通信内容,伪造为一个良性软件。将其中的SOFT'换成SOFT”,将H

3)对于重放攻击,如果攻击者预先截获了一个设备的通信数据

4)对于假冒攻击,如果攻击者伪装成了一个良性设备SOFT

综上所述,本申请实施例能够有效地防止攻击者进行的完整性破坏、伪装、重放攻击、假冒等攻击行为,为嵌入式设备的软件审计提供了安全保障。

根据本申请实施例提出的基于可信平台的嵌入式设备软件远程审计方法,通过向可信平台模块发送嵌入式设备软件的检测请求,获取嵌入式设备软件的检测信息;提取检测信息中嵌入式设备软件的特征,利用预先训练的联邦检测器判断嵌入式设备软件是否为恶意软件;在嵌入式设备软件为恶意软件时,根据嵌入式设备软件的安全类型验证嵌入式设备软件的安全性,从而为嵌入式设备的软件远程审计提供安全保障,防止其遭受伪造、重放攻击、伪装攻击、完整性破坏等攻击,且在嵌入式设备远程审计领域的效率和健壮性完全满足了政府、电信、医疗、金融和能源企业的安全需求,具有广阔的应用前景和良好的推广价值。

其次参照附图描述根据本申请实施例提出的基于可信平台的嵌入式设备软件远程审计装置。

图6是本申请实施例的基于可信平台的嵌入式设备软件远程审计装置的方框示意图。

如图6所示,该基于可信平台的嵌入式设备软件远程审计装置10包括:获取模块100、提取模块200以及验证模块300。

其中,获取模块100,用于向可信平台模块发送嵌入式设备软件的检测请求,获取嵌入式设备软件的检测信息;提取模块200,用于提取检测信息中嵌入式设备软件的特征,利用预先训练的联邦检测器判断嵌入式设备软件是否为恶意软件;验证模块300,用于在嵌入式设备软件为恶意软件时,根据嵌入式设备软件的安全类型验证嵌入式设备软件的安全性。

可选地,在本申请的一个实施例中,基于可信平台的嵌入式设备软件远程审计装置10还包括:存储模块,用于向可信平台模块发送嵌入式设备软件的检测请求之前,将可信平台模块接入嵌入式设备,通过可信平台模块的摘要生成算法计算静止状态下的嵌入式设备软件的第一哈希值,将第一哈希值存储在可信平台模块的可信存储区上。

可选地,在本申请的一个实施例中,获取模块100,包括:转发单元,用于向可信平台模块发送检测请求,请求发送嵌入式设备软件和当前检测次数,将可信平台模块接收到的检测请求转发给嵌入式设备;计算单元,用于嵌入式设备接受到检测请求后,将嵌入式设备软件发送给可信平台模块,可信平台模块利用摘要生成算法计算嵌入式设备软件的第二哈希值;第一对比单元,用于将第一哈希值与第二哈希值进行对比,在第一哈希值等于第二哈希值时,利用可信平台模块的私钥对第二哈希值和当前检测次数进行签名,得到第一签名消息;第二对比单元,用于通过签名验证算法,利用可信平台模块的公钥对第一签名消息进行验证得到嵌入式设备软件的第三哈希值,将第三哈希值与第二哈希值进行对比,在第三哈希值等于第二哈希值时,当前检测次数加一。

可选地,在本申请的一个实施例中,在利用预先训练的联邦检测器判断嵌入式设备软件是否为恶意软件之前,还包括:训练模块,用于通过联邦学习方法对恶意软件检测模型进行训练,并结合对抗样本对恶意软件检测模型进行重训练;整合模块,用于在恶意样本中心服务器和多个用户主机上分别训练恶意软件检测模型,整合多个并行分布式训练器的参数信息,在服务器端汇聚整合得到联邦检测器;优化模块,用于设计联邦检测器的网络结构和学习策略,利用具有二进制交叉熵损失的多层前馈结构和初始学习率为Adam的优化函数对联邦检测器进行优化,得到训练好的联邦检测器。

可选地,在本申请的一个实施例中,验证模块300,包括:第一判断单元,用于嵌入式设备软件的安全类型为完整性破坏时,攻击者发送部分良性软件进行检测,在可信平台模块进行验证时,如果部分良性软件的哈希值与第一哈希值不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题;第二判断单元,用于嵌入式设备软件的安全类型为伪造攻击时,攻击者截取通信内容伪造良性软件替换嵌入式设备软件,利用可信平台模块的私钥对替换后的嵌入式设备软件的哈希值和当前检测次数进行签名,得到第二签名消息,可信平台模块将嵌入式设备软件、第一签名消息、第二哈希值一起发送给检测服务器,通过签名验证算法,利用可信平台模块的公钥对第二签名消息进行验证得到替换后的嵌入式设备软件的第四哈希值,如果第四哈希值与第三哈希值不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题;第三判断单元,用于嵌入式设备软件的安全类型为重放攻击时,攻击者预先截获一个嵌入式设备的通信数据,对嵌入式设备进行替换,并在当前检测次数为预设次数时向服务器发送预先存好的第三签名消息,通过签名验证算法进行验证,若当前检测次数与预设次数不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题;第四判断单元,用于嵌入式设备软件的安全类型为假冒攻击时,攻击者伪装成一个良性嵌入式设备进行检测,在可信平台模块进行验证时,若伪装的良性嵌入式设备的哈希值与第一哈希值不相等,则验证不通过,可信平台模块确定嵌入式设备软件存在安全问题。

需要说明的是,前述对基于可信平台的嵌入式设备软件远程审计方法实施例的解释说明也适用于该实施例的基于可信平台的嵌入式设备软件远程审计装置,此处不再赘述。

根据本申请实施例提出的基于可信平台的嵌入式设备软件远程审计装置,构建了嵌入式设备、可信平台模块和检测服务器的安全体系结构,其中,可信平台模块芯片为嵌入式设备提供了身份认证、数据加密和完整性校验等安全功能。本申请实施例利用可信平台模块对嵌入式设备的软件进行测量和采集,并利用联邦学习方法对模型进行训练,结合对抗样本对模型进行重训练,以提高精度,并通过后端检测服务器进行识别和反馈,确保嵌入式设备与服务器之间通信过程的安全,实现整个远程审计过程的安全性。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或N个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“N个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更N个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号