MODELOS DE SINTAXES SQL PARA A CONSTRUÇÃO DE PARSERS NA CONSULTA DE LOGS DE EVENTOS NO FORMATO .EVTX

REGISTRO DOI: 10.69849/revistaft/th102502121360


Luiz Hamilton Roberto da Silva 1


Resumo

A análise de registros de eventos – conhecidos como logs – em equipamentos e sistemas computacionais é essencial para identificar atacantes, delinear o modo de ataque e expor as falhas exploradas. Sob essa perspectiva, os logs também desempenham um papel fundamental na análise forense. Diversos estudos e pesquisas evidenciam a utilização desses registros como parte do conjunto de evidências empregadas na apuração de investigações forenses. A existência de uma política de segurança da informação bem definida na organização é crucial para garantir a manutenção e o correto gerenciamento dos logs de comunicação em redes e sistemas computacionais, possibilitando o rastreamento de incidentes para uma eventual intervenção forense. Essa intervenção envolve um conjunto estruturado de ações, incluindo a coleta, o armazenamento e o tratamento de logs provenientes de equipamentos, aplicações e sistemas operacionais.

A atuação forense na análise de eventos busca coletar elementos que permitam individualizar comportamentos suspeitos de usuários, sejam internos ou externos, ou identificar eventos sistêmicos que possam comprometer o uso aceitável dos recursos computacionais ou violar a tríade da segurança da informação: confidencialidade, integridade e disponibilidade. No entanto, observa-se que, na maioria dos centros de operação (datacenters) corporativos, não há a adoção de servidores dedicados para a centralização dos logs. Muitas organizações limitam-se ao armazenamento descentralizado dos registros de eventos em seus sistemas e hosts, sem um tratamento integrado dos dados coletados.

O objetivo principal deste trabalho é estabelecer um modelo para a análise forense de logs, permitindo a identificação das ações de usuários em redes com servidores de autenticação. Para isso, propõe-se a aplicação de scripts no formato PS1 (Windows PowerShell), atuando diretamente sobre os arquivos de logs dos Eventos de Segurança (security.evtx) e gerando relatórios específicos sobre o serviço de autenticação (Active Directory). Destaca-se que as funções implementadas pelos scripts desenvolvidos não são disponibilizadas nativamente pelos sistemas Windows, tornando essa ferramenta um recurso valioso para atividades forenses.

Palavras-chave: Log de Eventos. Parsers SQL. Perícia em Logs. Trilhas para Auditoria.

Abstract

The analysis of event logs in computing systems and devices is essential for identifying attackers, mapping attack methods, and exposing exploited vulnerabilities. From this perspective, logs play a fundamental role in forensic analysis. Several studies and research highlight the use of event records as part of the evidence set employed in forensic investigations. A well-defined information security policy within an organization is crucial for ensuring the proper management and retention of communication logs in networks and computing systems, facilitating the tracking of incidents for forensic intervention. This intervention involves a structured set of actions, including the collection, storage, and processing of logs from devices, applications, and operating systems.

Forensic event analysis focuses on gathering elements that help distinguish suspicious user behavior—whether internal or external—or identify system events that could compromise the acceptable use of computing resources or violate the security triad: confidentiality, integrity, and availability. However, it is observed that most corporate data centers do not implement dedicated log servers. Instead, organizations often store event records in individual systems and hosts without a centralized and structured approach to processing these logs.

This study aims to establish a forensic log analysis model to identify user actions within networks utilizing authentication servers. To achieve this, the study proposes using PS1 (Windows PowerShell) scripts to process security event log files (security.evtx) and generate reports on authentication service activities (Active Directory). Notably, the functions implemented by these scripts are not natively available in Windows systems, making this tool a valuable asset for forensic investigations.

Keywords: Event Log. SQL Parsers. Log Forensics. Audit Trails.

1. Motivação e Justificativa

As investigações forenses computacionais conforme a análise de (HERRERÍAS; GÓMEZ, 2010) são baseadas no processo de busca de evidências para determinar as técnicas e as atividades de um intruso. As ferramentas atuais de análise de logs estão focadas principalmente na coleta de evidências do sistema alvo, no entanto, sua análise é uma tarefa altamente complicada. E, ainda, estes dois autores asseveram que a computação forense é o uso de técnicas analíticas e científicas aplicadas à infraestrutura de computador, a fim de identificar, preservar, analisar e exibir provas em uma corte de justiça e, o objetivo maior da análise forense é executar um processo de busca de evidências para remontar as ações que levaram o sistema de um estado seguro até o momento em que a intrusão foi detectada.

