查看: 1777|回复: 12

[讨论] LPC55Sxx安全启动的漏洞

[复制链接]

该用户从未签到

1

主题

8

帖子

0

新手上路

Rank: 1

积分
37
最后登录
2022-8-19
发表于 2022-8-8 19:22:55 | 显示全部楼层 |阅读模式

感觉LPC55Sxx安全启动存在安全漏洞,请帮忙澄清一下:


看到LPC55Sxx的安全启动文档里面,这样写:ROM会使用image 里面存放的证书里面的 公钥来 校验Image。 这里有个问题,证书本身的验证是一个问题:
    芯片里面没有可信的根证书。

   当前证书的可以是由任何人发起的。攻击者在获取到用户的完整的安全image后,可以把证书里面的公钥换成自己的,然后用自己的私钥重新签名,这样就可以骗过ROM程序。


回复

使用道具 举报

该用户从未签到

1

主题

8

帖子

0

新手上路

Rank: 1

积分
37
最后登录
2022-8-19
 楼主| 发表于 2022-8-9 19:56:51 | 显示全部楼层
NXP 的技术支持,能不能帮忙解释一下
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2024-3-26 15:16
  • 签到天数: 266 天

    [LV.8]以坛为家I

    3298

    主题

    6545

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    32012
    最后登录
    2024-4-9
    发表于 2022-8-10 08:45:46 | 显示全部楼层
    eefocus_3865170 发表于 2022-8-9 19:56
    NXP 的技术支持,能不能帮忙解释一下

    稍等哈
    签到签到
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    8

    帖子

    0

    新手上路

    Rank: 1

    积分
    37
    最后登录
    2022-8-19
     楼主| 发表于 2022-8-10 20:11:31 | 显示全部楼层
    顺便问一个问题:
    各种文档里面提到一个Secure boot KEK code,还有一个SBKEK (Secure Binary Key Encryption Key)
    这两个是同一个KEY 吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-2-8 09:39
  • 签到天数: 217 天

    [LV.7]常住居民III

    92

    主题

    1111

    帖子

    29

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    7617

    热心会员

    最后登录
    2024-4-22
    发表于 2022-8-11 11:22:51 | 显示全部楼层
    你改了证书之后根本烧不到芯片里面,怎么骗过ROM程序
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-2-8 09:39
  • 签到天数: 217 天

    [LV.7]常住居民III

    92

    主题

    1111

    帖子

    29

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    7617

    热心会员

    最后登录
    2024-4-22
    发表于 2022-8-11 11:32:46 | 显示全部楼层
    有哪些文档提到 Secure boot KEK code 了,我去看看
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    8

    帖子

    0

    新手上路

    Rank: 1

    积分
    37
    最后登录
    2022-8-19
     楼主| 发表于 2022-8-11 16:53:08 | 显示全部楼层
    az158 发表于 2022-8-11 11:32
    有哪些文档提到 Secure boot KEK code 了,我去看看

    User manual 里面就有。
    Page 150
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    8

    帖子

    0

    新手上路

    Rank: 1

    积分
    37
    最后登录
    2022-8-19
     楼主| 发表于 2022-8-11 17:03:25 | 显示全部楼层
    az158 发表于 2022-8-11 11:22
    你改了证书之后根本烧不到芯片里面,怎么骗过ROM程序

    目前我的理解:
    ROM 程序使用Image里面自带的证书里面的 公钥去校验Image自身。
    但是对于这个证书的要求是自签,等于说是ROM 默认为这个证书就是安全的,并没有对证书的验证。那么这个证书 看起来也没有啥必要了,等于是直接把公钥放在那了。

    因为这个image (包括公钥)本身是放在flash都可以修改,可以用自己的密钥对对image签名,然后连带公钥, image的签名都可以同时改了(当然也可以改image),ROM 就可被骗过了。这样就没有防篡改的功能了。
    ————————
    既然有了PUF,可以在产线烧录的时候,将公钥设置到puf里面,这样公钥就不可能被修改了,这样image就被保护了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    8

    帖子

    0

    新手上路

    Rank: 1

    积分
    37
    最后登录
    2022-8-19
     楼主| 发表于 2022-8-11 17:06:14 | 显示全部楼层
    eefocus_3865170 发表于 2022-8-11 17:03
    目前我的理解:
    ROM 程序使用Image里面自带的证书里面的 公钥去校验Image自身。
    但是对于这个证书的要求 ...

    你提到的不能烧录到芯片里面,这个烧录的过程好像是SBKEY在起到保护作用。因为SBKEK是烧录的时候预存进芯片了。是不是可以在烧录的时候重新存进去SBKEY (secure binary Key )
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2024-2-8 09:39
  • 签到天数: 217 天

    [LV.7]常住居民III

    92

    主题

    1111

    帖子

    29

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    7617

    热心会员

    最后登录
    2024-4-22
    发表于 2022-8-11 21:36:18 | 显示全部楼层
    eefocus_3865170 发表于 2022-8-11 17:03
    目前我的理解:
    ROM 程序使用Image里面自带的证书里面的 公钥去校验Image自身。
    但是对于这个证书的要求 ...

    并没有,RoT 公钥的 SHA-256 哈希值(RKTH)是放在CMPA区域,一旦写入SHA 256 摘要 就会把RKTH区域锁定,无法修改。
    复位第一步就是验证CMPA区域,所以改不了。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-23 17:11 , Processed in 0.123871 second(s), 27 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表