Ajout de la personnalisation X à DeepBlueHash
This commit is contained in:
206
README.md
206
README.md
@ -1,163 +1,153 @@
|
||||
# DeepBlueCLI
|
||||
|
||||
DeepBlueCLI - a PowerShell Module for Threat Hunting via Windows Event Logs
|
||||
DeepBlueCLI - un module PowerShell pour la chasse aux menaces (Threat Hunting) via les journaux d'événements Windows.
|
||||
|
||||
Eric Conrad, Backshore Communications, LLC
|
||||
https://sahelcyber.com
|
||||
|
||||
deepblue `at` backshore `dot` net
|
||||
Des exemples de fichiers EVTX se trouvent dans le répertoire `.\evtx`.
|
||||
|
||||
Twitter: [@eric_conrad](https://twitter.com/eric_conrad)
|
||||
**Note :** Si votre antivirus s'affole après avoir téléchargé DeepBlueCLI, il réagit probablement aux fichiers EVTX inclus dans le répertoire `.\evtx` (qui contiennent des journaux de lignes de commande d'attaques malveillantes, entre autres artefacts). Les fichiers EVTX sont inoffensifs. Vous devrez peut-être configurer votre antivirus pour qu'il ignore le répertoire de DeepBlueCLI.
|
||||
|
||||
http://ericconrad.com
|
||||
## Table des Matières
|
||||
- [Utilisation](#usage)
|
||||
- [Journaux d'événements Windows traités](#windows-event-logs-processed)
|
||||
- [Événements détectés](#detected-events)
|
||||
- [Exemples](#examples)
|
||||
- [Sortie](#output)
|
||||
- [Configuration de la journalisation](#logging-setup)
|
||||
- Voir le [README de DeepBlue.py](READMEs/README-DeepBlue.py.md) pour les informations sur DeepBlue.py
|
||||
- Voir le [README de DeepBlueHash](READMEs/README-DeepBlueHash.md) pour les informations sur DeepBlueHash (mise en liste blanche via les journaux Sysmon)
|
||||
|
||||
Sample EVTX files are in the .\evtx directory
|
||||
## Usage :
|
||||
|
||||
**Note** If your antivirus freaks out after downloading DeepBlueCLI: it's likely reacting to the included EVTX files in the .\evtx directory (which contain command-line logs of malicious attacks, among other artifacts). EVTX files are not harmful. You may need to configure your antivirus to ignore the DeepBlueCLI directory.
|
||||
`.\DeepBlue.ps1 <nom_journal_evenements> <nom_fichier_evtx>`
|
||||
|
||||
## Table of Contents
|
||||
- [Usage](#usage)
|
||||
- [Windows Event Logs processed](#windows-event-logs-processed)
|
||||
- [Detected events](#detected-events)
|
||||
- [Examples](#examples)
|
||||
- [Output](#output)
|
||||
- [Logging setup](#logging-setup)
|
||||
- See the [DeepBlue.py Readme](READMEs/README-DeepBlue.py.md) for information on DeepBlue.py
|
||||
- See the [DeepBlueHash Readme](READMEs/README-DeepBlueHash.md) for information on DeepBlueHash (detective safelisting using Sysmon event logs)
|
||||
Consultez le [README sur Set-ExecutionPolicy](READMEs/Set-ExecutionPolicy.md) si vous recevez une erreur "l'exécution de scripts est désactivée sur ce système".
|
||||
|
||||
## Usage:
|
||||
|
||||
`.\DeepBlue.ps1 <event log name> <evtx filename>`
|
||||
|
||||
See the [Set-ExecutionPolicy Readme](READMEs/Set-ExecutionPolicy.md) if you receive a 'running scripts is
|
||||
disabled on this system' error.
|
||||
|
||||
### Process local Windows security event log (PowerShell must be run as Administrator):
|
||||
### Traiter le journal de sécurité local de Windows (PowerShell doit être exécuté en tant qu'Administrateur) :
|
||||
|
||||
`.\DeepBlue.ps1`
|
||||
|
||||
or:
|
||||
ou :
|
||||
|
||||
`.\DeepBlue.ps1 -log security`
|
||||
|
||||
### Process local Windows system event log:
|
||||
### Traiter le journal système local de Windows :
|
||||
|
||||
`.\DeepBlue.ps1 -log system`
|
||||
|
||||
### Process evtx file:
|
||||
### Traiter un fichier evtx :
|
||||
|
||||
`.\DeepBlue.ps1 .\evtx\new-user-security.evtx`
|
||||
|
||||
## Windows Event Logs processed
|
||||
## Journaux d'événements Windows traités
|
||||
|
||||
- Windows Security
|
||||
- Windows System
|
||||
- Windows Application
|
||||
- Windows PowerShell
|
||||
- Sécurité Windows
|
||||
- Système Windows
|
||||
- Application Windows
|
||||
- Windows PowerShell
|
||||
- Sysmon
|
||||
|
||||
### Command Line Logs processed
|
||||
### Journaux de ligne de commande traités
|
||||
|
||||
See [Logging setup](#logging-setup) section below for how to configure these logs
|
||||
Voir la section [Configuration de la journalisation](#logging-setup) ci-dessous pour savoir comment configurer ces journaux.
|
||||
|
||||
- Windows Security event ID 4688
|
||||
- Windows PowerShell event IDs 4103 and 4104
|
||||
- Sysmon event ID 1
|
||||
- Événement de sécurité Windows ID 4688
|
||||
- Événements Windows PowerShell ID 4103 et 4104
|
||||
- Événement Sysmon ID 1
|
||||
|
||||
## Detected events
|
||||
## Événements détectés
|
||||
|
||||
* Suspicious account behavior
|
||||
* User creation
|
||||
* User added to local/global/universal groups
|
||||
* Password guessing (multiple logon failures, one account)
|
||||
* Password spraying via failed logon (multiple logon failures, multiple accounts)
|
||||
* Password spraying via explicit credentials
|
||||
* Bloodhound (admin privileges assigned to the same account with multiple Security IDs)
|
||||
* Command line/Sysmon/PowerShell auditing
|
||||
* Long command lines
|
||||
* Regex searches
|
||||
* Obfuscated commands
|
||||
* PowerShell launched via WMIC or PsExec
|
||||
* Comportement de compte suspect
|
||||
* Création d'utilisateur
|
||||
* Utilisateur ajouté à des groupes locaux/globaux/universels
|
||||
* Tentatives de deviner le mot de passe (plusieurs échecs de connexion, un seul compte)
|
||||
* Attaque par pulvérisation de mots de passe via échec de connexion (plusieurs échecs, plusieurs comptes)
|
||||
* Attaque par pulvérisation de mots de passe via informations d'identification explicites
|
||||
* Bloodhound (privilèges d'administrateur attribués au même compte avec plusieurs ID de sécurité)
|
||||
* Audit de la ligne de commande/Sysmon/PowerShell
|
||||
* Lignes de commande longues
|
||||
* Recherches par expressions régulières (Regex)
|
||||
* Commandes obfusquées
|
||||
* PowerShell lancé via WMIC ou PsExec
|
||||
* PowerShell Net.WebClient Downloadstring
|
||||
* Compressed/Base64 encoded commands (with automatic decompression/decoding)
|
||||
* Unsigned EXEs or DLLs
|
||||
* Service auditing
|
||||
* Suspicious service creation
|
||||
* Service creation errors
|
||||
* Stopping/starting the Windows Event Log service (potential event log manipulation)
|
||||
* Commandes compressées/encodées en Base64 (avec décompression/décodage automatique)
|
||||
* EXE ou DLL non signés
|
||||
* Audit des services
|
||||
* Création de service suspecte
|
||||
* Erreurs de création de service
|
||||
* Arrêt/démarrage du service Journal d'événements Windows (manipulation potentielle des journaux)
|
||||
* Mimikatz
|
||||
* `lsadump::sam`
|
||||
* EMET & Applocker Blocks
|
||||
* Blocages EMET & Applocker
|
||||
|
||||
...et plus encore.
|
||||
|
||||
...and more
|
||||
## Exemples
|
||||
|
||||
## Examples
|
||||
| Événement | Commande |
|
||||
|---|---|
|
||||
| Manipulation du journal d'événements | `.\DeepBlue.ps1 .\evtx\disablestop-eventlog.evtx` |
|
||||
| Cible native Metasploit (sécurité) | `.\DeepBlue.ps1 .\evtx\metasploit-psexec-native-target-security.evtx` |
|
||||
| Cible native Metasploit (système) | `.\DeepBlue.ps1 .\evtx\metasploit-psexec-native-target-system.evtx` |
|
||||
| Cible PowerShell Metasploit (sécurité) | `.\DeepBlue.ps1 .\evtx\metasploit-psexec-powershell-target-security.evtx` |
|
||||
| Cible PowerShell Metasploit (système) | `.\DeepBlue.ps1 .\evtx\metasploit-psexec-powershell-target-system.evtx` |
|
||||
| Mimikatz `lsadump::sam` | `.\DeepBlue.ps1 .\evtx\mimikatz-privesc-hashdump.evtx` |
|
||||
| Création d'un nouvel utilisateur | `.\DeepBlue.ps1 .\evtx\new-user-security.evtx` |
|
||||
| Obfuscation (encodage) | `.\DeepBlue.ps1 .\evtx\Powershell-Invoke-Obfuscation-encoding-menu.evtx` |
|
||||
| Obfuscation (chaîne de caractères) | `.\DeepBlue.ps1 .\evtx\Powershell-Invoke-Obfuscation-string-menu.evtx` |
|
||||
| Tentatives de deviner le mot de passe | `.\DeepBlue.ps1 .\evtx\smb-password-guessing-security.evtx` |
|
||||
| Attaque par pulvérisation de mots de passe | `.\DeepBlue.ps1 .\evtx\password-spray.evtx` |
|
||||
| PowerSploit (sécurité) | `.\DeepBlue.ps1 .\evtx\powersploit-security.evtx` |
|
||||
| PowerSploit (système) | `.\DeepBlue.ps1 .\evtx\powersploit-system.evtx` |
|
||||
| PSAttack | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx` |
|
||||
| Utilisateur ajouté au groupe administrateur| `.\DeepBlue.ps1 .\evtx\new-user-security.evtx` |
|
||||
|
||||
|Event|Command|
|
||||
|-----|-------|
|
||||
|Event log manipulation|`.\DeepBlue.ps1 .\evtx\disablestop-eventlog.evtx`|
|
||||
|Metasploit native target (security)|`.\DeepBlue.ps1 .\evtx\metasploit-psexec-native-target-security.evtx`|
|
||||
|Metasploit native target (system)|`.\DeepBlue.ps1 .\evtx\metasploit-psexec-native-target-system.evtx`|
|
||||
|Metasploit PowerShell target (security)|` .\DeepBlue.ps1 .\evtx\metasploit-psexec-powershell-target-security.evtx`|
|
||||
|Metasploit PowerShell target (system)|` .\DeepBlue.ps1 .\evtx\metasploit-psexec-powershell-target-system.evtx`|
|
||||
|Mimikatz `lsadump::sam`|`.\DeepBlue.ps1 .\evtx\mimikatz-privesc-hashdump.evtx`|
|
||||
|New user creation|`.\DeepBlue.ps1 .\evtx\new-user-security.evtx`|
|
||||
|Obfuscation (encoding)|`.\DeepBlue.ps1 .\evtx\Powershell-Invoke-Obfuscation-encoding-menu.evtx`|
|
||||
|Obfuscation (string)|`.\DeepBlue.ps1 .\evtx\Powershell-Invoke-Obfuscation-string-menu.evtx`|
|
||||
|Password guessing|`.\DeepBlue.ps1 .\evtx\smb-password-guessing-security.evtx`|
|
||||
|Password spraying|`.\DeepBlue.ps1 .\evtx\password-spray.evtx`|
|
||||
|PowerSploit (security)|`.\DeepBlue.ps1 .\evtx\powersploit-security.evtx`|
|
||||
|PowerSploit (system)|`.\DeepBlue.ps1 .\evtx\powersploit-system.evtx`|
|
||||
|PSAttack|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx`|
|
||||
|User added to administrator group|`.\DeepBlue.ps1 .\evtx\new-user-security.evtx`|
|
||||
## Sortie
|
||||
|
||||
## Output
|
||||
DeepBlueCLI génère des objets PowerShell, permettant une variété de méthodes et de types de sortie, y compris JSON, HTML, CSV, etc.
|
||||
|
||||
DeepBlueCLI outputs in PowerShell objects, allowing a variety of output methods and types, including JSON, HTML, CSV, etc.
|
||||
Par exemple :
|
||||
|
||||
For example:
|
||||
| Type de Sortie | Syntaxe |
|
||||
|---|---|
|
||||
| CSV | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Csv` |
|
||||
| Format liste (défaut) | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| Format-List` |
|
||||
| Format tableau | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| Format-Table` |
|
||||
| GridView | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| Out-GridView` |
|
||||
| HTML | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Html` |
|
||||
| JSON | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Json` |
|
||||
| XML | `.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Xml` |
|
||||
|
||||
|Output Type|Syntax|
|
||||
|-----------|------|
|
||||
|CSV|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Csv`|
|
||||
|Format list (default)|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| Format-List`|
|
||||
|Format table|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| Format-Table`|
|
||||
|GridView|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| Out-GridView`|
|
||||
|HTML|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Html`|
|
||||
|JSON|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Json`|
|
||||
|XML|`.\DeepBlue.ps1 .\evtx\psattack-security.evtx \| ConvertTo-Xml`|
|
||||
## Configuration de la journalisation
|
||||
|
||||
## Logging setup
|
||||
### Événement de sécurité 4688 (Audit de la ligne de commande) :
|
||||
|
||||
### Security event 4688 (Command line auditing):
|
||||
Activez l'audit de la ligne de commande Windows : https://support.microsoft.com/fr-fr/kb/3004375
|
||||
|
||||
Enable Windows command-line auditing: https://support.microsoft.com/en-us/kb/3004375
|
||||
### Événement de sécurité 4625 (Échecs de connexion) :
|
||||
|
||||
### Security event 4625 (Failed logons):
|
||||
Nécessite l'audit des échecs de connexion : https://technet.microsoft.com/fr-fr/library/cc976395.aspx
|
||||
|
||||
Requires auditing logon failures: https://technet.microsoft.com/en-us/library/cc976395.aspx
|
||||
### PowerShell auditing (PowerShell 5.0):
|
||||
### Audit PowerShell (PowerShell 5.0) :
|
||||
|
||||
DeepBlueCLI uses module logging (PowerShell event 4103) and script block logging (4104). It does not use transcription.
|
||||
DeepBlueCLI utilise la journalisation des modules (événement PowerShell 4103) et la journalisation des blocs de script (4104). Il n'utilise pas la transcription.
|
||||
|
||||
See: https://www.fireeye.com/blog/threat-research/2016/02/greater_visibilityt.html
|
||||
Voir : https://www.fireeye.com/blog/threat-research/2016/02/greater_visibilityt.html
|
||||
|
||||
To get the PowerShell commandline (and not just script block) on Windows 7 through Windows 8.1, add the following to \Windows\System32\WindowsPowerShell\v1.0\profile.ps1
|
||||
```
|
||||
Pour obtenir la ligne de commande PowerShell (et pas seulement le bloc de script) sur Windows 7 jusqu'à Windows 8.1, ajoutez ce qui suit à `\Windows\System32\WindowsPowerShell\v1.0\profile.ps1` :
|
||||
```powershell
|
||||
$LogCommandHealthEvent = $true
|
||||
$LogCommandLifecycleEvent = $true
|
||||
```
|
||||
See the following for more information:
|
||||
- https://logrhythm.com/blog/powershell-command-line-logging/
|
||||
- http://hackerhurricane.blogspot.com/2014/11/i-powershell-logging-what-everyone.html
|
||||
|
||||
Thank you: [@heinzarelli](https://twitter.com/heinzarelli) and [@HackerHurricane](https://twitter.com/hackerhurricane)
|
||||
Consultez les liens suivants pour plus d'informations :
|
||||
- https://logrhythm.com/blog/powershell-command-line-logging/
|
||||
- http://hackerhurricane.blogspot.com/2014/11/i-powershell-logging-what-everyone.html
|
||||
|
||||
### Sysmon
|
||||
Sysmon
|
||||
|
||||
Install Sysmon from Sysinternals: https://docs.microsoft.com/en-us/sysinternals/downloads/sysmon
|
||||
Installez Sysmon depuis Sysinternals : https://docs.microsoft.com/fr-fr/sysinternals/downloads/sysmon
|
||||
|
||||
DeepBlue and DeepBlueHash currently use Sysmon events, 1, 6 and 7.
|
||||
|
||||
Log SHA256 hashes. Others are fine; DeepBlueHash will use SHA256.
|
||||
DeepBlue et DeepBlueHash utilisent actuellement les événements Sysmon 1, 6 et 7.
|
||||
|
||||
Journalisez les hachages SHA256. Les autres sont acceptables ; DeepBlueHash utilisera SHA256.
|
Reference in New Issue
Block a user