可以防止从 yubikey 导出 PIV(私钥)吗?

瑞安

使用Yubico PIV ToolsYubiKey PIV Manager,我可以将我的客户端 TLS 证书加载到 PIV 插槽中,并将其用于 Firefox 中的身份验证。这很棒。然而...

有什么办法可以防止导出PIV的私钥?据我所知,PIV 管理密钥仅保护设备免遭修改,但对保护包含的内容免于导出没有任何作用。

如果这是准确的,YubiKey 似乎并没有真正用作 PIV 2FA 设备,因为 2-factor 假定“你拥有的东西”,并且我将设备插入的任何机器(或在后台运行的软件)都可以功能齐全的软拷贝。

在 Yubico 论坛上交叉发布了这个问题。

下面是我如何演示这个问题:

  1. 通过“YubiKey PIV Manager”(my-cert.crt)导出的证书
  2. 通过“YubiKey PIV Manager”从 YubiKey 删除证书
  3. 通过“YubiKey PIV Manager”(my-cert.crt)导入的证书
  4. 重新启动 Firefox(已加载 OpenSC)
  5. 我仍然能够通过 PIV 进行身份验证
瑞安

TL; 博士

YubiKey 不允许导出私钥,只允许导出公共证书。相反,我正在演示(我所看到的)YubiKey PIV Manager 中的一个错误它不会正确删除私钥。

荣誉尤比科

首先,虽然我要指出我认为 YubiKey 中的一个错误,但我不得不说,Yubico 提供的最终用户支持给我留下了非常深刻的印象。我引用:

我们尽力帮助提交支持案例的每个人。就连隔壁的白发奶奶

正确清除 PIV 私钥

由于“删除证书”并没有从 YubiKey 中删除私钥,因此重新加载公钥(可以由 YubiKey 导出)会导致功能性 PIV 接口。

我能够证明其他两种方法,实际上清除私有密钥:

方法 1:加载不同的证书

当我执行以下操作时,我无法进行身份验证:

  1. 加载我的证书并从 yubikey (my-cert.crt) 导出副本
  2. 加载了不同的 pfx/p12 文件
  3. 加载 my-cert.crt

方法 1.1:生成随机证书

我最近突然意识到这是最简单的方法。只需在“YubiKey PIV 管理器”中按下几个按钮。

方法 2:“重置”PIV 模块

当我执行以下操作时,我无法进行身份验证:

  1. 加载我的证书并从 yubikey (my-cert.crt) 导出副本
  2. “重置”我的 yubikey PIV 模块

    • 我用这个命令重置: yubico-piv-tool -areset
    • 奇怪的是,我首先锁定了我的 PIN 和 PUK。运行以下命令并输入错误输入超过 3 次的最简单方法(在 PUK 的情况下,您必须输入有效的新 PIN 和错误的 PUK。呃。):

      # Use to lock out PIN
      yubico-piv-tool -averify-pin
      # Use to lock out PUK
      yubico-piv-tool -aunblock-pin
      

这是一个错误吗?

考虑到重置私钥的其他两种方法是多么痛苦,“删除证书”是迄今为止从设备“擦除”证书的最简单方法。没有任何迹象表明其他两种方法是必要的。

Yubico 建议“重置”是在将设备交给另一个用户之前的推荐操作。

就个人而言,我认为这是一个错误,但我不知道 Yubico 是否已售出。

这是我设想的糟糕场景:

  • 我加载我的公钥/私钥对
  • 我从设备中删除了我的公钥(但悄悄地保持私钥完好无损)
  • 我重置了管理员 PIN 码
  • 我将设备交给其他人使用
  • 第二个人上传我的公共证书并获得我的公共/私人对的工作副本

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章