Всем привет.
Изучаем новое не забывая старое. Оказывается повысить информативность и расширить возможности функции штатного аудита событий в Windows-среде можно
используя утилиту System Monitor (Sysmon).
Часть 1.
Утилиту Sysmon можно загрузить с веб-сайта Microsoft Docs, из раздела Windows Sysinternals
download пакета Windows Sysinternals от Марка Руссиновича.
Для эксперимента берем специальную готовую сборку с GitHub
download, включающую файл конфигурации Sysmon Threat Intelligence Configuration от ION-STORM. Она ориентирована именно на выявление инцидентов информационной безопасности и может выступить качественной основой для создания твоих собственных файлов конфигурации.
Утилиту можно установить точечно на каждое рабочее место либо с использованием групповых политик (Group Policy) в домене.
Инсталирование в качестве сервиса:
>sysmon64.exe -i
Применение новой конфигурации:
>sysmon64.exe -с config.xml
Если все ок, то получим ответ:
Loading configuration file with schema version 4.00
Configuration file validated.
Configuration updated.
Тестовый config.xml может быть таким:
<Sysmon schemaversion="4.00">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<EventFiltering>
<!-- Log all drivers except if the signature -->
<!-- contains Microsoft or Windows -->
<DriverLoad onmatch="exclude">
<Signature condition="contains">microsoft</Signature>
<Signature condition="contains">windows</Signature>
</DriverLoad>
<ProcessTerminate onmatch="include">
<!-- Log network connection if the destination port equal 443 -->
<!-- or 80, and process isn't InternetExplorer -->
</ProcessTerminate>
<NetworkConnect onmatch="include">
<DestinationPort>443</DestinationPort>
<DestinationPort>80</DestinationPort>
<Image condition="is">C:\Program Files\OpenVPN\bin\openvpn-gui.exe</Image>
<Image condition="contains">Notepad</Image>
</NetworkConnect>
<NetworkConnect onmatch="exclude">
<Image condition="end with">iexplore.exe</Image>
<Image condition="end with">chrome.exe</Image>
</NetworkConnect>
<FileCreate onmatch="exclude">
<Image condition="is">C:\Windows\system32\mmc.exe</Image>
<Image condition="contains">chrome.exe</Image>
</FileCreate>
<FileCreateTime onmatch="exclude">
<Image condition="contains">chrome.exe</Image>
</FileCreateTime>
</EventFiltering>
</Sysmon>
Справка по параметрам конфигурации сервиса:
>sysmon64.exe -? config
Проверка текущей конфигурации:
>sysmon64.exe -c
Если все ок, то получим такую сводку:
Current configuration:
- Service name: Sysmon64
- Driver name: SysmonDrv
- HashingAlgorithms: SHA1,MD5,SHA256,IMPHASH
- Network connection: enabled
- Image loading: disabled
- CRL checking: disabled
- Process Access: disabled
Rule configuration (version 0.00):
- DriverLoad onmatch: exclude
Signature filter: contains value: 'microsoft'
Signature filter: contains value: 'windows'
- ProcessTerminate onmatch: include
- NetworkConnect onmatch: include
DestinationPort filter: is value: '443'
DestinationPort filter: is value: '80'
Image filter: is value: 'C:\Program Files\OpenVPN\bin\openvpn-gui.exe'
Image filter: contains value: 'Notepad'
- NetworkConnect onmatch: exclude
Image filter: end with value: 'iexplore.exe'
Image filter: end with value: 'chrome.exe'
- FileCreate onmatch: exclude
Image filter: is value: 'C:\Windows\system32\mmc.exe'
Image filter: contains value: 'chrome.exe'
- FileCreateTime onmatch: exclude
Image filter: contains value: 'chrome.exe'
Инструментарий настолько гибкий, что можно задавать любые конструкции, нацеленные на то, чтобы отслеживать определенные действия или исключать их из твоего поля зрения.