Então, conclui-se que em alusão à premente necessidade de se buscar a apuração dos fatos corridos em uma invasão, temos a recomendação de (SON; et al., 2015), onde afirma que mesmo após um determinado evento de violação de segurança ter sido perpetrado e a equipe de resposta a incidentes registrar o fato ocorrido, há que se buscar a identificação do tipo de incidente, além de identificar os meios utilizados para o ataque, ou ainda se possível, identificar o ente atacante. É pertinente que se tenha os registros de eventos ocorridos diariamente e, manter-se esses registros em local seguro e disponibilizar sobre estes uma posterior análise que comprove a fonte da vulnerabilidade, objetivando prover uma mudança sistemática com a finalidade de sanar as vulnerabilidades e livrar-se do alcance de novas ameaças. No atual cenário das redes de computadores, há de se que fundir as funções de gestão de riscos e gestão de segurança no ambiente corporativo, para que se possa gerar registros de eventos que sejam suficientes para a apuração forense, pois de outra forma esses eventos não estarão disponíveis para uma análise efetiva.

2. Registro de Eventos de Sistema (Logs)

Na pesquisa de (TSUNODA; KEENI, 2014) define-se os registros de eventos de sistema, com sendo as mensagens de logs as quais são geradas por sistemas operacionais, por aplicativos e por equipamentos de hardware e, nestas mensagens estão contidas informações importantes sobre a saúde e o funcionamento de um sistema, estas mensagens também são de grande importância para o gerenciamento da segurança, para a auditoria de equipamentos e sistemas e, para a análise forense em uma rede local (intranet). Assim, um sistema de registro de eventos que gera, encaminha, coleta e armazena as mensagens de logs, deve ser monitorado e gerenciado como todos os outros componentes da infraestrutura de Tecnologia da Informação e Comunicação (TIC) de uma organização, para garantir que este sistema esteja funcionando normalmente, ou seja, garantir que os logs estejam sendo coletados e arquivados conforme as premissas da segurança da informação.

E na definição dada por (DU; LI, 2016), o registro de eventos, em ambiente computacional, é a documentação produzida de forma automática ou iniciada a partir de um sistema ou host, com data e hora de eventos relevantes para um sistema em particular. E, ainda, na mesma pesquisa afirma-se que os registros de eventos de sistema têm sido frequentemente utilizados como um recurso valioso com vistas a melhorar a saúde e a estabilidade de um sistema computacional – software ou hardware. Um procedimento típico para a análise dos logs de um sistema é primeiro analisar os arquivos de logs desestruturados e, em seguida, aplicar a análise de dados nos dados estruturados resultantes. No contexto atual das redes de computadores, todos os equipamentos de hardware, os aplicativos e os sistemas de software produzem arquivos de log e, tratá-los é uma exigência para o entendimento das ocorrências que os geraram.

3. A Computação Forense e os Arquivos de Logs

Na análise do trabalho de (HERRERÍAS; GÓMEZ, 2007) destaca-se que o papel exercido pela computação forense é a procura de evidências para remontar as ações que levaram um sistema computacional do seu estado tido como normal até o cometimento da ação delituosa. Destacando que a principal fonte de dados para uma investigação forense é a informação fornecida pelos arquivos de logs. Os arquivos de logs são gerados pelos aplicativos para manter um registro das ações ocorridas no sistema. No entanto, a enorme quantidade de eventos registrados complica a investigação forense.

3. Ferramentas de Análise de Logs

A abordagem de visualização para a análise de logs, é discutida por (STEARLEY, 2004), afirmando que esta é uma abordagem popular para análise de logs e, que embora a apresentação de visualização de logs em gráficos bidimensionais ou tridimensionais sejam representações muito interessantes de dados de logs, nenhuma métrica de similaridade ou tipo de apresentação é amplamente aceita como uma resposta efetiva ao problema de análise de logs.

O estudo dos eventos registrados em arquivos de logs de sistema com o objetivo de se caracterizar o comportamento de um sistema e de usuário, conforme o abordado na pesquisa de (LIM; SINGH; YAJNIK, 2008), tem sido um foco de diversas pesquisas, como exemplo os logs de navegação Web onde contém padrões de pesquisa dos usuários e o comportamento da navegação, sendo que estes registros foram estudados para melhorar o uso de sites web e, também, para fornecer de forma direcionada aos usuários publicidade de produtos que tenham relação com suas pesquisas e comportamentos. Os registros do protocolo Syslog, logs de transações e registros de erros também foram matéria de mineração de dados, com o fim de detectar falhas ou comportamento anômalo em sistemas computacionais. E, outra técnica de mineração é a visualização do registro de eventos, que se tornou uma área fértil para a pesquisa de mineração de dados, onde se emprega a técnica de visualização abstrata do arquivo de logs, como ferramenta para determinar o estado de um sistema.

No trabalho de pesquisa de (MYERS; GRIMAILA; MILLS, 2011), defende-se que o procedimento de análise de dados em arquivos de registo de eventos apresenta benefícios ao processo de gerenciamento de eventos segurança e aos recursos computacionais das organizações. Enfatiza a extrema utilidade da aplicação da análise de logs e a possibilidade de detecção de eventos de segurança a partir dos dados de arquivos de logs. E, o foco da pesquisa está nos benefícios proporcionados pela abordagem da ferramentas de correlação de eventos de segurança (SIEM), dando a essa abordagem – correlação de eventos de segurança – um posicionamento de ser subconjunto da atividade de análise de logs, ressaltando também que a análise de logs de forma distribuída, que é descentralizando os logs principais em estações coletoras distribuídas, possibilita a análise de um conjunto menor de eventos por estação coletora.

