Certutil.exe en certreq.exe zijn de afgelopen 20 jaar twee van de meest betrouwbare Windows-toolkits geweest. Deze tools zijn essentieel gebleken voor het verwerken van cryptografische sleutels en certificatenVooral in serveromgevingen waar beveiliging cruciaal is. Het is geen geheim dat het fundamentele gebruik van deze tools een breed scala aan krachtige mogelijkheden blootlegt.
Naast de meestgebruikte functies beschikken deze tools echter over een uitgebreidere reeks geavanceerde mogelijkheden en minder bekende instellingen, speciaal ontworpen voor beheerders die nauwkeurige controle nodig hebben over certificaataanvragen en -uitgifte. In deze handleiding bespreken we deze vaak over het hoofd geziene functies en onthullen we de verborgen instellingen die het volledige potentieel van deze tools ontsluiten.
Certutil.exe
Certutil.exe is een krachtig opdrachtregelprogramma dat is ingebouwd in Windows en wordt gebruikt voor het beheren, oplossen van problemen en valideren van Public Key Infrastructure (PKI)-componenten. Het wordt veel gebruikt door PKI-beheerders, beveiligingsengineers en systeembeheerders en ondersteunt een breed scala aan certificaatgerelateerde bewerkingen, waaronder het beheren en inspecteren van certificaatarchieven, het verifiëren van certificaatketens en sleutelparen, en het controleren van de intrekkingsstatus via Certificaatintrekkingslijst (CRL) en Online Certificaat Status Protocol (OCSP)Het coderen en decoderen van bestanden, het hashen van bestanden, het configureren van registerinstellingen van de Certificate Authority (CA), interactie met Active Directory PKI-containers, het converteren van bestanden, certificaten Het programma maakt het mogelijk om gegevens tussen verschillende formaten te converteren en problemen met certificaatinschrijving of vertrouwenskwesties op te lossen. Dankzij de uitgebreide functionaliteit en flexibiliteit is certutil.exe uitgegroeid tot een van de meest essentiële tools voor het werken met Microsoft PKI-omgevingen.
Om de officiële documentatie te bezoeken, volgt u deze link: certutil-documentatie
Certutil verkennen
Naast certificaatbewerkingen kan certutil.exe worden gebruikt voor het maken van back-ups van en het herstellen van CA-componenten, het weergeven van configuratie-informatie voor CA's en het instellen van certificaatservices.
Een gedrag dat het waard is om te begrijpen, is dat wanneer certutil zonder parameters wordt uitgevoerd op een Certificeringsautoriteit (CA) Op een server geeft het informatie weer over de lokale CA-configuratie. Op een machine die geen CA is, geeft het standaard het equivalent van `certutil -dump` weer. Het is belangrijk om dit verschil te begrijpen bij het analyseren van de uitvoer van `certutil` tijdens het oplossen van problemen of het bekijken van logbestanden.

Certutil biedt een breed scala aan opties, die kunnen worden verkend met behulp van `certutil -?` of `certutil`. -?. Door de vlag -v toe te voegen, wordt uitgebreide uitvoer ingeschakeld (certutil -v -?), waardoor de helpweergave wordt uitgebreid met extra opdrachten en meer gedetailleerde gebruiksinformatie.
Je vraagt je misschien af welk groot verschil de schakelaar "-v" kan maken, dus hier is de uitvoer van een tekenreeks vergeleken tussen certutil -? en certutil -v -?

