[从智能锁谈STM32安全技术 学习笔记] 一. 智能锁的安全分析

声明:版权归原作者所有,如有侵权请联系删除。

1.1 安全的概念与保护的对象

1.1.1 什么是安全

安全分为2类:

  • 功能安全 Functional Safety
    • 保护系统不受那些随机故障或者系统设计缺陷的影响
  • 信息安全 Information Security
    • 保护系统不受恶意威胁而受损失

本教程讲的安全都指信息安全!!!

1.1.2 信息安全三要素

信息安全有3个基本属性(基本服务):

  • 保密性(C):该你知道,你可以知道;不该你知道的,就不让你知道

  • 完整性(I):真实可靠,信息没有被修改,没有被假冒

  • 可用性(A):总是可以访问这个信息,该用时也可以用

1.2 智能锁及安全分析模型

1.2.1 什么是智能锁

智能锁不用于传统的机械锁具,带有芯片进行控制

  • 结构:机械部分、主控芯片、电机单元、通信模组以及各种传感器
  • 开锁方式:密码、蓝牙、NFC(智能卡、手机、身份证)、生物特种(指纹、掌静脉、虹膜、人脸)
  • 连接方式:不再是孤立的存在,通过蓝牙、WIFI 或者其他窄带通信技术连接到云端
  • 安全:带有异常监控和日志

1.2.2 资产、弱点、威胁模型

分析设备所需要采用的安全技术,有一个非常成熟的模型,叫资产、弱点、威胁模型

  • 资产:一切认为有价值的对象
  • 弱点(也叫漏洞):系统的脆弱性
  • 威胁:利用系统弱点让资产价值损失的行为,让恶意第三方获得利益的行为

如果没有需要保护的资产,则漏洞加威胁,构不成风险,就不需要制定安全措施。所以,当谈及安全时,首先要甄别的是需要保护的资产是什么。

资产弱点威胁模型表明,所有的安全方案应该只针对有风险的系统的弱点来客服系统的漏洞。

1.3 现实中的攻击手段与 STM32 的技术措施

1.3.1 识别智能锁中的资产

智能锁中有哪些是需要保护的资产?从锁的用户角度看,第一重要的价值是锁的访问权。对于智能锁,保护的对象是开锁、关锁的本质:电机的转动。MCU 在什么条件下发出电机转动的信号,这个条件和判断的过程都是安全要保护的内容。密码开锁,则要检测这个密码是不是合法,密码合法的情况下,则发出这个开锁信号,所以这个密码就是具体的资产。

1.3.2 识别智能锁的脆弱性

辨别系统的脆弱性,一个方法,就是系统分解,从功能上分解,从生命周期上分解。例如将系统分解成不同的模块,就可以看到其中存在的弱点:

  • 例如联网:在带来便捷的同时,也代来了远程威胁,比如远程开锁
  • 例如软件及通信协议的设计:如果软件有bug,则很容易被远程利用
  • 例如锁的机械结构:比如开锁是通过简单的电机转动完成的,那么从理论上就有办法,绕过 MCU,也就是绕过所有信息安全的防护,直接给电机一个转动信号,锁就开了

恶意的人如何将威胁具体化形成实际的攻击方式呢?如何破解带芯片的系统,一般有2大类:

  • 物理攻击,按对系统的破坏程度分为:

    • 非侵入式攻击
    • 半侵入式攻击
    • 开盖攻击
  • 软件攻击,又叫逻辑攻击

    • 抓住系统中漏洞或者弱点,来攻破系统
    智能锁面临的威胁 分类 STM32 安全技术
    设备被破解 设备安全 STM32 SBSFU 安全启动与安全固件更新
    设备被假冒 设备安全 STM32 SFI 安全固件安装
    STM32 SBSFU 安全启动与安全固件更新
    通讯被窃听 通讯安全 STM32 TLS 通讯安全
    通讯被篡改 通讯安全 STM32 TLS 通讯安全
    云端被破解 云端安全 云端处理
    云端被假冒 云端安全 通讯安全中对云端进行认证

你可能感兴趣的:([从智能锁谈STM32安全技术 学习笔记] 一. 智能锁的安全分析)