Outra pesquisa acerca do gerenciamento e correlação de eventos de segurança (SIEM) é conduzia por (CHENG; et al., 2013), onde a abordagem é direcionada para a aplicação do algoritmo de análise de agrupamento k-means8, objetivando estabelecer uma análise de segurança de alto desempenho e para enfrentar o desafio de normalizar, centralizar e correlacionar a análise de informações de eventos em tempo real, com o objetivo de facilitar a identificação de estado de execução atual no ambiente de destino e, nesta pesquisa é proposto um modelo de plataforma para o gerenciamento de informações de segurança e eventos (SIEM), afirmando-se tratar de uma plataforma de próxima geração..

4. O Modelo Proposto para a Análise Forense dos Eventos de Segurança

O objetivo geral do modelo proposto é auxiliar o analista forense no processo de busca de evidências me uma investigação e, a análise de logs é uma das tarefas nas quais a análise forense se baseia para delinear as ocorrências que tenham sido coletadas e registradas nos arquivos de logs do sistema operacional Microsoft Windows. O objetivo específico deste trabalho é realizar a análise de logs de eventos com o propósito de se identificar os eventos relevantes para os procedimentos de auditoria em ocorrências conexas às contas de usuários, tanto em uma estrutura de domínio, quanto em estações stand-alone.

Os logs de eventos representam os meios para manter registro de todas as ações executadas em nosso sistema. A análise forense de arquivos de logs baseia-se em coletar informações para responder a perguntas relacionadas a um ataque ou quebra de segurança, como quando, o que, quem, onde e por quê. As informações registradas em arquivos de logs variam de acordo com a aplicação utilizada, por exemplo, um aplicativo de segurança como um firewall grava informações relativas a conexões com a Internet, endereços IP, números de porta, tempo de conexão, enquanto um sistema operacional grava informações relativas a usuários, permissões e suas atividades. A técnica adotada neste trabalho é criar sintaxes SQL (Structured Query Language) para a aplicação de parsers (modelos de analisadores) sobre os arquivos .evtx (XML Event Viewer) gerados pelo gerador de eventos dos sistemas operacionais Windows. E, sendo as sintaxes validadas na análise dos eventos, ao final, gerar scripts no formato .PS1 para a execução no ambiente PowerShell, compatíveis com todas as versões dos sistemas operacionais Windows que disponham deste ambiente de linha de comando.

Para a tomada de decisão de quais eventos serão apresentados como modelo específico neste trabalho, foi consultada a recomendação da (MICROSOFT, 2018) de quais eventos devam ser monitorados no serviço de autenticação (Active Directory), para se garantir o não comprometimento deste serviço. E, também, se consultou outras recomendações para o processo de análise forense dos registros de eventos em ambiente Windows (MICROSOFT, 2018).

Então, dentro do universo de tipos de eventos, definiu-se por analisar 03 (três) identificadores relacionados aos Eventos de Segurança, os quais ocorrem em qualquer ambiente do serviço de Active Directory, que servirão de modelo para a análise e auditoria neste trabalho e, estes eventos escolhidos são de grande interesse nas atividades de análise forense, os eventos estão elencados na Tabela 01.

Tabela 01: Eventos em análise forense nos registros dos Logs de Segurança

ID do eventofinalidade
4624Localizar e identificar as contas de usuários que efetuaram acesso remoto (RDP – Remote Desktop Connection).
4625Localizar e identificar usuários que não obtiveram sucesso ao tentar autenticar-se, ou ainda, uma possível tentativa de uso de credenciais alheias.
4648Localizar e identificar as contas de usuários ou serviços que estão realizando acesso com credenciais explícitas, quando o usuário ou serviço utiliza outra conta para acessar recursos específicos.

Fonte: Eventos de Segurança (MICROSOFT, 2018)

Para a construção das querys SQL, há a necessidade de se conhecer a estrutura dos campos de um arquivo de logs de eventos nos sistemas Windows e em seu formato original de arquivo de eventos, formato EVTX, essa estrutura de campos é apresentada na Tabela 02.

Tabela 02: Estrutura de arquivo de log de eventos nos sistemas Windows (EVTX)

