Activation des journaux (logs) de Windows pour la détection de virus en mémoire

Voici comment installer un système qui permet de voir ce qui se passe sur vos postes de travail en entreprise. Chacune des activités de Windows est enregistré de façon atomique sur un serveur. De cette façon, vous pouvez voir ce qui se passe (ou ce qui s’est passé lors d’un intrusion). Vous pouvez également procéder à différents tests (pour voir si vous pouvez les détecter).

Allons-y!

Pour l’analyse du comportement de malwares en mémoire, des injections de processus ou ceux utilisant le hallowing, il faut activer les journaux dans Windows Enterprise.

Activation des logs pour PowerShell

cela permet de savoir quels scripts powershell sont exécutés, car powershell est très souvent utilisé pour l’exploitation

Donc, dans l’éditeur des politiques de groupes:

gpedit.msc
Local Computer Policy
Administrative Templates
Windows Components
Windows PowerShell

Il faut activer ces options

Turn on PowerShell Transcription
Enable
Cocher Include invocation headers

Turn on PowerShell Script Block Logging
Enabled

Turn on Module Logging
Enabled
À droite de Module Names, cliquez Show…
Value *
Cliquer Apply

Activation des journaux pour le pare-feu

gpedit.msc
Local Computer Policy
Windows Settings
Security Settings
Windows Defender Firewall with Advanced Secuirty
Windows Defender Firewall with Advanced Security – Local Group Policy Object
Dans Overview : Windows Defender Firewall Properties

Dans Domain Profile, Private Profile et Public Profile:

Firewall state : On (recommended)
On bloque les connections entrantes (Inbound connections) : Block (default)
S’assurer que les connections sortantes sont permises : Allow (default)

Maintenant, on configure des paramètres de connexion pour chacun des profiles (domain private, public): Specify logging settings for troubleshooting : customize…
Mettre %systemroot%\system32\logfiles\firewall\pfirewall.log

Enlever la limite de 4096 en décochant
Log dropped packets et Log successful connections

Instrumentation de sysmon pour une meilleure détection des comportements attribués à des malware

sysmon (Windows Sysinternals) est un service qui permet de monitorer la création de processus, les communications réseau, le chargement de drivers ou de DLL, l’accès en lecture/écriture à des disques ou volumes, etc.

Nous intégrerons des modules supplémentaires à Sysmon (nécessite sysmon 12 ou ultérieur) pour analyser l’activité potentielle de logiciels espion sur le poste de travail

les modules sysmon de Olaf hartong

pour l’installation de sysmon et des modules,

créer un répertoire sysmon dans c:\program files

extraire les exécutables de sysmon dans ce répertoire

extraire aussi les modules téléchargés à partir de github dans ce même répertoire

dans un prompt administrator

cd c:\program files\sysmon

Pour voir la configuration (et l’éditer éventuellement)

notepad sysmonconfig.xml

Pour l’installation permanente du service

sysmon64.exe -i sysmonconfig.xml

installation du EDR Wazuh

securityonion wazuh (version 2.3)

Il faut d’abord configurer le server (securityonion). Vous pouvez avoir les détails dans la documentation de wazuh

Ce logiciel est disponible pour plusieurs systèmes d’exploitation (Windows/Unix/Linux/FreeBSD

La dernière version est 3.13.6-1 lors de l’écriture de cette page

https://packages.wazuh.com/3.x/windows/wazuh-agent-3.13.6-1.msi

Installer ce package dans Windows

ssh admin@server

docker exec -it so-wazuh dpkg -l | grep wazuh

devrait être la même version que l’agent

sudo so-wazuh-agent-manage -h

sudo so-wazuh-agent-manage -a agent_ip

Nous allons avoir une confirmation que l’agent a été ajouté ainsi qu’un ID

Pour avoir la clé de l’agent

sudo so-wazuh-agent-manage -e le_ID

sur le poste dans un cmd administrator
cd c:\program files (x86)\ossec-agent
dir manage agents.exe
manage_agents.exe /?
import key from the server (I)
Coller la clé

dir *.conf

notepad ossec.conf

configurer “server address”

Exécuter l’agent et faire un rafraîchissement si nécessaire : vous devriez voir l’adresse du serveur ainsi que la clé de l’agent

Configuration de Winlogbeat

Nous devons maintenant nous connecter sur l’interface de l’administration du serveur securityonion via https

dans la partir Downloads, nous téléchargeons l’utilitaire Winlogbeat. Lire le commentaire par rapport à so-allow…

Installer winlogbeat-oss dans windows

Copier c:\ProgramData\Elastic\Beats\winlogbeat\winlogbeat.example.yml dans winlogbeat.yml

notepad winlogbeat.yml (comme administrator)

ajouter dans la section winlogbeat.event_logs:

– name: Microsoft-Windows-Sysmon/Operational
– name: Microsoft-Windows-Windows-Defender/Operational
– name: Microsoft-Windows-Windows Firewall With Advanced Security/Firewall

mettre la section output.elasticsearch: en commentaire (au complet)

Dans output.logstash, configurer hosts (adresse du serveur securityonion)

net stop winlogbeat

net start winlogbeat

Configuration des logs de Windows defender

gpedit.msc

Local Computer Policy
Computer Configuration
Windows Settings
Scurity Settings
Local Policies
Audit Policy
Audit object access
Audit theses attemps: Success, Failure

Tester un virus sur le poste de travail

winlogbeat -e : permet de savoir si le service fonctionne correctement

hostname

whoami

whoami /priv

tasklist /v

Dans l’interface de l’administration de securityonion, dans tools, kibana

Event Category, Host

Nous pouvons voir les différents logiciels qui monitorent les EDR (sysmon, suricata, zeek, ossec, sysmon, etc…) dans le serveur securityonion.

Atomic red team

Maintenant, il est temps de tester différentes techniques d’attaque pour voir si vous pouvez les détecter. Il existe un framework s’appuyant sur les techniques MITRE pour se faire : Atomic read team

Installer aussi Invoke-AtomicRedTeam (autres projets redcanaryco)

Invoke-AtomicTest T1003 -ShowDetailsBrief (ie mimikatz)
Invoke-AtomicTest T1003

Vous devriez maintenant avoir tous les outils pour l’analyse de la sécurité sur chacun des postes de travail dans votre entreprise.

Leave a Reply