为什么当我尝试使用 Mimikatz 导出私钥时会出现此错误?

为什么当我尝试使用 Mimikatz 导出私钥时会出现此错误?

我正在使用 Windows 10(19041.867),并尝试使用 Mimikatz(2.2.0 20200918)导出证书导出向导标记为不可导出的私钥。

使用以下命令后:

crypto::capi
crypto::certificates /export

我在导出私钥时(XXX出于隐私考虑)收到以下错误。我做错了什么吗?

 0. XXX
    Subject  : XXX
    Issuer   : XXX
    Serial   : XXX
    Algorithm: 1.2.840.113549.1.1.1 (RSA)
    Validity : XXX
    Hash SHA1: XXX
        Key Container  : XXX
        Provider       : Microsoft Strong Cryptographic Provider
        Provider type  : RSA_FULL (1)
ERROR kuhl_m_crypto_l_certificates ; CryptAcquireCertificatePrivateKey (0x80090016)
        Public export  : OK - 'CURRENT_USER_MY_1_MARICARMEN.der'
        Private export : ERROR kull_m_crypto_exportPfx ; PFXExportCertStoreEx/kull_m_file_writeData (0x80090016)

答案1

我做错什么了吗?

除了“使用 Mimikatz 导出标记为不可导出的私钥”之外?没有(也不一定)。

0x80090016NTE_BAD_KEYSET,这意味着虽然该证书被标记为具有私钥,但它所在的文件已被删除。

现在,您可以继续查找密钥文件被删除的原因,这通常是因为证书是从带有 .NET 的 PFX 加载的,而没有指定密钥文件的生存期应比证书对象长。(这可能是您编写的代码导致的,这也是为什么使用“否”的原因)

相关内容