campodescrição
EventLogNome do arquivo do registro de Eventos.
RecordNumberO número do registro no banco de dados de Eventos.
TimeGeneratedO momento em que a entrada foi enviada. Este tempo é medido em número de segundos decorridos desde 00:00:00 de 1º de janeiro de 1970, no formato de horário UTC.
TimeWrittenO momento em que a entrada foi recebida pelo serviço para ser escrita no registro. Este tempo é medido em número de segundos decorridos desde 00:00:00 de 1º de janeiro de 1970, no formato de horário UTC.
EventIDO valor do ID é específico do originador do evento para o registro do evento e é usado com o nome de origem para localizar uma string de descrição no arquivo de mensagem para o originador do evento (priority = facility*8+severity)
EventTypeO tipo de Evento, que pode assumir uma série de Tipos: 0x0001 = Error event 0x0010 = Failure Audit event 0x0008 = Success Audit event 0x0004 = Information event 0x0002 = Warning event
EventTypeNameIdentifica os ID de Eventos por nomes: EVENTLOG_ERROR_TYPE = 0x0001 EVENTLOG_AUDIT_FAILURE = 0x0010 EVENTLOG_AUDIT_SUCCESS = 0x0008 EVENTLOG_INFORMATION_TYPE = 0x0004 EVENTLOG_WARNING_TYPE = 0x0002
EventCategoryA categoria para o Evento. O significado desse valor depende da fonte do evento.
EventCategoryNameNome da categoria gerado para o evento. Depende da fonte do evento.
SourceNameNome da fonte geradora do Evento.
StringsUma sequência de caracteres de descrição dentro deste registro específico, em referência ao de registro de eventos. Composto por informações do módulo gerador do evento e, acompanhado da identificação do originador do evento de ID do evento.
ComputerNameNome da estação de onde se gerou o Evento.
SIDSID (Identificador de Segurança) da conta de usuário ou de serviço que provocou o Evento.
MessageGerado a partir dos dados da seção Strings e, de informações contidas dentro de DLLs do sistema de origem.
DataDados específicos do Evento. Esta informação pode ser algo específico (um driver de disco pode registrar o número de tentativas, por exemplo), seguido de informações binárias específicas para o evento que está sendo registrado e para a origem que gerou a entrada.

Fonte: Adaptado de (MICROSOFT, 2018)

A análise do arquivo de logs com a ferramenta Microsoft Log Parser 2.2, no ambiente de linha de comando (Command Line Interface), utiliza expressões de consulta SQL (Structured Query Language – Linguagem de Consulta Estruturada) e, para se extrair informações do arquivo de logs necessita-se lançar mão de sintaxes específicas, incluindo além da informação do arquivo de logs, com seu caminho completo, dados específicos dos campos de consulta e tipos de dados que quer extrair e, um exemplo de sintaxe SQL dentro do ambiente CLI da ferramenta Microsoft Log Parser 2.2 é apresentado na Figura 01.

Figura 01: Consulta SQL ao arquivo de logs, na ferramenta de linha de comandos

Fonte: Cenário real para o Artigo – próprio autor

A ferramenta Log Parser 2.2 que é um analisador de logs, apresentando-se como uma ferramenta poderosa e versátil que fornece acesso de consulta universal a dados baseados em texto, como arquivos de log, arquivos XML e arquivos CSV, bem como fontes de dados importantes no sistema operacional Windows, como o Registro de Eventos, as chaves de Registro, o sistema de arquivos e a estrutura de diretório do Active Directory (MICROSOFT, 2018).

A outra ferramenta em comparação nesta pesquisa é a Microsoft Log Parser Studio 2.0 e, as características fortes desta ferramenta são: seu ambiente gráfico (Graphical User Interface), apresentando recursos de interação com diversos formatos de arquivos de dados, além da funcionalidade de se exportar as consultas desenvolvidas em consultas SQL, para o formato dos scripts .PS1 (PowerShell). Esta ferramenta apresenta a aba Library, onde estão contidas algumas querys SQL prontas para algumas ações relativas às consultas de arquivos de registros, como os provenientes de sistemas MS-Exchange; MS-ActiveSync; MS-Internet Information Service, dentre outras fontes de dados e, é importante registrar que na biblioteca disponibilizada pela ferramenta LPS 2.0, não há disponíveis querys prontas para os eventos propostos e em análise nesta pesquisa, vide Figura 02.

Figura 02: Tela inicial da ferramenta Microsoft Log Parser Studio 2.0

Fonte: Cenário real para o Artigo – próprio autor

Na janela de criação de querys personalizadas a ferramenta LPS 2.0 apresenta duas seções a parte de cima da janela apresentará os resultados consultados, enquanto a parte de baixo é utilizada para se escrever as consultas em linguagem SQL, com o detalhe que a ferramenta exige a especificação do formato do arquivo que está sob análise e a indicação do caminho e nome do arquivo que será alvo das consultas, como o mostrado na Figura 03.

Figura 03: Seção de montagem das querys no Log Parse Studio 2.0

Fonte: Cenário real para o Artigo – próprio autor

Na apresentação da ferramenta Log Parser Studio 2.0, no sítio da Microsoft esta ferramenta é apresentada como sendo criada para atender à lacuna da sua ferramenta anterior – Log Parser 2.2, oferecendo interface gráfica, o que permite aos usuários da ferramenta uma forma mais rápida e eficiente de se obter dados sem “peripécias”, a partir do uso de scripts de consulta (MICROSOFT, 2018).

