Solución:
Tiene razón, no tengo ninguna API que sepa exportar PrivateKey marcada como no exportable. Pero si parchea (en memoria) las API normales, puede utilizar la forma normal de exportar 🙂
Hay una nueva versión de mimikatz que también es compatible con la exportación CNG (Windows Vista / 7/2008 …)
- descargar (y ejecutar con privilegios administrativos): http://blog.gentilkiwi.com/mimikatz (versión troncal o última versión)
Ejecútelo e ingrese los siguientes comandos en su indicador:
-
privilege::debug
(a menos que ya lo tenga o apunte solo a CryptoApi) -
crypto::patchcng
(nt 6) y / ocrypto::patchcapi
(nt 5 y 6) -
crypto::exportCertificates
y / ocrypto::exportCertificates CERT_SYSTEM_STORE_LOCAL_MACHINE
Los archivos .pfx exportados están protegidos con contraseña con la contraseña “mimikatz”
La respuesta de Gentil Kiwi es correcta. Desarrolló esta herramienta mimikatz que puede recuperar claves privadas no exportables.
Sin embargo, sus instrucciones están desactualizadas. Necesitas:
-
Descargue la última versión de https://github.com/gentilkiwi/mimikatz/releases
-
Ejecute el cmd con derechos de administrador en la misma máquina donde se solicitó el certificado
-
Cambie al directorio bin mimikatz (versión Win32 o x64)
-
Correr
mimikatz
-
Siga las instrucciones de la wiki y el archivo .pfx (protegido con contraseña mimikatz) se colocarán en la misma carpeta del contenedor mimikatz
mimikatz # crypto :: capi
CryptoAPI local parcheadomimikatz # privilege :: debug
Privilegio ’20’ OKmimikatz # crypto :: cng
Servicio “KeyIso” parcheadomimikatz # crypto :: certificados / systemtore: local_machine / store: my / export
* Tienda del sistema: ‘local_machine’ (0x00020000)
* Tienda: ‘mi’
- ejemplo.domain.local
Contenedor de claves: example.domain.local
Proveedor: Proveedor de almacenamiento de claves de software de Microsoft
Tipo: Llave CNG (0xffffffff)
Clave exportable: NO
Tamaño de la clave: 2048
Exportación pública: OK – ‘local_machine_my_0_example.domain.local.der’
Exportación privada: OK – ‘local_machine_my_0_example.domain.local.pfx’
quería mencionar Fuga específicamente (GitHub):
Fuga
Jailbreak es una herramienta para exportar certificados marcados como no exportables desde la tienda de certificados de Windows. Esto puede ayudar cuando necesite extraer certificados para realizar copias de seguridad o realizar pruebas. Debe tener acceso completo a la clave privada en el sistema de archivos para que funcione el jailbreak.
Requisitos previos: Win32