Les administrateurs PKI partent souvent du principe que l'option dans le modèle de certificat , de ne pas autoriser l'exportation de la clé privée, est obligatoire.

Ce n'est pourtant pas le cas.
Il s'agit simplement d'un paramètre par défaut que le demandeur peut modifier à tout moment s'il effectue la demande de certificat manuellement.
Lors de la création d'un certificat via la Microsoft Management Console (MMC), vous pouvez développer la section „ Détails “ à l'étape de sélection du modèle de certificat. Vous y trouverez un bouton „ Propriétés “.

Dans l'onglet „ Clé privée “, nous trouvons l'option permettant d'activer l'exportation.

En outre, même une clé générée comme non exportable n'est pas à l'abri d'une exportation. Il existe à cet effet des outils pertinentsPour exporter de tels certificats avec leurs clés, il suffit de cliquer sur le bouton "Exporter".
Possibilité de durcissement avec TameMyCerts
Connaissez-vous TameMyCerts? TameMyCerts est un add-on pour l'autorité de certification Microsoft (Active Directory Certificate Services). Il étend la fonction de l'autorité de certification et permet de Application de la réglementationIl s'agit d'un logiciel de gestion des certificats qui permet d'automatiser l'émission de certificats en toute sécurité. TameMyCerts est unique dans l'écosystème Microsoft, a déjà fait ses preuves dans d'innombrables entreprises du monde entier et est disponible sous une licence libre. Il peut téléchargé via GitHub et être utilisé gratuitement. Une maintenance professionnelle est également proposée.
La demande de certificat ne permet pas de déterminer si une clé privée est exportable ou non. Le concept même d'exportabilité est également une fonctionnalité propriétaire de Microsoft. Fournisseur de services cryptographiques ou fournisseur de stockage de clés et n'existe donc que dans cet écosystème.
Pour retrouver un certain degré de contrôle, nous pouvons tirer parti du fait que, lorsqu'une demande de certificat est générée à l'aide d'une API Windows, celle-ci contient des métadonnées indiquant quel processus a généré la paire de clés.
Il convient toutefois de préciser d'emblée que ces méta-informations peuvent être falsifiées par le demandeur, moyennant un effort correspondant.

Le module Policy de TameMyCerts pour les services de certificats Microsoft Active Directory est capable d'extraire de la demande de certificat le processus utilisé lors de sa création et, sur la base de ces informations, de déterminer si un certificat doit être délivré ou non.
La plupart des utilisateurs demanderaient probablement un tel certificat exportable via la console de gestion Microsoft (MMC). D'autres outils (tels que certreq.exe, certutil.exe ou OpenSSL) permettraient également de générer des clés exportables correspondantes.
Avec TameMyCerts, nous pouvons interdire explicitement ces processus.
OpenSSL et d'autres outils non Microsoft n'intègrent pas d'informations sur le processus dans la demande de certificat. Dans ce cas, TameMyCerts rejetterait également la demande de certificat.
<CertificateRequestPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<DisallowedProcesses>
<string>mmc.exe</string>
<string>powershell.exe</string>
<string>certutil.exe</string>
<string>certreq.exe</string>
<!-- OpenSSL doesn't include process information and will therefore be denied as well -->
</DisallowedProcesses>
<!-- additional Directives go here -->
</CertificateRequestPolicy>
Une solution encore plus élégante serait de n'autoriser que le processus d'inscription automatique de Windows. Celui-ci s'exécute dans le contexte du Planificateur de tâches Windows (taskhostw.exe).
<CertificateRequestPolicy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<AllowedProcesses>
<string>taskhostw.exe</string>
</AllowedProcesses>
<!-- additional Directives go here -->
</CertificateRequestPolicy>
Si un utilisateur tente de demander un certificat pour un processus non autorisé, TameMyCerts le détecte et rejette la demande de certificat.

TameMyCerts créera un fichier correspondant sur l'autorité de certification Entrée dans le journal des événements de l'autorité de certification écrire. Cela permet même de déclencher une alerte.

Liens complémentaires :
- Principes de base : fournisseur de services cryptographiques (CSP) et fournisseur de stockage de clés (KSP)
- Bases de la demande manuelle et automatique de certificats via Lightweight Directory Access Protocol (LDAP) et Remote Procedure Call / Distributed Common Object Model (RPC/DCOM)
Les commentaires sont fermés.