Essas duas ferramentas que estão em comparação de funcionalidades, separam-se pela forma do ambiente da análise, uma usa o ambiente de linha de comando (CLI) e, a outra utiliza ambiente gráfico (GUI) e, justamente pelo fato da ferramenta Log Parser Studio 2.0, possuir a função de conversão das sintaxes SQL para o formato de scripts PowerShell, foi a ferramenta escolhida para a construção das consultas SQL e para a produção do ferramental de análise forense baseada em scripts no formato PS1.

Para o processamento das consultas (querys) às informações do arquivo de registros de eventos, o volume de dados capturados foi exportado para arquivo off-line, o que facilita o processamento da ferramenta analisadora de logs, pelo fato de não trabalhar com arquivo em produção. E, embora os sistemas Windows disponibilizem nativamente uma ferramenta de visualização de eventos, os dados constantes nos registros de eventos têm enorme riqueza de informações, as quais não são de fácil leitura ao se utilizar somente a ferramenta Visualizador de Eventos do Windows e, se torna uma tarefa não tão clara e, às vezes inexiste consultas próprias ou personalizáveis para se encontrar informações específicas dentro do arquivo que se está analisando e, por isso é altamente recomendável recorrer às ferramentas analisadoras de logs, algumas são de uso e de código livres e outras de códigos proprietários.

O método proposto nesta pesquisa centra-se em oferecer ao Analista Forense um ferramental de interação com os arquivos de registro de eventos do sistema operacional Windows e, em particular o cenário de testes desta pesquisa foi executado sobre o arquivo de registro de Eventos de Segurança (security.evtx) de um sistema Windows Server 2012 que exerce o papel de servidor de autenticação (AD) e, o método proposto para a análise e auditoria dos registros coletados, visa a identificação de eventos relativos ao Serviço de Autenticação (Active Directory). A sequência de ações do método está descrita na Figura 04.

Figura 04: Modelo proposto para a análise forense dos registros de eventos

Fonte: Cenário real para o Artigo – próprio autor

Neste modelo proposto, os eventos que se determinou para a análise forense, os quais estão explicitados na Tabela 01, serão, primeiramente, testados via sintaxe SQL utilizando a ferramenta LPS 2.0, onde se pode depurar a construção das querys SQL e, analisar se os resultados são os esperados, registre-se que se está utilizando um arquivo stand-alone, uma réplica do arquivo original security.evtx. Então, ocorrendo o sucesso na construção da sintaxe SQL, utiliza-se o recurso da própria ferramenta LPS, para se exportar as querys construídas para o formato de scripts .PS1 (PowerShell) e, com estes scripts resultantes consolida-se no ferramental que o Administrador de Rede poderá utilizar em suas atividades diárias, como um recurso de análise e auditoria dos registros de eventos que, aqui especificamente são os Eventos de Segurança. Ressaltando-se que as análises propostas na Tabela 01 não existem, nativamente, dentro de nenhum Sistema Operacional Microsoft Windows (MICROSOFT, 2018).

5. Ambiente de testes

No ambiente específico desta pesquisa estão sendo analisados os logs dos Eventos de Segurança, os quais nativamente estão armazenados no caminho: %SystemRoot%\System32\Winevt\Logs\, que é o arquivo em produção antes de ocorrer o arquivamento de logs, com base no tamanho de arquivos definido para que ocorra o rotacionamento. E o conjunto de registro dos Eventos de Segurança estarão divididos em vários arquivos, nos tamanhos previamente definidos para o rotacionamento, que neste caso específico foi de 150 Megabytes e, o arquivo de logs dos eventos de segurança, ora analisado é mostrado na Figura 05.

Figura 05: Arquivo do registro dos eventos de segurança a ser analisado

Fonte: Cenário real para o Artigo – próprio autor

5.1 Aplicando a técnica adotada para a análise forense de logs

Utilizando o arquivo offline do registro de logs, como mostrado na Figura 05 e, com o uso das ferramentas Microsoft Log Parser 2.2[1] em ambiente de linha de comandos e a ferramenta Microsoft Log Parser Studio 2.0 (LPS)[2], em ambiente gráfico, insere-se as querys SQL, específicas para a extração das informações do arquivo de Eventos de Segurança, detalhando que os eventos que estão em análise nessa pesquisa são os elencados na Tabela 01. Ambas as ferramentas se propõem a funcionar como uma ferramenta de suporte ao Analista Forense com o fim de realizar consultas aos arquivos de registros. Na comparação dos resultados fornecidos pelas ferramentas Log Parser 2.2 e Log Parser Studio 2.0, adotou-se a ferramenta LPS 2.0 pois esta ferramenta apresenta recursos e facilidades em relação à ferramenta LP 2.2, pois a ferramenta de linha de comandos não permite a construção de scripts .PS1, que são scripts multiplataforma para ambientes Windows, uma vez que a ferramenta Log Parser 2.2 somente possui o recurso de digitação das sintaxes em linha de comando.

