Un intruso può ancora riuscire con pass-the-hash o pass-the-ticket su reti Windows 10 / Server 2016 in cui Credential Guard è abilitato?

10

In sintesi: Credential Guard rende gli attacchi pass-the-hash e pass-the-ticket effettivamente non disponibili sulle reti di macchine Windows 10 / Windows Server 2016? In caso contrario, come si acquisiscono ancora hash o ticket da passare?

Da quanto ho appreso sui metodi di test delle penne e malintenzionati nel corso degli anni che li ho studiati sul serio, una delle scoperte più felici che un attore offensivo può fare accade penetrando nella rete Windows di un target e trovando che non è configurato correttamente e amp; amministrato per resistere a pass-the-hash e / o pass-the-ticket attacchi. In tali situazioni, diventa spesso fastidiosamente facile per l'intruso (usando uno strumento come mimikatz) scaricare gli hash delle password NTLM e le credenziali di Kerberos contenute nella memoria o sul disco della pedana che era originariamente compromessa e usarle per spostare con successo lateralmente e violare altre caselle sulla rete. Nel migliore dei casi, è possibile prima o poi mettere le mani sulle chiavi del regno: un hash NTLM o un ticket Kerberos per un amministratore di dominio o un amministratore aziendale. E se ciò accade ... l'obiettivo è in un mondo di guai.

Sfortunatamente per il reato, in Windows 8.1, Windows Server 2012 R2, Windows 10 e Windows Server 2016 Microsoft ha implementato una serie di misure per cercare di rendere più difficili gli attacchi pass-the-hash e passing-the-ticket off. Il più ambizioso di questi è chiamato Credential Guard , ed è arrivato in Windows 10 Enterprise sul client e Windows Server 2016. The di come Credential Guard sembra funzionare tecnicamente sono un po 'complicati. Ma a un livello elevato le cose sono più semplici: Windows sfrutta le funzionalità di virtualizzazione presenti nei nuovi processori Intel e AMD per racchiudere l'archivio di credenziali esistente in memoria su una macchina Windows in una speciale tipo di macchina virtuale. Una macchina virtuale che (in teoria) anche un programma che riesce a ottenere i privilegi di amministratore / sistema sul sistema operativo non può penetrare. Così, come il passo va anche se si riesce a ottenere il malware su un PC, e persino riescono ad elevare i tuoi privilegi su quel PC fino a SYSTEM, se quel PC ha abilitato Credential Guard su di esso e tu provi a usare uno strumento come mimikatz per scaricare l'archivio delle credenziali non otterrai nulla di utile per passare l'hash o passare il biglietto.

In teoria.

Diciamo che sei un tester di penna che si trova di fronte a un dominio Windows composto esclusivamente da workstation Windows 10 Enterprise, server Windows Server 2016 e un controller di dominio Windows Server 2016. Tutti in esecuzione con Credential Guard abilitato. Se desideri utilizzare il pass-the-hash o il pass-the-ticket per il movimento laterale, sei semplicemente fregato? Oltre a essere in grado di scaricare gli hash & biglietti nell'archivio delle credenziali, quali altri metodi potrebbe utilizzare un utente malintenzionato per ottenere hash o biglietti che possono essere passati? Puoi bypassare o disabilitare Credential Guard? O sei di fronte a rinunciare semplicemente a passare hash / ticket e provare altri modi per fare movimento laterale?

Modifica : Cordiali saluti, si scopre che nell'aggiornamento del mese di luglio di Windows 10 "Microsoft ha introdotto silenziosamente Remote Credential Guard , apparentemente progettato per impedire che le credenziali vengano mai inviate alla casella remota quando si avvia una connessione desktop remoto. (La stessa idea generale di Modalità di amministratore con restrizioni per RDP, suppongo, eccetto che migliorata.) Un diagramma" utile "dalla MS:

    
posta mostlyinformed 03.11.2016 - 10:13
fonte

4 risposte

1

Contro avversari normali (non APT, ad esempio criminali informatici) sarà piuttosto efficace. Ma mi concentrerò sulla questione di come bypassare Credential Guard in modo da poter avere un'idea della sofisticazione necessaria.

Nel link che hai fornito, Microsoft ha una visuale che descrive i vari anelli di sicurezza di un sistema.

Comelamaggiorpartedellepersone,MicrosoftmetteHypervisor(ring-1)direttamentesopral'hardware.

Ovviamente,comprometterebbeilloropuntoesolleverebbedomandesedovesseesserciunostratotrailloromeccanismodisicurezzael'hardware.

Butifigooglering-2idon'tgetanyfancygraphicsdescribinganythingmoreprivileged...

No.MariceveraiunamenzionediSMMquaelà.Questodisolitononèqualcosasucuipuoisperimentare,quindinoncisonomolterisorsesudiesso.

Tuttavia questo video e questo mazzo di diapositive descrive gli exploit per" anelli "inferiori a Hypervisor e potrebbe eludere il meccanismo che menzioni: .

... we have encountered systems in the wild where the SMRAM is locked by a non-integrity measured BIOS, thereby preventing an SMI intercept from being generated when the CPU is in guest mode. In other words, an SMM handler (as a result of an SMI) can execute in SMM mode without the hypervisor having any control over it. This leaves a hypervisor on such hardware potentially vulnerable to malicious SMM handler code.

La NSA ha sviluppato più rootkit per questa modalità operativa. Da wikipedia su SMM :