Aan de linkerkant wordt de uitvoer van het commando weergegeven.certutil -?", terwijl de rechterkant de uitvoer van het commando weergeeft "certutil -v -?Het verschil is direct merkbaar. De uitgebreide uitvoer is aanzienlijk langer en gaat veel verder dan de beknopte lijst die certutil -? retourneert. Waar de standaard help zich richt op veelgebruikte commando's met korte beschrijvingen, breidt de optie -v de uitvoer aanzienlijk uit met extra commando's en meer gedetailleerde informatie. Dit illustreert duidelijk hoeveel functionaliteit binnen certutil.exe verborgen blijft, tenzij er expliciet om uitgebreide help wordt gevraagd.
Het verkennen van verborgen switches van Certutil
De meest complete manier om alles te ontdekken wat certutil te bieden heeft, is met de volgende vlagcombinatie:
certutil -v -uSAGE
Dit combineert uitgebreide uitvoer (-v) met de uitgebreide gebruiksweergave (-uSAGE), waardoor de meest gedetailleerde helpuitvoer met volledige syntaxis en extra opdrachten die niet in de standaardhelp worden weergegeven, wordt gegenereerd.
Als je alleen de lijst met verborgen schakelaarnamen nodig hebt zonder de volledige syntaxisdetails, biedt de volgende opdracht een snellere subset:
certutil -uSAGE
Het is belangrijk om te weten dat beide vlaggen hoofdlettergevoelig zijn en exact zo moeten worden getypt als weergegeven. Bovendien zijn de verborgen schakelaars in zowel certutil als certreq om een goede reden niet gedocumenteerd, omdat ze zich in verschillende Windows-versies anders kunnen gedragen en buiten de standaard Microsoft-ondersteuning vallen. Daarom is het altijd raadzaam om ze eerst in een niet-productieomgeving te testen voordat u ze in een live- of kritiek systeem implementeert.
Laten we het verschil tussen de twee eens nader bekijken. Aan de linkerkant zien we de standaard. certutil -? uitvoer, terwijl we aan de rechterkant de certutil -uSAGE Uitvoer. De vergelijking laat duidelijk extra verborgen schakelaars zien die niet zichtbaar zijn in de standaard help. Deze extra opties worden in de -uSAGE-weergave groen gemarkeerd voor een betere herkenning.




Nu de verschillen duidelijk zichtbaar zijn, gaan we elk extra commando dat beschikbaar is onder `certutil -uSAGE` eens nader bekijken. De volgende tabel geeft een overzicht van elke verborgen optie en het doel ervan, voor meer duidelijkheid.
| Parameter | Beschrijving |
|---|---|
| -encodehex | Codeert een bestand in hexadecimale notatie. |
| -getconfig2 | Haalt de standaard CA-configuratiestring op via de ICertGetConfig-interface. |
| -getconfig3 | Haalt de CA-configuratie op via de ICertConfig-interface. |
| -CAPropInfo | Geeft informatie weer over het CA-eigenschapstype, zoals de gegevenstypen en vlaggen van elke eigenschap die de CA beschikbaar stelt. Wordt gebruikt voor geavanceerde CA-scripting. |
| -exportPFX | Exporteert een certificaat en de bijbehorende privésleutel naar een PFX-bestand. |
| -TPMInfo | Geeft informatie weer over de Trusted Platform Module (TPM). Toont de TPM-versie, fabrikant en mogelijkheden, handig bij het implementeren van TPM-ondersteunde sleutels. Wordt gebruikt voor de validatie van TPM-ondersteunde sleutels en virtuele smartcards (VSC's). |
| -certificaat ophalen | Opent een gebruikersinterface voor certificaatselectie om interactief een certificaat te kiezen. De volledige syntaxis is certUtil [Options] -getcert [ObjectId | ERA | KRA [CommonName]] . |
| -ds | Toont de Distinguished Names (DN's) van Active Directory voor PKI-containers (AIA, CDP, enz.). Helpt inzicht te krijgen in waar PKI-objecten in Active Directory worden opgeslagen. |
| -dsDel | Verwijdert een specifiek item uit een Active Directory PKI-container. Gebruik dit met uiterste voorzichtigheid, aangezien AD-objecten permanent worden verwijderd. |
| -dsCert | Toont certificaten die zijn opgeslagen in Active Directory PKI-containers. |
| -dsCRL | Toont de CRL's (Certificate Revocation Lists) die zijn opgeslagen in Active Directory. |
| -dsDeltaCRL | Geeft Delta CRL's weer die zijn opgeslagen in Active Directory. Wordt gebruikt wanneer een certificeringsinstantie (CA) incrementele intrekkingslijsten publiceert. |
| -dsTemplate | Geeft certificaatsjabloonkenmerken weer uit Active Directory. Voeg -v ervoor toe om alle inschrijvingsvlaggen, privésleutelvlaggen, uitgiftebeleid en EKU OID's volledig uit te vouwen. Wordt gebruikt voor sjablooncontrole en beveiligingsbeoordeling. |
| -dsAddTemplate | Voegt certificaatsjablonen toe aan Active Directory. Wordt gebruikt tijdens de configuratie van een certificeringsinstantie (CA) of bij het publiceren van nieuwe sjablonen. |
| -SetCATemplates | Hiermee wordt de lijst met sjablonen die een CA mag uitgeven, ingesteld of beperkt. |
| -URL | Controleert de URL's van certificaten en CRL's (Certificate Revocation Lists) om te garanderen dat ze bereikbaar zijn en geldige gegevens retourneren. Helpt bij het oplossen van problemen met de bereikbaarheid van certificaatketens, CRL's en OCSP's. |
| -SCDump | Geeft een overzicht van de smartcardgegevens. Wordt gebruikt voor problemen met inloggen en configureren van smartcards. |
| -sleutel | Toont een lijst van alle cryptografische sleutelcontainers op de machine. Zowel CryptoAPI (legacy) als CNG-sleutelcontainers worden weergegeven. |
| -delkey | Verwijdert een specifieke cryptografische sleutelcontainer permanent van de machine. |
| -csplist | Geeft een overzicht van alle cryptografische serviceproviders (CSP's) en sleutelopslagproviders (KSP's) die op de machine zijn geïnstalleerd. Handig om de beschikbaarheid van HSM-/smartcardproviders te controleren. |
| -csptest | Test een CSP/KSP door deze te laden en cryptografische bewerkingen te controleren. Wordt vaak gebruikt voor het oplossen van problemen met HSM's en smartcards. |
| -CNGConfig | Toont de CNG-configuratie (Cryptography Next Generation), zoals geregistreerde algoritmen, providers en CNG-instellingen. |
| -Klasse | Geeft COM-registerinformatie weer voor certificaatgerelateerde COM-klassen. |
| -7f | Controleert een certificaat op lengtecoderingen van 0x7f. |
| -getsmtpinfo | Toont de SMTP-notificatie-instellingen (e-mail) die op de CA zijn geconfigureerd. |
| -setsmtpinfo | Hiermee configureert u de SMTP-notificatie-instellingen op de CA, zoals het instellen van e-mailwaarschuwingen voor CA-gebeurtenissen zoals certificaatuitgifte, -verloop of -fouten. |
Let op: Deze commando's werken op een gevoelig beheerdersniveau. Onjuist gebruik van opties zoals -dsDel, -delkey of -SetCATemplates kan gevolgen hebben voor certificeringsservices, vertrouwensketens verbreken of kritieke PKI-objecten uit Active Directory verwijderen. Controleer altijd het doel en begrijp de impact voordat u ze in een productieomgeving uitvoert.
Laten we desalniettemin eens nader kijken naar enkele van de meest gebruikte verborgen switches, de switches die PKI-beheerders het meest nuttig zullen vinden bij hun dagelijkse werkzaamheden en het oplossen van problemen.
-
-csplist en -csptest:
Deze twee opties werken het beste samen. Voer eerst -csplist uit om alle CSP's en KSP's te zien die op de machine zijn geregistreerd, en gebruik vervolgens -csptest om een specifieke provider te laden en te verifiëren. Dit is de snelste manier om problemen met HSM's of smartcards te diagnosticeren: als de provider niet in -csplist verschijnt, is het stuurprogramma niet geregistreerd; als deze wel verschijnt maar -csptest mislukt, ligt het probleem bij de machtigingen, de pincode of het bibliotheekpad. Elke optie kan ook afzonderlijk worden uitgevouwen voor meer details.
certutil -v -csplist -?
certutil -v -csptest -?
-
-dstemplate met -v:
Het toevoegen van -v vóór -dstemplate maakt een significant verschil. Zonder -v krijg je alleen de sjabloonnamen te zien. Met -v krijg je de volledige uitbreiding, inclusief inschrijvingsvlaggen, privésleutelvlaggen, uitgiftebeleid en EKU OID's. Dit is de opdracht die je moet uitvoeren bij het controleren van sjablonen op beveiligingsfouten:
certutil -v -dstemplate
certutil -v -dstemplate WebServer
Een ander belangrijk detail is dat elke verborgen schakelaar, net als openbare schakelaars, afzonderlijk kan worden uitgebreid. Dit werkt voor elke schakelaar in de -uSAGE-lijst:
certutil -URL -?
certutil -v -SCDump -?
Al met al bieden deze schakelaars PKI-beheerders een niveau van inzicht en controle dat simpelweg niet beschikbaar is via de MMC-console of de standaard helpfunctie van certutil. Hoe beter u hiermee vertrouwd bent, hoe sneller u problemen in uw PKI-omgeving kunt diagnosticeren en oplossen.
Certreq.exe
Certreq.exe is een krachtig opdrachtregelprogramma dat is ingebouwd in Windows voor het beheren van de volledige levenscyclus van certificaatinschrijving. Waar certutil.exe de certificaatinspectie en het CA-beheer afhandelt, richt certreq.exe zich op de aanvraagzijde: het genereren, indienen, ophalen en installeren van certificaten. certificaten uit Californië.
Om de officiële documentatie te bezoeken, volgt u deze link: Certreq-documentatie
Certreq verkennen
In essentie vormt certreq.exe de brug tussen een certificaataanvrager en een certificeringsinstantie (CA). Het beheert elke fase van het inschrijvingsproces vanuit één enkele opdrachtregelinterface, waardoor het bijzonder waardevol is in serveromgevingen waar inschrijving via een grafische gebruikersinterface niet beschikbaar of onpraktisch is.
Hieronder wordt uitgelegd wat Certreq kan doen en hoe elke functionaliteit past in de praktijk van PKI-operaties:
-
Vraag een certificaat aan bij een CA: Met behulp van een INF-beleidsbestand genereert certreq een Certificate Signing Request (CSR) en een bijbehorend privésleutelpaar. Het INF-bestand definieert het onderwerp, het sleutelalgoritme, de sleutelgrootte, het beoogde gebruik en eventuele gevraagde extensies, waardoor beheerders nauwkeurige controle hebben over wat er wordt aangevraagd.
certreq -new request.inf request.csr
-
Dien een verzoek in bij een CA: Zodra een CSR gereed is, verzendt certreq deze rechtstreeks naar een bedrijfs-CA via RPC/DCOM of naar een externe CA via een bestand. De vlag -config specificeert welke CA moet worden aangestuurd wanneer er meerdere CA's in de omgeving aanwezig zijn.
certreq -submit -config "ServerName\CAName" request.csr issued.cer
-
Een certificaat ophalen dat nog in behandeling is: Wanneer een certificeringsinstantie (CA) goedkeuring van een manager vereist, wordt het certificaat niet direct uitgegeven. Certreq kan de CA bevragen en het uitgegeven certificaat ophalen zodra het is goedgekeurd, met behulp van de aanvraag-ID die bij de indiening wordt geretourneerd.
certreq -retrieve -config "ServerName\CAName" uitgegeven.cer
-
Accepteer en installeer het uitgegeven certificaat: Na het ophalen installeert certreq het certificaat in het juiste Windows-certificaatarchief en koppelt het aan de bijbehorende privésleutel, waarmee het inschrijvingsproces is voltooid.
certreq -accept issued.cer
- Maak een verzoek aan voor kruiscertificering of gekwalificeerde ondergeschiktheid: Voor organisaties die PKI-hiërarchieën opbouwen, kan certreq kruiscertificeringsverzoeken genereren op basis van een bestaand CA-certificaat. Dit wordt gebruikt bij het vaststellen van vertrouwen tussen twee onafhankelijke PKI-hiërarchieën of bij het creëren van een gekwalificeerde ondergeschikte CA met beperkte naamruimtes en beleidsbeperkingen.
- Onderteken een verzoek om kruiscertificering of gekwalificeerde ondergeschiktheid: Certreq kan ook een lopend kruiscertificeringsverzoek ondertekenen met behulp van een bestaand CA-certificaat, waarmee de vertrouwensrelatie tussen PKI-hiërarchieën wordt hersteld zonder dat de MMC CA-console nodig is.
Certreq-opdrachtparameters
| Parameter | Beschrijving |
|---|---|
| -indienen | Dien een verzoek in bij een certificeringsinstantie. |
| -uittreden | Haalt een antwoord op een eerder verzoek van een certificeringsinstantie op. |
| -nieuw | Maakt een nieuw verzoek aan op basis van een .inf-bestand. |
| -aanvaarden | Accepteert en installeert een reactie op een certificaatverzoek. |
| -beleid | Stelt het beleid in voor een verzoek. |
| -teken | Ondertekent een verzoek om kruiscertificering of gekwalificeerde ondergeschiktheid. |
| -inschrijven | Schrijft zich in voor een certificaat of verlengt dit. |
| -? | Toont een lijst met certreq-syntaxis, opties en beschrijvingen. |
| -? | Geeft helpinformatie weer voor de opgegeven parameter. |
| -v -? | Geeft een uitgebreide lijst weer van de certreq-syntaxis, opties en beschrijvingen. |
Van deze opties worden -submit en -retrieve het meest gebruikt om een certificaatverzoek in te dienen en de uitgegeven certificaten op te halen. Certificate Authority via de opdrachtregel.
Ontdek de verborgen schakelaars van Certreq
Net als certutil heeft certreq zijn eigen set verborgen instellingen, die zichtbaar worden gemaakt met dezelfde hoofdlettergevoelige parameter -uSAGE:
certreq.exe -uSAGE
De onderstaande schermafbeeldingen vergelijken de uitvoer van certreq -? aan de linkerkant met de standaard uitvoer van certreq -uSAGE aan de rechterkant. De extra verborgen schakelaars zijn alleen aan de rechterkant zichtbaar.




Nu de verschillen duidelijk zijn, gaan we elk extra commando dat beschikbaar is onder `certreq -uSAGE` eens nader bekijken. De volgende tabel geeft een overzicht van elke verborgen schakelaar en het doel ervan, voor meer duidelijkheid.
| Verborgen schakelaar | Wat het doet |
|---|---|
| -EOBO | Start de wizard 'Inschrijven namens'. Hiermee kan een inschrijfagent certificaten aanvragen namens een andere gebruiker. Hiervoor moet een certificaat voor de inschrijfagent geconfigureerd zijn. |
| -InschrijvenX | Hiermee kunt u meerdere certificaten in één bewerking aanvragen. Accepteert de vlaggen -Accept user en -machine om de doelcertificaatopslag te beheren. |
| -Automatische inschrijving | Start de gebruikersinterface voor automatische inschrijving. Ondersteunt de vlaggen -v, -user en -machine. |
| -Verzoek | Hiermee wordt een aangepast certificaatverzoek gegenereerd met uitgebreide controle over de inhoud van het verzoek. Ondersteunt de contextvlaggen -user en -machine. |
| -ImportPFX | Importeert een PFX-bestand rechtstreeks naar een opgegeven cryptografische provider, inclusief hardwareproviders zoals HSM's en smartcards. |
Elk van deze elementen kan afzonderlijk worden uitgebreid voor de volledige syntaxis:
certreq -ImportPFX -?
certreq -AutoEnroll -?
certreq -EOBO -?
Van deze opties verdient -ImportPFX een nadere beschouwing, met name vanwege de verschillen met de overeenkomstige opties in certutil.
-ImportPFX in certreq versus -importPFX in certutil
Van alle verborgen schakelaars zijn certreq -importPFX en certutil -importPFX bijzonder interessant om te bekijken. Hoewel beide met PFX-bestanden werken, dienen ze verschillende doelen en gedragen ze zich in de praktijk heel anders.
Het belangrijkste verschil zit in de manier waarop ze de bestemming targeten. `certutil -importPFX` werkt met benoemde Windows-certificaatarchieven en biedt een uitgebreide lijst met modifiers, waaronder AT_SIGNATURE, AT_KEYEXCHANGE, NoExport, NoChain, NoRoot, Protect, ProtectHigh, Pkcs8, VSM en meer, waardoor nauwkeurige controle mogelijk is over hoe het certificaat en de sleutel precies worden geïmporteerd.
certutil [opties] -importPFX [CertificateStoreName] PFXFile [Modifiers]

Certreq -ImportPFX daarentegen richt zich rechtstreeks op een specifieke cryptografische provider, inclusief hardwareproviders zoals HSM's en smartcardlezers. De syntaxis is positioneel in plaats van gebaseerd op modifiers:
certreq -ImportPFX PFXFile [Provider [Reader [ContainerPrefix [FriendlyName [Flags]]]]]

Opmerking: De optie -importPFX in certutil is een volledig gedocumenteerde en ondersteunde schakelaar. Daarentegen wordt -ImportPFX in certreq niet vermeld in de standaard help-uitvoer en wordt beschouwd als een ongedocumenteerde of minder bekende functionaliteit. Gebruik deze laatste met voorzichtigheid en controleer het gedrag altijd in niet-productieomgevingen.
Gebruik in de praktijk `certutil -importPFX` voor standaard importen van Windows-certificaten waarbij modifiers van belang zijn. Gebruik `certreq -ImportPFX` wanneer u rechtstreeks importeert in een benoemde hardwareprovider, een HSM KSP of een specifieke smartcardlezer.
Hoe kan Encryption Consulting helpen?
Encryption Consulting biedt gespecialiseerde diensten op maat om kwetsbaarheden te identificeren en risico's te beperken door: PKI-dienstenOnze strategische begeleiding stemt PKI-oplossingen af op organisatiedoelstellingen, verbetert de efficiëntie en minimaliseert kosten. Door samen te werken met Encryption Consulting kunnen organisaties het volledige potentieel van PKI-oplossingen benutten en tastbare financiële voordelen realiseren, terwijl ze tegelijkertijd sterke beveiligingsmaatregelen handhaven.
Encryptie Consulting's PKIaaS biedt een flexibele en veilige PKI-oplossing, afgestemd op uw specifieke behoeften, met voordelen zoals aanpasbare opties, hoge betrouwbaarheidsnormen en een beheerde aanpak met een laag risico. PKIaaS automatiseert sleutel- en certificaatbeheer, waardoor de operationele overhead wordt verlaagd en het risico op menselijke fouten wordt geminimaliseerd. Bovendien verbetert het de netwerkzichtbaarheid door certificaten te vereisen voor toegang. Het zorgt voor de ontwikkeling van de PKI-infrastructuur om de PKI-omgeving (cloud/hybride of on-premises) van uw organisatie te beheren.
CertSecure Manager heeft een uitgebreide reeks functies voor levenscyclusbeheer. Van detectie en inventarisatie tot uitgifte, implementatie, verlenging, intrekking en rapportage. CertSecure biedt een allesomvattende oplossing. Intelligente rapportgeneratie, waarschuwingen, automatisering, automatische implementatie op servers en certificaatinschrijving voegen lagen van verfijning toe, waardoor het een veelzijdige en intelligente aanwinst wordt.
Conclusie
Certutil en Certreq zijn krachtige tools voor het beheren van... certificaten in Windows-omgevingen. Hoewel hun basisfuncties algemeen bekend zijn, onthult een diepere duik in hun geavanceerde functies en verborgen instellingen een schat aan mogelijkheden.
Deze tools bieden inzicht in en controle over certificaatbeheer Dat gaat veel verder dan wat de MMC-console biedt. Serverbeheerders die tijd investeren in het begrijpen van alle mogelijkheden van certutil en certreq, met name de verborgen opties die via -uSAGE worden weergegeven, zullen merken dat ze PKI-problemen aanzienlijk sneller kunnen diagnosticeren en oplossen. Als het beheren en beveiligen van uw certificaatinfrastructuur meer diepgaande expertise vereist, staat het PKI-team van Encryption Consulting voor u klaar.