As possibilidades de consultas utilizando a ferramenta LP 2.2, não estão limitadas aos tipos e qualidade dos relatórios gerados no ambiente de linha de comandos, pois é capaz de gerar, também, a saída em formato .CSV, mas sim estão limitadas aos recursos disponíveis para a exportação das Querys SQL, para os formatos que permitam a interação com outros ambientes Microsoft Windows, a exemplo dos scripts .PS1, que não necessitam da instalação de ferramentas adicionais.

A técnica adotada para a realização de análise forense nos logs de eventos, foi a utilização da ferramenta analisador de logs, Microsoft Log Parser Studio 2.0 que têm como vantagem, além da interface gráfica, a funcionalidade de exportar as Querys SQL para o formato de scripts .PS1, o que permite utilizar os scripts resultantes em qualquer outro ambiente Microsoft Windows, pelo fato de que o ambiente PowerShell, ser componente básico nos sistemas Microsoft Windows e, como enorme diferencial destaca-se que a ferramenta LPS 2.0 possuí o recurso de uma biblioteca de querys pré-configuradas para consultas específicas, em especial consultas para os sistemas MS-Exchange e MS-Internet Information Service, outra característica marcante da ferramenta LPS 2.0 é a possibilidade de efetuar a análise forense, utilizando-se da mesma query sobre um lote de arquivos em uma só execução, bastando indicar o diretório (botão Add Folder) onde os arquivos se encontram e, na sintaxe da query indicar que a pesquisa é em lote, utilizando o indicador de local da pesquisa: ‘[LOGFILEPATH]’. E a abordagem de análise aqui proposta é obter as informações do montante, em lote, de arquivos coletados do servidor de origem. E a configuração para usar os arquivos em lotes é mostrada na Figura 06.

Figura 06: Ferramenta Log Parser Studio 2.0 – análise em lotes de arquivos de eventos

Fonte: Cenário real para o Artigo – próprio autor

E definidos, a ferramenta para a análise de logs e a forma de abordagem dos arquivos de dados que contém os registros coletados, inicia-se a construção das Querys SQL voltadas a extrair as informações pertinentes ao gerenciamento de segurança no Serviço de Autenticação Active Directory (AD), de acordo com os eventos elencados na Tabela 01. E, antes de iniciar a construção das querys e dos scripts de interesse, se pesquisou todos os tipos de eventos ocorridos no arquivo gerado pela coleta de eventos, conforme a consulta .SQL mostrada na Figura 07.

Figura 07: Query – listar todos os eventos ocorridos nos registros coletados

Fonte: Cenário real para o Artigo – próprio autor

O tempo de processamento da consulta SQL e a exportação do resultado para arquivo no formato .CSV, de todos os eventos coletados no arquivo security.evtx, com tamanho de 133 Megabytes, durou 04 (quatro) segundos. E o resultado da consulta é mostrado na Figura 08.

Figura 08: Relação de todos os eventos ocorridos nos registros coletados

Fonte: Cenário real para o Artigo – próprio autor

Os eventos propostos para a análise nesta pesquisa foram definidos conforme a Tabela 01 e por considerações de privacidade serão omitidos, nas figuras seguintes, os dados de contas de usuários e nome do domínio do arquivo em análise. A construção das querys SQL e dos scripts .PS1, é a seguinte:

Listar os eventos de ID 4624 , com o objetivo de localizar e identificar as contas de usuários que efetuaram acesso remoto (RDP – Remote Desktop Connection), a query SQL está construída na Figura 09;

Figura 09: Query 01 – encontrar os eventos 4624 – logons via RDP

Fonte: Cenário real para o Artigo – próprio autor

O tempo desprendido no processamento desta consulta e geração da saída em formato .CSV, considerando que o volume dos arquivos pesquisados é de 133 Megabytes, foi exatamente de 06 (seis) segundos e, o resultado do arquivo .CSV de saída desta consulta é mostrado na Figura 10.

Figura 10: Arquivo de saída do resultado da consulta aos eventos de ID 4624

Fonte: Cenário real para o Artigo – próprio autor

            Listar os eventos de ID 4625, no servidor de autenticação, com o fim de localizar e identificar usuários com dificuldades de autenticar-se, ou ainda, uma possível tentativa de uso de credenciais alheias, a query SQL está construída na Figura 11;

Figura 11: Query 02 – encontrar os eventos 4625 – erros nas tentativas de logon

Fonte: Cenário real para o Artigo – próprio autor

O tempo desprendido no processamento desta consulta e geração da saída em formato CSV, considerando que o volume dos arquivos pesquisados é de 133 Megabytes, foi exatamente de 04 (quatro) segundos e, o resultado desta consulta é mostrada na Figura 12.

