需要保护物联网(IoT)免受各种形式的滥用。这些不仅包括金融欺诈和知识产权盗窃等熟悉的威胁,还包括对实物资产的破坏。预计未来几年加入物联网的数十亿连接设备中的许多将与交通信号或街道照明,工业控制,发电,智能电网管理,家庭能源和安全等重要流程的安全机制等系统相关联。或连接的汽车。攻击者可能会试图禁用或接管此类设备,可能会造成广泛的破坏和不便,或者通过造成尴尬,声誉损害甚至身体伤害来攻击特定个人或组织。这些漏洞可能仅仅是出于娱乐,个人原因,商业利益,或出于政治目的和/或恐怖主义而发起。
物联网设备的安全威胁
物联网设备旨在自主运行。许多人长时间无人看管,有时甚至是整个工作生涯。网络连接使设备容易受到远程攻击,远程攻击可以从几乎任何地理位置快速启动,而不必克服诸如围栏,锁定的机箱或保安等物理障碍。可以将攻击定向到设备本身,或将其用作访问连接到同一网络的其他资产的手段,例如包含帐户持有者信息或知识产权的数据存储。
On另一方面,物联网端点通常需要是简单,低成本,低功耗的设备,旨在使用最少的资源完成其预期的任务。因此,实现复杂安全性所需的处理能力和能量不可用。与诸如台式计算机之类的机器的情况不同,通常不存在用于输入诸如用户名和密码之类的凭证的人,作为允许设备启动并建立连接的认证。但是,该设备必须能够抵御各种类型的攻击,并自我验证并自动向网络上的其他设备提供其凭据。
如果设备无法执行这些功能,攻击者可能能够删除或禁用应用程序软件,更改代码或用流氓软件替换合法应用程序。或者,他们可能会试图窃听数据交换。需要采用一系列安全原则和技术来帮助克服这些威胁,但所有这些都需要在小型且资源受限的嵌入式系统中使用。除了已建立的安全实践,例如最小化网络设备的访问权限,适当的防火墙和流量监控;这些包括软件的数字签名,使用安全密钥的数据加密,以及为连接的设备建立强大的身份。
验证软件的真实性
数字签名提供了一种验证软件以验证其来源的方法并防止未经授权的改动。软件发行商可以独立签署软件,也可以在提供签名实用程序,证书和密钥管理等服务的第三方证书颁发机构(CA)的支持下签名。
为了对软件进行数字签名,发布者使用散列算法创建代码的散列。哈希仅在一个方向上工作,这可以防止黑客对流程进行逆向工程,从伪造的代码中生成相同的哈希。然后使用分配给发布者的私钥加密哈希。代码,其加密的哈希值和发布者的签名证书一起分发。
最终用户使用发布者的公钥解密哈希,该公钥作为签名证书的一部分包含在内,并对接收到的代码进行哈希处理使用发布者选择的散列算法。如果两个哈希值匹配,则可以假定代码是真实的并且未经更改。图1说明了用于验证代码真实性的散列和比较过程。
图1:证书颁发机构管理证书并提供签名软件的工具。/p>
数字签名允许物联网设备在启动时验证软件的真实性和完整性,从而实现安全启动:设备将仅加载由授权发布者签名的真正未经更改的软件,从而创建信任基础。系统还可以验证数字签名的软件,例如通过网络接收的更新或补丁。
数据加密
使用公钥和私钥的组合进行加密还可以防止窃听者从截获的数据传输中收集情报。公钥和私钥系统为发送加密数据和防止密钥拦截的挑战提供了解决方案。接收设备具有其自己的私钥,其在制造时被牢固地嵌入。同时,使用单向进程从私钥导出公钥,该进程防止在公共密钥被截获时私钥被泄露。当发送设备向收件人发送数据时,它使用该收件人的公钥来加密数据。这种加密数据可以安全地通过网络传输,并且只能使用安全存储在接收端的私钥解密。图2显示了在通过开放信道传输时密钥如何用于保证信息安全。
公钥基础结构(PKI)由处理密钥生成和分发的独立第三方组织维护,并将公钥绑定到各自用户的身份。
图2:使用公钥和私钥进行数据加密和解密。
维护强身份
物联网设备还需要能够在连接到网络时进行身份验证。这相当于输入用户名和密码以手动登录到在线帐户。
设备需要一个高效的安全处理器来存储其身份并处理身份验证,并存储公共和私有加密密钥,以及存储密钥并运行散列算法以验证软件签名,以便能够验证软件签名。
可信平台模块(TPM)已发展为提供安全性用于密钥和数据存储以及执行安全算法的环境。这些设备包含运行安全操作系统的安全处理器,以及安全存储和其他资源,如随机数生成器和基于硬件的加密引擎(图3)。额外的安全电路可防止物理攻击。安全操作系统的细节是故意保密的,以防止潜在的黑客学习发起攻击所需的信息。 TPM通常用于商用级IT设备,如台式PC。另一方面,Atmel/Microchip AT97SC3205T等器件专为嵌入式应用而设计,可用于各种类型的物联网设备。
图3:Atmel AT97SC3205T嵌入式TPM集成了用于安全处理和密钥存储的资源。
AT97SC3205T符合可信计算组(TCG)TPM版本1.2规范。设备通常以合规模式交付,使制造商能够立即开始测试TPM。由于TPM嵌入到物联网设备中,因此应将其更改为实模式以永久设置标志,并允许生成唯一的私有和公共认可密钥(EK)对,以用于需要签署其他组件使用的数据的事务。认可密钥的私有部分在TPM内保密,其他组件使用公共部分来验证来自TPM的数据的真实性。生成EK对可能需要几秒钟。为简化制造并缩短设备初始化所需的时间,可根据需要以实模式交付设备。在这种情况下,EK对由Atmel预先生成。
TPM_Startup(ST_CLEAR)
传入的操作数和大小:
00 C1 00 00 00 0C 00 00 00 99 00 01
tag 2 Bytes,Offset 0:00 PM
paramSize 4 Bytes,Offset 2:00 00 00 0C
ordinal 4 Bytes,Offset 6:00 00 00 99
startupType 2 Bytes,Offset 10:00 01
<代码>
<代码>
<代码> TPM_Startup(ST_CLEAR)
<代码>传出操作数和大小:
00 C4 00 00 00 0A 00 00 00 00
tag 2 Bytes,Offset 0:00 C4
paramSize 4 Bytes,Offset 2:00 00 00 0A
returnCode 4 Bytes,Offset 6: 00 00 00 00 [TPM_SUCCESS]
清单1:初始化TPM的示例启动命令。
通过启动设备并发送TPM启动命令(清单1),TPM可以完全运行,以准备设备进行配置。配置涉及根据预期应用设置永久性标志。 Atmel发布了一个样本制造序列,用于设置TPM标志,如清单2所示。
合规模式:已清除
physicalPresenceHWEnable:False
physicalPresenceCMDEnable:True
physicalPresenceLifetimeLock:True
认可密钥对:生成
启用/禁用:禁用
激活/取消激活:激活直到下一次重置,
在下次上电或复位时被禁用。
物理存在:不存在
NV_Locked True
清单2:TPM标志设置示例。
示例中的物理存在设置旨在永久禁用硬件访问,并防止软件在无意或故意更改设置时失去对设备的控制。设置NV_Locked = True可防止未经授权访问用户可访问的非易失性存储器,只应在制造商不再需要访问非易失性存储器后设置。
结论
随着物联网的不断发展,对公众来说,它变得越来越现实,保护数十亿远程连接对象免受网络攻击的重要性日益明显。
可信平台模块(提供验证系统硬件和软件所需的安全资源的TPM是适用于嵌入式应用的小型低功耗设备。结合密钥管理和设备签名服务,他们可以提供高效的基于硬件的安全解决方案。
-
智能电网
+关注
关注
35文章
2920浏览量
116090 -
嵌入式
+关注
关注
5068文章
19013浏览量
303103 -
物联网
+关注
关注
2903文章
44253浏览量
371106
发布评论请先 登录
相关推荐
评论