关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 浅析新一代智能仪表面临的安全威胁及应对设计

浅析新一代智能仪表面临的安全威胁及应对设计

作者:时间:2012-05-18来源:网络收藏

目前全球电表安装数量接近20亿台,但只有不到10%的电表可以被认为是具有双向通信功能的“智能”仪表。随着下一代仪表的开发和安装,今后几年中这种情况将会得到改变。如果再将气表和水表的数量增加进去,那么仪表数量很容易翻倍至40亿台甚至更多。

本文引用地址:http://www.eepw.com.cn/article/201532.htm

下一代表会将网关引入家庭,允许公用事业公司和消费者管理能耗。公用事业公司可以建立动态定价以便鼓励消费者避开高峰负荷时间,而消费者也可以更好地跟踪使用情况,并决定何时不使用大功率电器以缩减能源帐单。有关使用情况的数据最初可以使用连接公用事业公司的PC或智能手机通过互联网进行查询,这样消费者就可以访问到离线使用数据,但未来消费者能够直接登录表获得实时能耗数据。保护这些数据的安全性是公用事业公司和电子仪表供应商面临的主要挑战之一。

表基础

虽然定义多少有些变化,但智能仪表无外乎是监视能量、煤气或水的消耗,然后一般是在LCD显示器上实时显示消耗数据。这些仪表一般都有一个通信接口 ——在美国,许多公司将ZigBee无线射频作为标准接口链接到公用事业公司,而在欧洲,许多公用事业组织一致同意使用电力线通信将仪表链接到公用事业公司。这些通信接口也必须具有低功耗特性,即使它们大部分时间处于“睡眠”或待机模式。

电力公司从固定费率帐单向计时帐单的转换催生了第二代电子仪表,它们具有足够的智能处理计时帐单,并支持自动抄表(AMR)。这种改变需要功能更强大的微处理器、无线射频、信息丰富的LCD和实时时钟(RTC)来配合模拟前端(AFE)。在这一代中的第一批仪表将使用多个芯片来实现所有功能。然而,随着公用事业公司努力降低成本,元件/仪表供应商将进一步提高元件集成度。

智能仪表的核心是低功耗微控制器加上模拟前端(AFE)。例如在电表中,先由AFE检测电流和电压,将检测得到的值转换成数字格式,然后将数字值发送到微控制器,再由微控制器处理这些数据、在本地内存中存储读数、并在小型LCD屏幕上显示相关信息。最后通过通信接口定期地向公用事业公司上传数据对于气表或水表来说,特别低的功耗是附加要求,因为这些仪表必须采用电池供电,而且电池必须持续工作几年时间。或者也可能使用某种类型的能量收集能源取代电池。

新一代智能仪临的安全威胁

在实现系统硬件时,设计师必须考虑各种系统入侵方式。一般有4种系统入侵方式,包括:

窃听——黑客可以监视所有电源和接口连接以及处理器在正常工作期间产生的任何其它电磁辐射的模拟特征。

软件攻击——普通处理器的通信接口可以被用来尝试利用在数据通信协议、加密算法和系统其它方面发现的安全漏洞。

故障产生——黑客可以通过改变时序和电压值形成异常工作状态,进而导致处理器产生故障,并进入允许访问系统安全部分的状态。另外,将芯片暴露在激 光下也可以借助电路天生的光电效应产生故障。一旦芯片被暴露,激光是最难对付的一种技术。然而,激光的使用可能更适合归到下一个覆盖入侵技术的种类, 因为这种入侵方式下芯片表面必须要暴露。

微探测——这种方法要求直接访问芯片表面,以便物理探针能够注入信号、捕获数据、操作寄存器并干扰系统操作,从而窃取安全信息。

微探测是一种入侵攻击方式,需要复杂的设备来访问片上电路,而且一般要求很长时间才能获得访问权,同时会破坏电路封装甚至电路本身。这也是一个相当昂贵的挑战,因此只有当回报值得前期反向工程芯片一部分或整个芯片的费用时才会用这种方式。