Figura 12: Arquivo de saída do resultado da consulta aos eventos de ID 4625

Fonte: Cenário real para o Artigo – próprio autor

            Listar os eventos de ID 4648, com o objetivo de localizar e identificar quais usuários ou serviços estão acessando serviços e recursos utilizando credenciais explícitas. Que é quando o usuário se conecta a um host na rede ou executa um programa localmente usando credenciais alternativas, a query SQL está construída na Figura 13;

Figura 13: Query 03 – encontrar os eventos 4648 – logon com credenciais explícitas

Fonte: Cenário real para o Artigo – próprio autor

O tempo desprendido no processamento desta consulta e geração da saída em formato CSV, considerando que o volume dos arquivos pesquisados é de 133 Megabytes, foi exatamente de 04 (quatro) segundos e, o resultado desta consulta é mostrada na Figura 14.

Figura 14: Arquivo de saída do resultado da consulta aos eventos de ID 4648

Fonte: Cenário real para o Artigo – próprio autor

5.2 Resultados alcançados

As atividades diárias do Perito Forense Computacional no que se refere à análise dos registros de eventos, com o foco de se identificar as ações praticadas por usuários em uma rede, torna-se mais fácil e transparente para o processo de identificar a linha de atuação de um atacante ou de um usuário interno mal intencionado, quando se utiliza uma ferramenta de manuseio intuitivo e, na utilização de scripts direcionados para a identificação de registro de eventos específicos gera-se relatórios claros e diretos sobre a informação buscada, reforçando-se que esses relatórios aqui apresentados não estão disponíveis nativamente na plataforma dos sistemas Microsoft Windows.

Há uma gama de informações úteis extraídas dos registros de eventos trabalhados nesta pesquisa e, em alinhamento com os modelos de análise forense aplicados com a ferramenta analisador de logs, se conseguiu relatórios contendo informações importantes para a delineação de comportamento de usuários, como datas e horários, contas de usuários ou serviços, endereços IP, recursos acessados, detalhamento do evento principal pesquisado. Então esta pesquisa alcançou os seus objetivos propostos, pois conseguiu-se traçar um modelo para o uso de uma ferramenta (LPS 2.0) na construção de outros recursos ferramentais (scripts .PS1), com o fim de complementar os procedimentos de um ferramental de Análise Forense. Observando-se que para a execução destes mesmos scripts, em ambiente de produção, é necessário apenas modificar o caminho dos arquivos de pesquisa, pelo nome do instrumento do sistema que gerencia o registro de Eventos de Segurança, alterando-se o script .PS1 gerado com as informações do ambiente de testes, onde a cláusula FROM ‘D:\IPOG-Artigo\*.evtx’, utilizada nos arquivos de scripts .PS1, apresentados na seção de Apêndice deste Artigo, cláusula a qual deve ser alterada no ambiente de produção, para a cláusula FROM Securiry. Registre-se que ao realizar essa alteração no script .PS1, a busca efetivada pelo evento só ocorrerá no arquivo online que está aberto pelo Servidor de origem e não nos arquivos já rotacionados, pois para tanto basta especificar o caminho de busca dos arquivos que foram fechados e estão no caminho dos logs: %SystemRoot%\System32\Winevt\Logs\*.evtx.

6. Conclusão

Comprova-se por esta pesquisa que, o uso de ferramental analisadores de logs baseados em ambiente gráfico (GUI), possibilitou o ganho de tempo e de melhores respostas, possibilitando inclusive a geração de estatísticas e gráficos do universo de eventos coletados. Permitindo-se a inferência de correlação de eventos de segurança ao ofertar ao Analista Forense o uso de scripts .PS1 para a localização e identificação de Eventos de interesse e, ainda, gerar relatórios para as consultas efetuadas. O ferramental entregue por esta pesquisa, possibilita a interação online com os dados dos Eventos de Segurança, os quais estejam ocorrendo no Serviço Eventos de Segurança – Security e, também possibilita a interação com os arquivos de logs já armazenados. Conclui-se nesta pesquisa que as configurações de consultas aos arquivos de eventos nos sistemas Microsoft Windows, utilizando scripts .PS1, são escaláveis na medida em que os scripts gerados podem ser aplicados em ambientes de pequeno e médio porte e, até mesmo em ambientes de grande porte, pois as características e variáveis que mudam entre esses ambientes é o volume de arquivos a serem tratados e, também aplica-se às versões mais antigas dos sistemas Microsoft Windows, mudando-se os caminhos de armazenamento dos arquivos de eventos a serem tratados.

E, confrontando-se a funcionalidade de utilizar-se os modelos de sintaxes SQL, aqui apresentados na seção de Apêndice, para a construção de parsers na consulta de registros de eventos (logs) no formato .EVTX, abre-se a possibilidade de incremento das ferramentas forenses que realizam as funções de indexador e processador de evidências digitais, ferramentas essas que carecem – em nossa análise – da funcionalidade de análise forense dos registros de eventos (logs) dos sistemas operacionais Microsoft Windows.

