开源意识流

观点与事件:科技、开源、商业化

嵌入式安全总是被忽略


By Renee

随着 Web3/AI 时代 进入新的加速期,一帮不愿意割韭菜搞资金盘的创业者,似乎在自己的细分赛道找到了一些感觉。而随着业务的不断推进,许多技术短板将逐渐暴露出来。

HSM (硬件安全模块)是一种嵌入式系统,用于提供安全的存储和密钥管理。这类设备通常用于存放极其重要的数据,比如加密货币的钱包。最近爆出 MCU(单片机)上的安全缺陷可能会导致相关应用存在安全隐患


可能存在问题的设备,其硬件上有着某种相似性:

1、无 MMU

2、无外挂存储,NVRAM 可直接访址

3、NVRAM 的寿命有限,频繁写入操作可能会被利用


无论是 STM32 还是被多年广泛使用的 Java Card,都存在类似的隐患。


而相对而言,Java Card 的安全似乎(但也仅仅是似乎可能)会更好一点,原因是 JVM 隔了一层,上层指令并不能直接访址。但这样的理由不足够充分,它的安全性取决于 JCRE (Java Card Runtime Environment) 实现上的完备性和正确性。


直接用 C 或汇编操控 STM32 则相对而言会稍微劣势一些,Java Card 尚且取决于写 JVM 的人的实力,而前者只能相信一线开发人员的实力和精神集中度了。


这些年动态语言进入嵌入式的趋势已经比较普遍,microPython 和 eLua 较为流行。备受关注的还有 Lisp/Scheme machine,在这一方向上,国产本来有望争取一次出头的机会,无奈作者吃了清零的铁拳,但貌似打了个滚之后还在继续。


无论如何,嵌入式的基础架构开发者们已经不能再光盯着性能和节省内存了,安全也必须有所考量。不过还好,假如不存敏感数据,那么嵌入式安全暂时也不需要太过于担心。