非入侵式攻击测评介绍-为安全等级认证保驾护航
非入侵式攻击测评介绍
为安全等级认证保驾护航
近年来,随着我国网络安全推进和信息化整体水平的提高,越来越多的形态各异的密码模块应用于我们生活之中。密码模块安全等级认证是评判密码模块可靠性的重要指标。本文结合《GB/T 37092-2018 信息安全技术 密码模块安全要求》、《GM/T 0028-2014 密码模块安全技术要求》、《GM/T 0083-2020密码模块非入侵式攻击缓解技术指南》等标准对安全等级认证中非入侵式攻击缓解技术进行简要解读。
01、安全等级要求
按照《GB/T 37092-2018 信息安全技术 密码模块安全要求》等标准将密码模块应满足的安全要求分为11个域,这些要求涵盖了密码模块的设计、实现、操作以及废弃相关的各个域,具体包括:密码模块规格;模块接口;角色、服务和鉴别;软件和固件安全;运行环境;物理安全;非入侵式安全;敏感安全参数管理;自测试;生命周期保障;以及对其它攻击的缓解。
标准对以上11个域进行了每个等级应达到的要求进行了详细说明。在测试过程中密码模块应当在各个域中独立进行评级,密码模块的整体评级为11个域的最低评级。如有些域不分安全等级,那么这些域获得与整体评级相当的等级。由此可见各个域对密码模块的要求都至关重要。本文只讨论不同等级的密码模块对非入侵式攻击缓解技术的要求。《GB/T 37092-2018 信息安全技术 密码模块安全要求》中具体要求如下:
- 安全一级和安全二级:对于安全一级和安全二级,文档应阐明用于保护密码模块关键安全参数免受附录F(附录F来自原标准)中的所有非入侵式攻击的缓解技术。如有相关措施,文档应包括可证明每个缓解技术有效性的证据。
- 安全三级:对于安全三级,除了安全一级和安全二级的要求,密码模块应实现用于保护密码模块关键安全参数免受附录F中的所有非入侵式攻击的缓解技术,文档应包括可以证明每个缓解技术有效性的证据,并提供测试方法。
- 安全四级:对于安全四级,除了安全一级、安全二级和安全三级的要求,密码模块应接受检测以满足附录F的要求。
02、非入侵攻击技术
由上文可知对于低安全等级密码模块无强制要求非入侵式攻击缓解技术,但高安全等级密码模块应具备抵抗各种非入侵式攻击的能力。《GM/T 0083-2020密码模块非入侵式攻击缓解技术指南》对非入侵式攻击有较为详细的介绍。非入侵式攻击由信息采集方式可分为三类:
- 计时分析攻击:主要通过密码模块固有接口(包括但不限于)对密码运算的总体计算时间进行记录。如密码执行过程的准确时间与密码算法或者过程中的特殊数学运算存在相关性,则攻击者可能通过统计时间信息破译密码模块关键信息。
- 能量分析攻击:一般通过从供电电源端或者电路接地端对密码模块的整体能量消耗进行采集。密码模块中特殊运算流程会引起能量消耗的变化。攻击者可能通过分析能量波动破译密码模块关键信息。其中,较为简单通过直接观察能量波形的攻击方式称为简单能量攻击(SPA);较为高级的通过统计学方法(均值差、相关系数等)的攻击方式称为差分能量攻击(DPA)。
- 电磁分析攻击:一般通过电磁探头对密码模块进行较为精确的电磁辐射采集。通常来讲密码模块运算过程中功耗变化会引起电磁辐射,那么采集电磁辐射信号同样有可能分析出密码模块关键信息。与能量分析类似,电磁分析也分为简单电磁攻击(SEMA)和差分电磁攻击(DEMA)。
03、非入侵式攻击缓解技术
非入侵式攻击缓解技术是指应对上述攻击方式的一系列安全防护措施。密码模块研发人员可以通过算法添加随机延时、掩码、伪操作等一系列混淆技术在软件层面有效应对非入侵式攻击,也可以通过低功耗、噪声混叠、加屏蔽罩等硬件手段干扰攻击者采集波形,或影响攻击者采集到波形的信噪比。具体缓解手段本文不再一一赘述,数缘科技正在参与起草CCSA行业标准《安全芯片非入侵式攻击缓解方法技术指南》,敬请期待。
04、非入侵式攻击测试
非入侵式攻击测试是对上述缓解技术实施效果的一种度量,非入侵式攻击缓解技术是为了保护密码模块免受各种非入侵式攻击侵害。但验证缓解技术的有效性不可能利用所有攻击方法逐一尝试破解关键信息,因为密码和破解方法总是在更新的。因此非入侵式攻击检测的重点应是建立一套高效普适的检测流程来判断密码模块是否存在可被利用的泄露。只关心可用泄露是否存在,而不关心攻击者具体如何利用该泄露。
《GM/T 0083-2020密码模块非入侵式攻击缓解技术指南》对非入侵式攻击测试流程进行了规范要求。非入侵式攻击测试框架应包含计时分析、简单能量/电磁分析、差分能量/电磁分析。三种测试应逐一完成,三者均通过视为通过测试,任意一项测试不通过视为不通过测试。
《GM/T 0083-2020密码模块非入侵式攻击缓解技术指南》对上述三种测试方法给出了规范要求,简要概括如下:
- 计时分析:要求测试人员能够准确采集密码运算时间。在保证关键参数固定的情况下,进行两组数据的采集。第一组固定输入文本采集运行时间多次,第二组变化输入文本采集运行时间多次。计算两次运算时间的平均值t1、t2,判断均值差是否小于密码运算的时钟周期(对于硬件电路)或指令周期(对于软件实现)τ。如|t1-t2|<τ则认为密码模块安全,通过测试。
- 简单能量/电磁分析:测试人员通过直接观察能量或电磁波形,尝试识别密码模块关键信息。必要时可借助交叉关联分析、聚类等方法消除主观差异。如以上方式均无法恢复出关键信息则认为密码模块安全,通过测试。
- 差分能量/电磁分析:测试人员在可变输入文本条件下对密码模块的加密过程进行多次采集,并对采集到的能量或电磁波形进行对齐。对对齐后的波形进行统计测试,观察是否存在明显泄露。如无明显泄露则认为密码模块安全,通过测试。
05、测评业务
通过上文的简单解读,可得到一个结论在高等级安全认证中,厂商对非入侵式攻击的自测试是必不可少的。那么寻求一个可靠的测试平台就显得尤为重要。北京数缘科技有限公司深耕非入侵式攻击领域多年,对非入侵式攻击原理、缓解技术、测评技术有深刻的理解。公司核心产品Detector平台集成了多种符合标准的测试方法。可承接非入侵式攻击相关测评业务,帮助送检厂商提供完善全面的自测试报告。
06、关于采集
Detector平台配备多功能侧信道分析仪、PCIe侧信道分析仪、多种口径电磁探头等硬件设备,可适配各种不同形态的密码产品可精准采集电磁或能量信号。
软件方面Detector平台集成了TTL、SPI、I2C、SKF、Socket等接口,可普适的与各种平台进行数据通信。
多功能侧信道分析仪
平台整体架构
07、关于测试
Detector平台具有符合标准的计时分析功能,在厂商配合下准确采集到加密时间即可进行规范的计时分析。
Detector平台具有美观便捷的波形显示控件,可支撑用户放大、拖动波形观察细节特征。同时集成了自相关分析、交叉相关分析、聚类等分析方法可辅助测试人员进行简单能量/电磁分析。
Detector平台集成了TVLA测试、已知密钥相关性分析等多种差分分析方法。并提供了多种对齐、滤波工具。可辅助测试人员进行可靠的差分能量/电磁分析。
便捷的波形控件
丰富的分析功能
08、关于报告
依据《GM/T 0028-2014 密码模块安全技术要求》等标准要求安全三级以上密码模块厂商需说明使用了怎样的缓解技术,并拿出可证明其有效性的证据。因此北京数缘科技有限公司提供的测试报告包含测试环境实物照片、缓解技术原理说明、检测方法原理说明、测试数据结果等内容,可全方位满足检测单位所需信息。