7. Referências

GIL, Antonio Carlos. Como Elaborar Projetos de Pesquisa. 4th.ed., Atlas, São Paulo, 2002.

CHENG, Feng., et al. Security Event Correlation supported by Multi-Core Architecture, 3rd International Conference on IT Convergence and Security (ICITCS 2013), Macao, China, 2013.

DU, Min.; LI, Feifei. Spell: Streaming Parsing of System Event Logs, IEEE 16th International Conference on Data Mining (ICDM 2016), Barcelona, Spain, 2016.

HERRERÍAS, Jorge; GÓMEZ, Roberto. A Log Correlation Model to Support the Evidence Search Process in a Forensic Investigation, Proceedings of the Second International Workshop on Systematic Approaches to Digital Forensic Engineering (SADFE’07), Bell Harbor, WA, USA, 2007.

HERRERÍAS, Jorge; GÓMEZ, Roberto. Log Analysis towards an Automated Forensic Diagnosis System, The Fifth International Conference on Availability, Reliability and Security (ARES 2010), Krakow, Poland, 2010.

LIM, Chinghway.; SINGH, Navjot.; YAJNIK, Shalini. A Log Mining Approach to Failure Analysis of Enterprise Telephony Systems, IEEE International Conference on Dependable Systems and Networks (DSN 2008), Anchorage, Alaska, 2008.

MICROSOFT, TechNet Library. Apêndice l: Eventos a serem monitorados, [Online; accessed 10-December -2018], https://technet.microsoft.com/pt-br/library/dn535498(v=ws.11).aspx.

MICROSOFT, Developer Network. EVENTLOGRECORD structure, [Online; accessed 10-September-2018], https://msdn.microsoft.com/pt-br/library/windows/desktop/aa363646(v=vs.85).aspx.

MICROSOFT, Support. Description of security events in Windows 7 and in Windows Server 2008 R2, [Online; accessed 22-December-2018], https://support.microsoft.com/en-us/help/977519/description-of-security-events-in-windows-7-and-in-windows-server-2008.

MICROSOFT, TechNet Blogs. Introducing: Log Parser Studio, [Online; accessed 22-December-2018], https://blogs.technet.microsoft.com/exchange/2012/03/07/introducing-log-parser-studio/.

MICROSOFT, TechNet Blogs. LogParser and Powershell – LOGPOWER, [Online; accessed 10-December-2018], https://blogs.technet.microsoft.com/sooraj-sec/2017/02/20/logparser-and-powershell-logpower/.

MICROSOFT, TechNet Blogs. Logparser play of a forensicator, [Online; accessed 11-December-2018], https://blogs.technet.microsoft.com/sooraj-sec/2016/08/20/logparser-play-of-a-forensicator/.

MICROSOFT, TechNet Learn. Script Center, [Online; accessed 13-December-2018], https://technet.microsoft.com/en-us/scriptcenter/dd919274.aspx

MYERS, Justin; GRIMAILA, Michael R.; MILLS, Robert F. Log-Based Distributed Security Event Detection Using Simple Event Correlator, 44th Hawaii International Conference on System Sciences (HICSS 2011), Kauai, HI, USA, 2011.

PWC, Price Waterhouse Coopers. 18ª Pesquisa Global de Segurança da Informação, [Online; accessed 10-December-2018], http://www.pwc.com.br/pt/publicacoes/servicos/assets/consultoria-negocios/2016/tl-gsiss16-pt.pdf.

SILVA, Luiz Hamilton Roberto da. Log de eventos: aplicação de um modelo de análise de logs para auditoria de registro de eventos, Universidade Federal de Pernambuco, Dissertação de Mestrado, [Online; accessed 07-December-2018], https://repositorio.ufpe.br/handle/123456789/27515.

SON, HS., et al. Network Traffic and Security Event Collecting System, 2nd International Conference on Electrical Systems, Technology and Information (ICESTI 2015), Bali-Indonesia, 2015, p. 439-446, [Online; accessed 07-December-2018], https://link.springer.com/chapter/10.1007/978-981-287-988-2_48.

STEARLEY, Jon. Towards Informatic Analysis of Syslogs, IEEE International Conference on Cluster Computing (Cluster 2004), San Diego, CA, USA, 2004.

TSUNODA, Hiroshi.; KEENI, Glenn M. Managing syslog, IEEE 16th Asia-Pacific Network Operations and Management Symposium (APNOMS 2014), Hsinchu, Taiwan, 2014.

8. Apêndices

[1] Download em 30/12/2018: https://www.microsoft.com/en-us/download/details.aspx?id=24659

[2] Download em 30/12/2018: https://gallery.technet.microsoft.com/Log-Parser-Studio-cd458765


1 – luizhamilton.lhr@gmail.com
Computação Forense e Perícia Digital
Macapá/AP, 02 de abril de 2019