Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
ultrablue — 基于蓝牙的用户友好型轻量级 TPM 远程证明 | Kitploit
工具/GitHubGitHub/anssi-fr/ultrablue
蓝牙安全密码学移动安全硬件安全身份验证
GitHubanssi-fr/ultrablue

ultrablue

基于蓝牙的用户友好型轻量级 TPM 远程证明

查看仓库
174943年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Ultrablue,面向手机的远程证明服务器

Ultrablue(User-friendly Lightweight TPM Remote Attestation over Bluetooth,即通过蓝牙进行的用户友好型轻量级 TPM 远程证明)是一个让个人用户能够通过手机执行启动状态证明的解决方案。它由两部分组成:一个是运行在计算机上、充当证明方的服务器;另一个是运行在可信手机上、充当验证方的图形客户端应用程序。

一个典型的用例是在解锁计算机之前验证启动链的完整性,以防止对无人值守的笔记本电脑发起离线攻击。它也可以用作固件升级后排查安全启动(secure boot)问题的调试工具,或作为磁盘加密的第二重因素。

安装完成后,Ultrablue 的经典控制流程包括以下几个步骤:

  1. 注册
  2. 在 initramfs 中进行启动时集成(可选)
  3. 证明

0. 安装

使用 Ultrablue 需要一台你想要证明其启动状态的 Linux 计算机,该计算机需配备 TPM 和蓝牙接口(通常为笔记本电脑),以及一部手机。

  • 在计算机上,你需要构建并安装 Linux 服务器。
  • 在手机上,你需要安装 IOS 客户端 或 Android 客户端。

1. 注册

要将手机注册为验证方,请以注册模式启动服务器:

root@kitploit:~
sudo ultrablue-server -enroll -pcr-extend

这将在终端上显示一个二维码。在手机上运行客户端应用程序,点击右上角的 + 图标以显示二维码扫描器。扫描后,将建立蓝牙低功耗(Bluetooth Low Energy)信道,注册将自动运行。成功后,客户端应用程序的主页上会出现一张设备卡片。

Ultrablue 可以在注册时使用随机生成的值扩展你的 TPM2 PCR9。如果你希望,例如,将磁盘加密绑定到 TPM2 密封(TPM2 sealing),这会很有用。在这种情况下,如果证明成功且受信任,ultrablue 将在启动时把 PCR9 寄存器扩展回去。 PCR 扩展是在注册时配置的(该标志在证明模式下无效):

root@kitploit:~
sudo ultrablue-server -enroll -pcr-extend

2. 使用 Dracut 进行启动时集成(可选)

如果你希望 ultrablue 作为启动流程的一部分执行,则必须重新生成 initramfs 以将其打包进去。我们通过提供 Dracut 和 systemd 集成来简化这一过程。另请参阅所提供的 VM 脚本,它们提供了一种更简单的测试方式。

首先,将 server/dracut/90ultrablue 安装到 /usr/lib/dracut/modules.d/ 模块目录中,

然后,你可以运行以下 dracut 命令:

root@kitploit:~
dracut --add ultrablue /path/to/initrd --force

如果你在注册阶段使用了 --pcr-extend 选项,则需要添加 crypt dracut 模块,并将 server/dracut/90crypttab.conf 复制到 /etc/dracut.conf.d(以绕过 dracut bug #751640):

root@kitploit:~
cp server/dracut/90crypttab.conf /etc/dracut.conf.d
dracut --add "crypt ultrablue" /path/to/initrd --force

请注意,这些选项不会持久保留,ultrablue 将在 initramfs 下次重新生成时被移除。有关持久配置,请参阅 dracut.conf(5) 手册页。

3. 证明

如果你已完成 initramfs 配置步骤,Ultrablue 服务器将在启动过程中自动运行。否则,请以证明模式手动启动服务器:

root@kitploit:~
sudo ultrablue-server

启动后,服务器将等待验证方(手机)连接。在手机上,点击设备卡片上的 ▶️ 图标。这将运行证明。完成后,客户端应用程序将显示证明结果。

4. 基于远程证明的磁盘解密

在启动时运行 ultrablue 的主要目的是将其用于磁盘解密。如何在 服务器 testbed 中实现这一点的示例已提供并记录在案。

联系方式

Ultrablue 项目由 Loïc Buckwell 在 ANSSI(ssi.gouv.fr)开发,并由 Nicolas Bouchinet 和 Gabriel Kerneis 指导。

如果你有任何问题,请通过 Github issue 联系我们,或直接联系 Gabriel Kerneis [email protected]。

下载工具