使用 Windows 10 IoT 核心版构建更安全的设备

简介

Windows 10 IoT 核心版提供强大的企业级安全功能,可在资源受限的小型 IoT 设备上利用这些功能。 为了让这些安全功能提供切实的好处,硬件平台还必须提供一种方法来固定它们。 本文提供的简要指导适用于那些希望选择合适硬件并为客户生成、配置和提供更安全的 IoT 设备的 OEM 设备制造商和具有安全意识的制造商。 数据安全

构建更安全的 IoT 设备

使用 IoT 核心版构建更安全的 IoT 设备的过程包括选择硬件以支持平台安全功能,以及生产安全启用的 IoT 设备。

设备生成过程

选择安全启用的硬件

虽然 IoT 核心版具有平台中内置的安全功能来保护客户数据,但它依赖于硬件安全功能来充分利用这些功能。 事实上,软件不能自我保护,因为内存是可操纵的,并且没有可通过软件单独提供的信任密钥或不可变设备标识。 有几种方法可以提供基于硬件的安全性,例如智能卡、受信任的平台模块 (TTPM) 或 SoC 中内置的安全功能。

有关支持的硬件平台详细信息,请参阅 SoC 和自定义板

受信任的平台模块

IoT 核心版使用受信任的平台模块 2.0 (TPM 2.0) 作为硬件安全平台。 我们建议 OEM 使用提供 TPM 2.0 的硬件平台来充分利用 IoT 核心版安全功能,例如 BitLocker、安全启动、Azure 凭据存储等。 生产设备有两种实现 TPM 的选项:作为离散 TPM (dTPM) 或作为固件 TPM (fTPM)。 有多个制造商提供离散 TPM,例如 Infineon、NazionZ 等。 某些 SoC 制造商将 fTPM 实现作为板级支持包 (BSP) 的一部分提供。

有关 TPM 详细信息,请参阅 TPM 概述如何设置 TPM

存储选项

开发板(如热门 Raspberry Pi 3)提供灵活性,使开发人员能够通过可移动 SD 卡轻松启动任何平台。 对于大多数行业 IoT 设备,这种灵活性并不可取,并且会使设备成为容易受攻击的目标。 相反,在设计硬件时,请考虑对小型的低成本 IoT 设备使用 eMMC 存储。 嵌入式存储显著增加了从设备中分离内容的难度,进而降低数据被盗或将恶意软件引入设备的可能性。

创建零售版映像

创建 Windows IoT 核心版映像时,请确保生产系统上不存在允许远程访问和调试的开发人员工具,因为这些工具可能会使设备受到攻击。 如果在开发期间在映像中使用 Windows 设备门户FTP 服务器SSHPowerShell 等开发人员工具,请确保在不包含这些工具的零售 IoT 核心版映像上测试和验证你的方案。

用户帐户

大多数用户都熟悉获取电脑和手机等设备的所有权的概念:在设备开箱时对其进行个性化设置,并设置用于访问该设备的凭据。 与消费类电脑和手机不同,IoT 设备不用作常规用途计算设备。 相反,它们通常是单应用、固定用途的设备。 尽管 Windows 支持可在开发周期内远程连接到设备的设备管理员概念,但对行业 IoT 设备提供此类支持可能会带来威胁,尤其是在使用弱密码时。 通常,建议不要在 IoT 核心版设备上创建默认帐户或密码。

锁定零售版映像

在常规用途计算设备(如电脑)上,用户可以安装应用程序和更改设置(包括安全功能设置)以确保设备最符合他们的需求。 大多数 IoT 设备都是固定功能的设备,在设备生存期内不会更改其用途。 它们接收软件更新或在其操作边界内启用功能更新,例如智能调温器上改进的 UI 或温度调节。 通过仅允许执行已知和受信任的代码,此信息可用于完全锁定 IoT 设备。 Windows 10 IoT 核心版上的 Device Guard 可以确保未知或不受信任的可执行代码无法在锁定的设备上运行,从而帮助保护 IoT 设备。

Microsoft 正在提供统包安全包,以便在 IoT 核心版设备上启用关键安全功能。 这使设备制造商能够创建完全锁定的 IoT 设备。 该包将有助于:

  • 在支持的 IoT 平台上预配安全启动密钥并启用该功能。
  • 使用 BitLocker 设置和配置设备加密。
  • 启动设备锁定以仅允许执行已签名的应用程序和驱动程序。

有关分步指南,请查看启用安全启动、BitLocker 和 Device Guard 部分

设备生产

锁定映像经过验证后,可用于设备制造。 有关详细信息,请参阅 IoT 核心版设备制造