其它三种攻击方法都是非入侵式攻击,通常在最初解决方案之后可以很快再现,因为不要求对电路进行物理入侵。被攻击电路不会有物理损坏,攻击中使用的设备相对比较简单,成本也较低。

差分功耗分析(DPA)——一种流行的黑客方法,通过同时监视正常操作和故障期间操作情况,能让黑客判断软件的执行,因此电路设计应包括应对这类分析的各种对策。

DPA是Cryptography Research公司(现在是Rambus公司的一个事业部)研究人员发明的一种使用统计分析技术的攻击方法。它能帮助密码破译者通过分析电路功耗提取出 密钥,并获取各种IC和防篡改器件中嵌入的安全信息。一种被称为简单功耗分析(SPA)的方法则没那么复杂,它不使用统计运算技术。SPA 和DPA攻击都是非入侵式攻击。这些攻击无需目标电路知识就能自动执行。

智能仪表的安全性设计要求

本地攻击者能够通过物理方式访问仪表、网关或这些设备之间的连接。他们会试图透露或改变存储在仪表或网关中的使用数据,或者在城域网中的仪表和网关之间传送的数据。这种威胁模型假设本地攻击者的动机没有WAN攻击者强烈,因为本地攻击者的一次成功攻击只会影响一个网关。本地攻击者也有可能是试图不想付费使用服务的消费者。

位于WAN中的攻击者(WAN攻击者)可能试图破坏通过WAN传送的仪表数据和/或配置数据的机密性和/或完整性。WAN攻击者也可能试图通过WAN 操控基础设施中的一个设备(如仪表、网关或可控制的本地系统),对该设备进行破坏,或对相应的电网进行破坏(例如通过向外部实体发送伪造的仪表数据)。即使在共同标准(Common Criteria)概念中具有最大攻击可能性的攻击者(即具有大攻击可能性的WAN攻击者)决定了漏洞分析水平,但以下威胁定义承认本地攻击者的攻击可能性要比远程攻击者小。

在设计电子仪表时需要考虑几个关键因素——仪表功耗、成本和可靠性。功耗和成本都必须尽可能小,以确保数百万台仪表不会给电网增加任何显著的功率泄漏,与此同时,仪表成本必须要低,因为公用事业公司必须能够以适当的成本替代老的仪表。基于长工作寿命和自然特性/服务质量的原因,可靠性要求是显而易见的。另外,如前所述,这些仪表必须是安全的——数据加密必须是仪表设计的有机组成部分,要确保黑客无法收集到个人数据或访问公用事业网络。

设计智能仪表的公司必须要满足全球各个地区的不同法规要求以及每个市场要求的不同服务和功能。举例来说,美国的自动化仪表读取法规规定了读表频率、数据传输机制以及在任何点的仪表中必须及时存储的本地数据量。为防止数据丢失系统必须存储的数据量将影响智能仪表中需要的本地内存容量,而这又会影响到元件的选择和成本。

在德国,BSI为与广域网连接的通信网关定义了安全保护规范,并且强制使用安全模块。这种网关要达到共同标准(Common Criteria)EAL4+安全等级。VaultIC4xxx安全模块是业内多种安全解决方案之一,已经能够提供这种安全等级,因而能最大限度地减少网关制造商的认证工作量。

智能仪表设计的另外一个重要方面是防止仪表被篡改——全球有许多地方公用事业偷窃量占总使用量的比例十分显著。通过采用各种检测机制来检测仪表外壳是否被打开、是否有探头插入、附近是否有强大的磁场、或其它一些篡改方式,仪表可以向公用事业公司回传消息甚至锁住消费者,直到服务技术人员到现场判断触发篡改告警的真实事件。这种方法有助于公用事业公司实现更好的控制,同时减少没有测量到的损失。