By design, the operating system cannot override or disable the SMI. Due to this fact, it is a target for malicious rootkits to reside in,[12][13][14] including NSA's "implants"[15] which have individual code names for specific hardware, like SOUFFLETROUGH for Juniper Networks firewalls,[16] SCHOOLMONTANA for J-series routers of the same company,[17] DEITYBOUNCE for DELL,[18] or IRONCHEF for HP Proliant servers.[19]

    
risposta data 07.11.2016 - 10:26
fonte
0

Credential Guard è molto efficace contro l'attacco pass-the-hash in quanto rimuove il supporto per i tutti protocolli / API che utilizzano l'hash NTLM.

Sembra impedire il pass-the-ticket nascondendo il TGT nella VM. Questo è valido solo se l'LSA nella VM (LSAIso) può effettivamente controllare le richieste di ticket, non sono abbastanza sicuro di come ottenere abbastanza informazioni per farlo.

Le vulnerabilità che hanno compromesso l'host possono anche essere applicate alla VM. L'approccio VM solo riduce la superficie di attacco non eliminandola. Gli attacchi più banali come i keylogger non vengono ancora impediti.

La rimozione del supporto dell'hash NTLM (soprattutto CredSSP) costringerà molte applicazioni / servizi che non usano Kerberos a richiedere credenziali, possibilmente tramite semplici dialoghi / moduli Web privi della protezione del desktop sicuro e che consentirebbero privilegi non privilegiati malware per intercettare le credenziali. Queste app potrebbero utilizzare HTTP Basic senza HTTPS che espone la password in testo semplice alla rete. (HTTPS non era richiesto per HTTP Negotiate / SPNEGO per funzionare in modo sicuro (sans la capacità del server di passare l'hash)). Per evitare richieste di credenziali su ogni richiesta, le applicazioni probabilmente le metteranno nella cache nella propria memoria che è meno protetta di LSASS. Gli usi possono anche scegliere una password più breve a causa della perdita di SSO.

In un certo senso, la distribuzione di Credential Guard in un ambiente che si basa su SSO basato su NTLM non migliora necessariamente la sicurezza.

    
risposta data 09.11.2016 - 19:56
fonte
0

Sfondo

Credential Guard utilizza un'istanza Hyper-V personalizzata per archiviare le credenziali dell'utente. Esiste ancora un'istanza locale dell'autorità di sicurezza locale, ma comunica con l'istanza virtualizzata tramite un canale protetto speciale. La natura esatta di questo canale non è documentata pubblicamente, ma solo LSASS può usarlo.

Vettori di attacco

Da decenni, ci sono stati tentativi di "uscire" dalle macchine virtuali e compromettere l'hypervisor. Questi attacchi sono solitamente chiamati escape della macchina virtuale attacchi.

Diversi livelli di successo sono stati dimostrati contro diversi hypervisor, che vanno dalla divulgazione di informazioni all'esecuzione di codice arbitrario. La maggior parte dei principali hypervisor ha rilevato alcune vulnerabilità.

Vulnerabilità Microsoft

Ci sono stati escape di codice arbitrario contro Hyper-V. Questi attacchi hanno interessato tutte le versioni da Server 2008 a Server 2016, incluse le varianti desktop.

Non è chiaro se gli aggressori possano aver estratto le credenziali da un ospite di Credential Guard dopo essere fuggito da un ospite di Windows 10, ma "codice arbitrario" significa che avrebbero potuto provare quasi a fare ciò.

Entrambe le vulnerabilità Hyper-V sono state annunciate e corrette in MS17-008 .

Analisi

Anche se non ci sono mai stati casi di attacchi alla Guardia Credenziale in natura, tali attacchi sono sempre stati teoricamente possibili. Inoltre, il precedente attacco di codice arbitrario contro Hyper-V dimostra che tali attacchi sono del tutto plausibili.

Credential Guard blocca efficacemente la forma più comune di spostamento laterale all'interno di una rete Windows. È la barriera tecnica più strong che Microsoft abbia implementato negli anni successivi ai primi attacchi PtH. È una difesa molto strong, ma sarebbe sciocco pensare che sia completamente efficace e immune dal compromesso.

Conclusione

Come per qualsiasi misura di sicurezza del suono, dovresti implementarlo e supporre che possa fallire. Ciò è coerente con il principio di difesa approfondita , che cerca di lancia il maggior numero possibile di ostacoli significativi contro un aggressore.

A causa di una serie di fattori --- potenziali attacchi a Credential Guard, mancanza di supporto su macchine precedenti, mancanza di disponibilità su vecchie versioni di Windows --- è ancora necessario mantenere altre mitigazioni PtH per il prossimo futuro.

    
risposta data 03.04.2018 - 16:25
fonte
-2

Sì, sembra che Credential Guard abbia effettivamente protetto le credenziali. Le vulnerabilità in qualsiasi componente (trustlet, kernel sicuro, VSM o anche hypervisor) possono creare un percorso per raggiungere l'LSA isolato, sarebbe una cosa diversa. Ma, per rispondere alla domanda che hai posto, direi che la presente implementazione è efficace nel prevenire attacchi stile Pass-the-hash. L'unica opzione che vedo è trovare un sistema mal configurato o obsoleto per individuare le credenziali.

    
risposta data 07.11.2016 - 10:49
fonte

Leggi altre domande sui tag