Problème révocation certificats PKI Vault

boutin-thomas 24/11/2025
RÉSOLU
boutin-thomas
Auteur Actif
Avatar de boutin-thomas
boutin-thomas
Auteur Actif

hello à tous ! on utilise vault pour gérer notre pki interne. on génère des certificats dynamiquement pour nos microservices. le souci c'est que quand je révoque un certif via vault (genre vault write pki/revoke serial_number=...), les clients qui ont ce certif continuent à l'accepter sans problème. je m'attendais à ce qu'il soit invalide direct. j'ai loupé un truc évident sur le fonctionnement de la révocation TLS avec Vault ?

24/11/2025 à 16:34

10 commentaires

paul43
Membre Actif
Avatar de paul43
paul43
Membre Actif

salut ! la révocation TLS ça marche pas tout seul. le client doit activement vérifier la révocation. tes clients implémentent la vérification de la CRL (Certificate Revocation List) ou de l'OCSP (Online Certificate Status Protocol) ? si non, ils vont accepter le certif tant qu'il est valide au niveau de sa date d'expiration.

25/11/2025 à 11:43
boutin-thomas
Auteur Actif
Avatar de boutin-thomas
boutin-thomas
Auteur Actif

ah ok je pige. j'ai bien activé la génération de CRL sur mon backend pki vault et j'ai des endpoints pour la crl et l'ocsp mais non, mes clients sont des services go/python maisons et j'ai rien implémenté pour vérifier les CRLs/OCSP. je pensais que c'était plus "automagique" au niveau du handshake TLS.

26/11/2025 à 06:06
suzanne-dubois
Membre Actif
Avatar de suzanne-dubois
suzanne-dubois
Membre Actif

non pas du tout. le TLS est par nature stateless. quand un client reçoit un certif, il vérifie la chaîne de confiance et la date. pour la révocation, il doit faire une requête spécifique (HTTP pour CRL, OCSP pour son service dédié) pour voir si le certif est sur liste noire. tu dois soit modifier tes clients pour qu'ils fassent cette vérif, soit mettre un proxy devant qui le fera.

27/11/2025 à 05:31
andre68
Membre
Avatar de andre68
andre68
Membre

si tu pars sur OCSP, assure-toi que ton ocsp_url dans la config du backend pki de vault est accessible par tes clients et que vault lui-même peut signer les réponses OCSP. et surtout, les certificats générés doivent inclure l'extension OCSP pour indiquer où trouver le répondeur.

Modifié le 23/05/2026 à 16:20
paul43
Membre Actif
Avatar de paul43
paul43
Membre Actif

pour CRL, le plus simple est de publier la CRL sur un endpoint HTTP accessible publiquement (ou au moins par tes clients). vault peut le faire automatiquement avec crl_distribution_points. tes clients doivent alors télécharger cette CRL régulièrement et la mettre à jour pour savoir quels certifs sont révoqués.

Modifié le 23/05/2026 à 16:20
suzanne-dubois
Membre Actif
Avatar de suzanne-dubois
suzanne-dubois
Membre Actif

attention, la révocation par CRL peut avoir un délai si la CRL n'est pas rafraîchie souvent. OCSP est beaucoup plus en temps réel, mais ça rajoute une requête réseau supplémentaire au handshake TLS. souvent, on utilise OCSP stapling avec un proxy pour éviter cette requête client.

29/11/2025 à 19:49
andre68
Membre
Avatar de andre68
andre68
Membre

si tes services sont en java, par défaut java ne checke pas la révocation. faut le forcer avec System.setProperty("com.sun.net.ssl.checkRevocation", "true") ou via le java.security file. pour go/python faut utiliser les libs spécifiques.

Modifié le 23/05/2026 à 16:20
paul43
Membre Actif
Avatar de paul43
paul43
Membre Actif

et si tu passes par un proxy comme envoy ou nginx, tu peux configurer la vérification ocsp/crl au niveau du proxy. c'est souvent plus simple à gérer pour une flotte de microservices que de modifier chaque client.

01/12/2025 à 15:22
suzanne-dubois
Membre Actif
Avatar de suzanne-dubois
suzanne-dubois
Membre Actif

et n'oublie pas le cache OCSP/CRL sur tes proxys ou clients pour pas submerger vault de requêtes de vérification. des caches bien configurés peuvent réduire drastiquement la latence et la charge.

02/12/2025 à 10:04
boutin-thomas
Auteur Actif
Avatar de boutin-thomas
boutin-thomas
Auteur Actif

ok je pige beaucoup mieux maintenant ! c'est clairement un manque d'implémentation côté client. on va partir sur un reverse proxy (probablement envoy) qui fera la validation OCSP stapling et la gestion des CRLs. ça me semble le plus robuste pour notre infra. merci pour toutes ces explications détaillées les gars !

03/12/2025 à 04:13

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire