Controlla i certificati radice e le autorità di certificazione sul nuovo PC

3

Il primo Lenovo è stato acquistato con Superfish con nuovi PC, che includeva un'autorità di certificazione autofirmata universale e ora Dell è stata prelevata dai PC con un certificato di root simile .

Quali passi posso fare quando ottengo un nuovo PC per assicurarmi che non ci siano cattive autorità di certificazione o certificati di root?

  • Esistono programmi che possono controllarlo automaticamente?
  • Esistono delle guide che possono essere seguite per accertarsi che siano installate solo le autorità di certificazione e i certificati standard?
posta JonnyWizz 24.11.2015 - 09:31
fonte

1 risposta

6

Modifica 2015-11-25

Il progetto "PowerShell-PKI" sembra promettente

Bryan Lockwood ha realizzato un bel progetto su GitHub:

Ed ecco il suo post sul blog che l'ha introdotto

Puoi eseguire lo script in questo modo:

  1. Copia Nov2015-WindowsRootCAList.txt in Nov2015-WindowsRootCAList.NOSPACES.txt

  2. aggirare un bug: rimuovere manualmente i caratteri dello spazio finale in Nov2015-WindowsRootCAList.NOSPACES.txt .
    (Altrimenti lo script segnalerà TUTTO come non attendibile.)
    (Ti suggerisco di utilizzare la funzione di ricerca e sostituzione del tuo editor di testo preferito e di aggiungere solo tutti gli spazi.)

  3. Sorgente punto-sorgente:
    PS C:\Powershell-PKI-master> . .\Audit-TrustedRootCA.ps1 3>&1 | out-null

  4. Esegui la funzione:
    PS C:\Powershell-PKI-master> Audit-Roots -FilePath .\Nov2015-WindowsRootCAList.NOSPACES.txt -OutputPath .\

Lo script l'archivio di fiducia di Windows (negozi?) contro un elenco di hash noti-buoni.

Hash-list è uguale a certutil.

L'origine di questo hash-list non mi è del tutto chiara.

Quindi ho deciso di generare gli hash con un po 'di Cygwin-Bash-Scripting:

$ certutil.exe -generateSSTFromWU wuroots.sst
$ certutil.exe -dumpPFX wuroots.sst  | grep 'Hash' | tr -d ' ' | tr 'a-z' 'A-Z' | cut -d ':' -f2 | sed 's/$/ /' | sort > wuroots-hashes-pspkiformat.txt

E si scopre che gli hash di certutil e gli hash di GitHub sono identici:

$ diff --report-identical-files -- wuroots-hashes-pspkiformat.txt Nov2015-WindowsRootCAList.txt
Files wuroots-hashes-pspkiformat.txt and Nov2015-WindowsRootCAList.txt are identical

Thread Twitter correlato

Questo thread Twitter avviato dal ricercatore tedesco della sicurezza Hanno Böck mi ha portato al progetto PowerShell.

Forse CertUtil e MMC da resettare?

C'è stato un ottimo articolo del blog il mese scorso:

Mike delinea una procedura per generare un contenitore di certificati .sst con solo i certificati predefiniti recuperati da Windows Update e quindi usa MMC per selezionarli e sceglierli.

certutil -generateSSTFromWU rootcas.sst
invoke-item rootcas.sst

Non l'ho provato, ma suppongo che buttare fuori ogni CA e poi importare tutte le CA predefinite dal file SST dovrebbe fare parte del trucco.

Nota: non so come Windows gestisca le CA autofirmate nell'archivio "Intermediate" o altrove. Io penso che il negozio sia comunque una cache e può essere abboccato perché verrà comunque ricostruito automaticamente, ma non ne sono sicuro.

Arte precedente

EDIT. Ho appena notato che Tom Leek ha dato essenzialmente la stessa risposta a una domanda simile l'anno scorso:

risposta data 24.11.2015 - 10:50
fonte