LOLBins e o System Monitor (Sysmon)

LOLBins (Living Off The Land Binaries) são binários ou utilitários legítimos do sistema operacional e outras ferramentas confiáveis que são usados pelos atacantes para executar atividades maliciosas em uma tentativa de evitar a detecção de soluções de segurança.

Os atacantes usam LOLBins porque essas ferramentas já estão presentes no sistema, não requerem download ou instalação e são frequentemente confiáveis ​​pelas soluções de segurança do sistema.

Os eventos do Sysmon, por sua vez, são informações detalhadas que podem ser coletadas em um sistema Windows para monitorar e analisar atividades suspeitas e maliciosas. O Sysmon pode registrar eventos relacionados à execução de processos, comunicação em rede, criação e exclusão de arquivos, entre outras atividades.

A relação entre LOLBins e eventos do Sysmon é que a monitoração dos eventos do Sysmon pode ajudar a detectar atividades maliciosas realizadas por LOLBins. Como os atacantes muitas vezes usam LOLBins para evitar a detecção, o registro e análise dos eventos do Sysmon pode ajudar a identificar comportamentos anômalos que possam indicar atividades maliciosas.

Dessa forma, a monitoração dos eventos do Sysmon pode ser uma importante ferramenta de segurança cibernética para detectar e impedir ataques que utilizam LOLBins
Exemplo de um evento do Sysmon.

Hunting

Criei esse script em PowerShell utiliza o cmdlet Get-WinEvent para consultar os últimos 10 eventos do log do Sysmon com ID 1, e em seguida, utiliza o cmdlet ForEach-Object para executar um bloco de código para cada evento retornado pela consulta.

Para instalar o sysmon use o tutorial Threat Hunting com System Monitor (Sysmon)

Dentro do bloco de código, o script converte o evento retornado em um objeto XML do PowerShell e, em seguida, acessa os campos de dados do evento, incluindo “OriginalFileName“, “CommandLine“, “User” e “TimeCreated“.

O script cria um objeto personalizado (PSCustomObject) para cada evento retornado, com as propriedades “Date and Time”, “OriginalFileName”, “CommandLine” e “User”. As propriedades são preenchidas com os valores correspondentes dos eventos do Sysmon.

Por fim, o script exibe a saída dos objetos personalizados em formato de tabela, com largura de coluna ajustada automaticamente utilizando o cmdlet Format-Table.

Get-WinEvent -FilterHashtable @{Logname='Microsoft-Windows-Sysmon/Operational'; ID=1} -MaxEvents 10 | ForEach-Object {
$eventXml = [xml]$_.ToXml()
$eventData = $eventXml.Event.EventData.Data
$originalFileName = $eventData | Where-Object { $_.Name -eq 'OriginalFileName' } | Select-Object -ExpandProperty '#text'
$commandLine = $eventData | Where-Object { $_.Name -eq 'CommandLine' } | Select-Object -ExpandProperty '#text'
$user = $eventData | Where-Object { $_.Name -eq 'User' } | Select-Object -ExpandProperty '#text'
$timeCreated = $_.TimeCreated
$obj = [PSCustomObject]@{
'Date and Time' = $timeCreated.ToLocalTime().ToString('yyyy-MM-dd HH:mm:ss')
'OriginalFileName' = $originalFileName
'CommandLine' = $commandLine
'User' = $user
}
$obj
} | Format-Table -AutoSize
Note os comandos maliciosos detectados.

Referências

Anúncio

About Daniel Donda 550 Articles
Olá, meu nome é Daniel Donda e sou especialista em cibersegurança, autor de livros, professor e palestrante. Saiba mais

Be the first to comment

Leave a Reply

Your email address will not be published.


*