为了设计一台仪表,最佳的启动方式是定义一个公共平台,这个平台只需很少量修改就能跨平台和跨地区使用。然后判断内部微控制器(MCU)执行所有任务所需的计算能力。市场上有许多现成的高集成度MCU可以完成这些任务,但当加入低功耗约束条件和数据加密要求后,可选余地就相当窄了。当然,也可以为电子仪表应用专门设计一种专用系统级芯片(SoC),但成本和开发时间可能是个问题。不过最终解决方案可能因消除了许多分立元件而降低总体系统成本。

虽然许多微控制器供应商都能提供包含片上模数转换器(ADC)的MCU,但信号捕获和转换要求经常导致选用独立的模拟前端芯片。这种芯片设计用于检测使用情况(电流、气流、水流),并将传感器输出转换成数字形式以便分析消耗数据。例如在电表中,单相或多相前端可以提供许多先进的电能监视特性,如功率因数、矢量和及谐波分量。测量精度和电子快速瞬态(EFT)响应是电表设计的关键要求。

应对差分功耗分析(DPA)

在系统或芯片设计期间通过减少每个软件或硬件操作之间一般都存在的功耗变化可以有效对付SPA和DPA攻击。这样,通过“水平化”功耗,SPA和 DPA方法就无法判断什么操作在进行,从而无法提取任何有用的信息。水平化功耗的一种方法是在功耗测量中增加不同类型的噪声,从而模糊真实的功耗。另外,在芯片设计过程中加扰各种数据总线和地址线也能起到模糊真实功耗的作用。

由于密码包含大量按位算术功能,分析代码中的常数和记忆顺序可以给黑客提示所使用的加密算法类型。通过在代码执行期间对功耗波动应用统计分析技术,指令序列可以得到重构。这样对隐藏操作的需求成为主要考虑因素。

随机化技术也能应用到算法中,以便系统中操作的数据表现得更加随机,但可以通过重构产生正确的结果。如果系统允许修改加密协议,那么还可以增加额外的对策,即在系统寿命期内通过修改协议来持续刷新和更新加密信息。

基本上我们可以运用老的类比法——如果你将安全想象为一条链,那么这条链实际上只是相当于最弱的链路(安全协议——加密技术——密钥存储)。每个领域都必须进行分析并防止入侵。

在系统中的芯片的物理设计过程中,应采用适当的电路和版图方法防止芯片反向工程,因为反向工程能让黑客重构电路并分析数据处理。像加扰片上数据总线和存储器地址线等简单方法就是一个好的起点。另外一些方案包括加密通常存储在微控制器或专用安全控制器中的安全密钥。

一旦使用强大的加密技术,那么密钥存储就成为最弱的链路。另外,许多系统可能将密钥的多个拷贝存放在不同地点,但有些地点黑客可能会访问到。为了排除这种攻击方法,密钥可以存储在:

1) 在线的中央服务器中(但装置昂贵,响应时间长)

2) 半在线(系统在启动时接收密钥,在运行期间密钥通常保持在DRAM中)——这是一种不好的方案,因为DRAM可能被监视

3) 安全存储密钥拷贝的离线设备中

一般来说,密钥对每个用户来说都应不同(但这会要求许多不同的密钥,因而密钥产生电路应具有可扩展性)。密钥还应能立即访问(这与前一点相矛盾,并要求少量密钥)。最好的替代方案是从主密钥派生出用户密钥,并将主密钥存储在“保险库”中。这样能在遭遇入侵时保持业务的连贯性。

非入侵式攻击的结果可能特别危险,因为受害系统的主人可能不会注意到密钥已被偷窃,从而在密钥被非法使用前无法足够快速地使泄漏密钥失效。其次,非入侵式攻击不是非常明显,因为必要设备(例如带专用分析软件的小型DSP板)通常可以适度低成本地生产,并且很容易更新为新的分析算法。

产生故障攻击

在小故障攻击方式中,黑客会故意产生故障并致使电路中的一个或多个逻辑单元翻转为错误状态。当这种现象发生时,黑客可以尝试用几乎任意一个不同指令代替单个重要的处理器指令。小故障还能用来破坏数据值,因为数据要在寄存器和存储器之间传送。

