当使用TPM通过SRTM为系统提供完整性度量时,可信的计算基础被简化为只有TPM和CRTM。CRTM是BIOS (特别是引导块)的一个组件,它首先执行,并允许TPM散列BIOS的其余内容,从而使得即使是受损的固件也不能破坏信任链。它打算是只读的,并存储在BIOS旁边.如果它不是只读的,那么它就不能提供完整性。
通常,信任链是这样的( CRTM和TPM是可信的):
每个早期阶段都会验证后续阶段,一直到用户空间。当内核启动时,TPM只会“打开”自己,并揭示一个秘密值,如果它到目前为止得到的所有哈希都是正确的。一个被破坏的系统将不能成功地打开TPM的封口,并且秘密值也不会被泄露。最终的结果是,如果CRTM是可信的,那么从BIOS到内核到用户空间,所有东西都将被验证并且不需要被信任。所有这些都依赖于CRTM和TPM不能被修改的假设。但是,在对国际交易日志博客的实现特定攻击一节中强调了实现问题的潜在可能性。
发布于 2019-04-24 18:25:56
顾名思义,CRTM是度量信任的核心根源。根据定义,给定系统的信任根是可信的,因为该系统无法验证其正确操作。一般来说,对于依赖CRTM的系统来说,CRTM要正确运行就必须是不可变的。
因此,从原则上讲,试图从给定系统(“带内”)中验证信任根的不可变性是没有意义的,特别是如果验证的可信度依赖于您试图验证的假设。
然而,验证CRTM的不可变性将取决于特定的CRTM实现和您试图获得的保证水平,从尝试写入到给定的CRTM代码位置,到硬件设计评审和物理入侵方法。
https://security.stackexchange.com/questions/183709
复制相似问题