设备证书密钥质量 - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

设备证书密钥质量

Amazon IoT 客户通常依赖使用 X.509 证书的 TLS 相互身份验证,用于对 Amazon IoT 消息代理进行身份验证。这些证书及其证书颁发机构证书必须先在其 Amazon IoT 账户中注册,然后才能使用。在注册这些证书时,Amazon IoT 对这些证书执行基本的完整性检查。这些检查包括:

  • 必须采用有效的格式。

  • 必须由注册的证书颁发机构签名。

  • 必须仍然在其有效期内(换句话说,尚未过期)。

  • 其加密密钥大小必须满足所需的最小大小(对于 RSA 密钥,它们必须为 2048 位或更大)。

此审计检查为您的加密密钥质量提供了以下附加测试:

  • CVE-2008-0166 — 检查是否在基于 Debian 的操作系统上,使用 OpenSSL 0.9.8c-1 到 0.9.8g-9 之间的版本生成了密钥。这些版本的 OpenSSL 使用随机数生成器生成可预测的数字,使远程攻击者更容易对加密密钥进行暴力猜测攻击。

  • CVE-2017-15361 - 检查密钥是否由 Infineon RSA 库 1.02.013 在 Infineon Trusted Platform Module (TPM) 固件中生成,例如 0000000000000422 - 4.34 之前的版本、000000000000062b - 6.43 之前的版本以及 0000000000008521 - 133.33 之前的版本。该库不当地处理 RSA 密钥生成,使攻击者更容易通过针对性的攻击,破解某些加密保护机制。受影响的技术示例包括使用 TPM 1.2 的 BitLocker、YubiKey 4(4.3.5 之前)PGP 密钥生成以及 Chrome 操作系统中的缓存用户数据加密功能。

Amazon IoT Device Defender如果证书未通过这些测试, 会将证书报告为不合规。

此检查在 CLI 和 API 中显示为 DEVICE_CERTIFICATE_KEY_QUALITY_CHECK

严重性:严重

Details

此检查适用于状态为“ACTIVE”或“PENDING_TRANSFER”的设备证书。

此检查发现不合规的证书时,会返回以下原因代码:

  • CERTIFICATE_KEY_VULNERABILITY_CVE-2017-15361

  • CERTIFICATE_KEY_VULNERABILITY_CVE-2008-0166

为什么这非常重要

当设备使用易受攻击的证书时,攻击者会更容易盗用该设备。

如何修复

更新您的设备证书以替换具有已知漏洞的这些证书。

如果在多个设备上使用同一证书,则需要执行以下操作:

  1. 预置新的唯一证书并将其附加到每个设备。

  2. 验证新证书是否有效,以及设备能否使用它们进行连接。

  3. 使用 UpdateCertificate 在 Amazon IoT 中将旧证书标记为“REVOKED”。您还可以使用缓解操作实现以下目的:

    • 对您的审计查找结果应用 UPDATE_DEVICE_CERTIFICATE 缓解操作以进行此更改。

    • 应用 ADD_THINGS_TO_THING_GROUP 缓解操作,以将设备添加到可以对其执行操作的组。

    • 如果要实现自定义响应以响应 Amazon SNS 消息,请应用 PUBLISH_FINDINGS_TO_SNS 缓解操作。

    有关更多信息,请参阅 缓解操作

  4. 将旧证书从各个设备中分离。