一共有4种可以用来创建只对安全处理器中的少数机器周期有影响的相当可靠的故障方法:外部电场瞬变、时钟信号瞬变、电源瞬变以及在暴露芯片表面的激光照射。需要重点考虑的是黑客可能想用小故障代替的指令——条件跳转或之前的测试指令。

小故障可能会在许多安全应用程序的处理过程中打开漏洞窗口。这种漏洞将允许黑客绕过加密障碍,方法是阻止那些警告系统有个认证企图未成功的代码的执行。

时钟信号毛刺是目前能够产生的最简单、最实用的一种小故障。这种方法是增加像毛刺一样的一些时钟,临时将时钟频率增加半个或半个多周期,这样一些触发器会试图在新状态到达前采样它们的输入。一些系统供应商声称他们的系统在时钟信号处理逻辑中包含高频检测器。然而,黑客可以通过仔细选择毛刺产生过程中的时钟信号占空比避开这些检测器。为了最大限度地减小系统危害,设计师可以在可能遭受攻击的任何明显的反应和关键操作之间插入随机时延。产生内部时钟信号的一种解决方案是创建一个由外部时钟馈给的随机位序列发生器。

针对入侵篡改检测,清零机制可以在检测到篡改时擦除秘密。因此对于能够在电池支撑的SRAM中存储秘密的较大安全模块来说,归零机制是一种高效的防篡改方法。

针对软件攻击

缓存溢出攻击是最严重的软件安全入侵方法之一。目前有50%以上被广泛利用的漏洞是由缓存溢出造成的,而且这个比例还在随时间增加。这种溢出攻击会对专用嵌入式系统和通用系统造成严重的安全问题。当有更多嵌入式系统联网时,防止嵌入式系统遭受缓存溢出攻击成为一个重要的研究课题。保护嵌入式系统免受缓存溢出攻击的高效解决方案必须包含两大要素:

· 必须提供完整的保护功能,而且要求和规则必须简单,第三方软件开发人员能够很容易遵循。

· 必须提供高效的检查机制,以便系统集成商能够很容易地检查某个组件是否已经得到保护。由于一些组件的源代码可能无法提供给系统集成商,因此即使在不知道源代码的情况下也必须能够执行安全检查。

篡改可以有许多形式,并不总是黑客的问题——即使服务人员也可能访问仪表并危害数据安全。事实上,所有报告的数据安全破坏事件中有约25%是内部人员的恶意行为。例如,在诊断工具连接仪表以记录、修改或更新仪表软件的仪表维护过程中,服务人员可能会访问安全数据。为了防止这种情况发生,必须通过安全引擎将人工干预阻挡在门外,从而排除数据操作或恶意修改的可能性。

如前所述,公用事业网络要求满足ANSI C12.19中定义的安全性和更高层互操作性,以确保各个智能电网子系统作为安全网络运行。业界正在开发其它技术,帮助确保网络间通信的可靠和安全。目前许多系统采用AES和Elliptic Curve等成熟算法。未来,公用事业网络中的更高安全等级可能会用256位方案代替128位加密方案。像ZigBee Smart Energy 2和802.16 WiMAX等标准就要求这种安全等级。

整合硬件和软件安全性是建立受信任的执行环境的基础,只有这样的环境才能实现受信任的通信和功能扩展。一个名为Hydra的英国项目就是业界定义的受信任系统的一个例子,该项目在智能仪表上实现这些解决方案并提供像Telecare等增殖服务。Hydra的范例应用是远程医疗,它能把在家里测量的体重和血压值通过安全的端到端数据传送方式直接发送给病人的个人健康记录入口或医师。通过解决远程医疗数据传送方面的技术问题,Hydra将有助于解决其它增殖服务问题,包括家庭能量管理、水、家庭安全、家庭自动化等。Hydra是针对智能电网的未来应用和服务范例。



关键词: 智能仪 表面

评论


相关推荐

技术专区

关闭