Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um esquema do ASIM (Modelo de Informações de Segurança Avançado) é um conjunto de campos que representam uma atividade. O uso dos campos de um esquema normalizado em uma consulta garante que a consulta funcione com todas as fontes normalizadas.
Para entender como os esquemas se ajustam à arquitetura do ASIM, veja o diagrama de arquitetura do ASIM.
As referências de esquema descrevem os campos que compõem cada esquema. Atualmente, o ASIM define os seguintes esquemas:
| Esquema | Versão | Status |
|---|---|---|
| Evento de alerta | 0,1 | GA |
| Auditar evento | 0.1.2 | GA |
| Evento de autenticação | 0.1.4 | GA |
| Atividade DNS | 0.1.7 | GA |
| Atividade DHCP | 0.1.1 | GA |
| Atividade de arquivo | 0.2.2 | GA |
| Sessão de rede | 0.2.7 | GA |
| Evento de processo | 0.1.4 | GA |
| Evento de registro | 0.1.3 | GA |
| Gerenciamento de Usuários | 0.1.2 | GA |
| Sessão da Web | 0.2.7 | GA |
Conceitos de esquema
Os conceitos a seguir ajudam a entender os documentos de referência de esquema e a estender o esquema de maneira normalizada, caso os dados incluam informações que o esquema não abrange.
Nomeação de campo
No núcleo de cada esquema estão os nomes de campo. Os nomes de campo pertencem aos seguintes grupos:
- Campos comuns a todos os esquemas.
- Campos específicos de um esquema.
- Campos que representam entidades, como usuários, que participam do esquema. Campos que representam entidades são semelhantes entre esquemas.
Quando as fontes têm campos que não são apresentados no esquema documentado, elas são normalizadas para manter a consistência. Quando os campos extras representam uma entidade, eles são normalizados com base nas diretrizes de campo de entidade. Caso contrário, os esquemas se esforçam para manter a consistência entre os esquemas.
Por exemplo, embora os logs de atividade do servidor DNS não forneçam informações do usuário, os logs de atividade do DNS de um ponto de extremidade podem incluir informações do usuário, que podem ser normalizadas de acordo com as diretrizes da entidade do usuário. |
Tipos lógicos de campo
Cada campo de esquema tem um tipo. O workspace do Log Analytics tem um conjunto limitado de tipos de dados. Por esse motivo, o Microsoft Sentinel usa um tipo lógico em muitos campos de esquema, que o Log Analytics não impõe, mas são necessários para a compatibilidade do esquema. Os tipos de campo lógicos garantem que os valores e os nomes de campo sejam consistentes nas fontes.
Para obter mais informações, confira Tipos lógicos.
Classes de campo
Os campos podem ter várias classes, que definem quando os campos devem ser implementados por um analisador:
- Os campos obrigatórios devem aparecer em cada analisador. Se a sua fonte não fornecer informações para esse valor ou se os dados não puderem ser adicionados de outra forma, não haverá suporte para a maioria dos itens de conteúdo que fazem referência ao esquema normalizado.
- Os campos recomendados devem ser normalizados se disponíveis. No entanto, eles podem não estar disponíveis em todas as fontes. Qualquer item de conteúdo que faz referência a esse esquema normalizado deve levar em conta a disponibilidade.
- Os campos opcionais , se disponíveis, podem ser normalizados ou deixados no formulário original. Normalmente, analisadores mínimos não normalizam esses campos por motivos de desempenho.
- Os campos condicionais serão obrigatórios se o campo a seguir for preenchido. Os campos condicionais normalmente são usados para descrever o valor em outro campo. Por exemplo, o campo comum DvcIdType descreve o valor int do campo comum DvcId e, portanto, será obrigatório se o último for preenchido.
- Alias é um tipo especial de campo condicional e é obrigatório se o campo associado for preenchido.
Campos comuns
Alguns campos são comuns a todos os esquemas do ASIM. Cada esquema pode adicionar diretrizes para usar alguns dos campos comuns no contexto do esquema específico. Por exemplo, os valores permitidos do campo EventType podem variar por esquema, assim como o valor do campo EventSchemaVersion.
Entidades
Eventos evoluem em relação a entidades, como usuários, hosts, processos e arquivos. Cada entidade pode exigir vários campos para descrevê-la. Por exemplo, um host pode ter nome e endereço IP.
Um único registro pode incluir várias entidades do mesmo tipo, como host de origem e host de destino.
O ASIM define como descrever as entidades de forma consistente e as entidades possibilitam estender os esquemas.
Por exemplo, embora o esquema de Sessão de Rede não inclua informações de processo, algumas origens de eventos fornecem informações de processo que podem ser adicionadas. Para obter mais informações, confira Entidades.
Aliases
Os aliases permitem vários nomes para um valor especificado. Em alguns casos, usuários diferentes esperam que os campos tenham nomes diferentes. Por exemplo, na terminologia do DNS, pode-se esperar um campo chamado DnsQuery, enquanto, de maneira mais geral, ele teria um nome de domínio. O Domínio do alias ajuda o usuário permitindo o uso dos dois nomes.
Observação
Os aliases destinam-se a ajudar um analista com consultas interativas. Ao usar consultas em conteúdo reutilizável, como detecções personalizadas, regras analíticas ou pastas de trabalho, use o campo com alias em vez do alias. O uso do campo aliased garante melhor desempenho, menos erros e melhor legibilidade de consulta.
Em alguns casos, um alias pode ter o valor de um dos vários campos, dependendo de quais valores estão disponíveis no evento. Por exemplo, o alias Dvc, abrange os campos DvcFQDN, DvcId, DvcHostname ou DvcIpAddr ou Produto de Evento. Quando um alias pode ter vários valores, seu tipo precisa ser de cadeia de caracteres, a fim de acomodar todos os valores de alias possíveis. Como resultado, ao atribuir um valor a esse alias, converta o tipo em cadeia de caracteres usando a função KQL tostring.
As tabelas normalizadas nativas não incluem aliases, pois isso implicaria um armazenamento de dados duplicado. Em vez disso, os analisadores de stub adicionam os aliases. Para implementar aliases em analisadores, crie uma cópia do valor original usando o operador extend. |
Tipos lógicos
Cada campo de esquema tem um tipo. Alguns têm tipos do Log Analytics integrados, como string, int, datetime ou dynamic. Outros campos têm um tipo Lógico, que representa como os valores de campo devem ser normalizados.
| Tipo de dados | Tipo físico | Formato e valor |
|---|---|---|
| Booliano | Bool | Usa o booltipo de dados booliano KQL nativo em vez de uma representação numérica ou de cadeia de caracteres de valores boolianos. |
| Enumerated | String | Uma lista de valores como explicitamente definidos no campo. A definição de esquema lista os valores aceitos. |
| Data/hora | Dependendo da capacidade do método de ingestão, usa qualquer uma das seguintes representações físicas em prioridade decrescente: - Tipo datetime integrado do Log Analytics - Um campo de número inteiro que usa uma representação numérica datetime do Log Analytics. Um campo de cadeia de caracteres que usa a representação numérica de datetime do Log Analytics - Um campo de cadeia de caracteres que armazena um formato de data/hora do Log Analytics com suporte. |
A representação de data e hora do Log Analytics é semelhante, mas diferente da representação de hora do Unix. Para obter mais informações, confira as diretrizes de conversão. Observação: quando aplicável, a hora deve ser ajustada por fuso horário. |
| Endereço MAC | String | Notação hexadecimal com dois pontos. |
| Endereço IP | String | Os esquemas do Microsoft Sentinel não têm endereços IPv4 e IPv6 separados. Qualquer campo de endereço IP pode incluir um endereço IPv4 ou IPv6, conforme a seguir: - IPv4 em uma notação decimal separada por ponto. - IPv6 na notação de 8 hextetos, possibilitando a forma abreviada. Por exemplo: - (IPv4): 192.168.10.10 - (IPv6): FEDC:BA98:7654:3210:FEDC:BA98:7654:3210- forma abreviada de IPv6: 1080::8:800:200C:417A |
| FQDN | String | Um nome de domínio totalmente qualificado que usa uma notação de ponto, por exemplo, learn.microsoft.com. Para saber mais, confira A entidade de dispositivo. |
| Nome do host | String | Um nome do host que não é um FQDN contém até 63 caracteres, incluindo letras, números e hifens. Para saber mais, confira A entidade de dispositivo. |
| Domain | String | a parte de domínio de um FQDN, sem o nome do host, por exemplo, learn.microsoft.com. Para saber mais, confira A entidade de dispositivo. |
| DomainType | Enumerated | O tipo de domínio armazenado nos campos de domínio e FQDN. Para obter mais informações e uma lista de valores, consulte A entidade de Dispositivo. |
| DvcIdType | Enumerated | O tipo da ID do dispositivo armazenada nos campos de DvcId. Para obter uma lista de valores permitidos e mais informações, veja DvcIdType. |
| DeviceType | Enumerated | O tipo do dispositivo armazenado nos campos de DeviceType. Os valores possíveis incluem: - Computer- Mobile Device- IOT Device- Other. Para saber mais, confira A entidade de dispositivo. |
| Nome de usuário | String | Um nome de usuário válido em um dos tipos compatíveis. Para saber mais, confira A entidade de usuário. |
| UsernameType | Enumerated | O tipo de nome de usuário armazenado nos campos de nome de usuário. Para obter mais informações e uma lista de valores com suporte, consulte A entidade de Usuário. |
| UserIdType | Enumerated | O tipo da ID armazenada nos campos de ID de usuário. Os valores compatíveis são SID, UIS, AADID, OktaId, AWSId e PUID. Para saber mais, confira A entidade de usuário. |
| UserType | Enumerated | O tipo de um usuário. Para obter mais informações e uma lista de valores permitidos, consulte A entidade de Usuário. |
| AppType | Enumerated | O tipo de um aplicativo. Os valores compatíveis incluem: Process, Service, Resource, URL, SaaS application, CSP e Other. |
| País | String | Uma cadeia de caracteres que usa ISO 3166-1, de acordo com a seguinte prioridade: – Códigos Alfa-2, como US para os Estados Unidos. – Códigos Alfa-3, como USA para os Estados Unidos. – Nome curto. É possível encontrar a lista de códigos no site da ISO (Organização Nacional de Normalização). |
| Região | String | O nome da subdivisão do país/região, usando ISO 3166-2. É possível encontrar a lista de códigos no site da ISO (Organização Nacional de Normalização). |
| Cidade | String | |
| Longitude | Double | Representação de coordenada de acordo com a ISO 6709 (decimal com sinal). |
| Latitude | Double | Representação de coordenada de acordo com a ISO 6709 (decimal com sinal). |
| MD5 | String | 32 caracteres hexadecimais. |
| SHA1 | String | 40 caracteres hexadecimais. |
| SHA256 | String | 64 caracteres hexadecimais. |
| SHA512 | String | 128 caracteres hexadecimais. |
| ConfidenceLevel | Integer | Um nível de confiança normalizado para o intervalo de 0 a 100. |
| RiskLevel | Integer | Um nível de risco normalizado para o intervalo de 0 a 100. |
| SchemaVersion | String | Uma versão do esquema ASIM no formato <major>.<minor>.<sub-minor> |
| DnsQueryClassName | String | O nome de classe DNS. |
| Nome de usuário | String | Um nome de usuário simples ou qualificado por domínio |
Entidades
Eventos evoluem em relação a entidades, como usuários, hosts, processos e arquivos. A representação de entidade permite que várias entidades do mesmo tipo façam parte de um único registro e dão suporte a vários atributos para as mesmas entidades.
Para habilitar a funcionalidade de entidade, a representação de entidade tem as seguintes diretrizes:
| Diretriz | Descrição |
|---|---|
| Prefixos e aliasing | Como um único evento geralmente inclui mais de uma entidade do mesmo tipo, como hosts de origem e de destino, os prefixos são usados para identificar a entidade em que um campo está associado. Para manter a normalização, o ASIM usa um pequeno conjunto de prefixos padrão, escolhendo os mais apropriados para a função específica das entidades. Se uma única entidade de um tipo for relevante para um evento, não será necessário usar um prefixo. Além disso, um conjunto de campos sem um prefixo cria alias para a entidade mais usada para cada tipo. |
| Identificadores e tipos | Um esquema normalizado permite vários identificadores para cada entidade, que esperamos coexistir em eventos. Se o evento de origem tiver outros identificadores de entidade que não possam ser mapeados para o esquema normalizado, mantenha-os no formulário de origem ou use o campo dinâmico AdditionalFields. Para manter as informações de tipo nos identificadores, armazene o tipo, quando aplicável, em um campo com o mesmo nome e um sufixo do Tipo. Por exemplo, UserIdType. |
| Atributos | As entidades geralmente têm outros atributos que não servem como um identificador e podem ser qualificadas com um descritor. Por exemplo, quando o usuário de origem tem informações de domínio, o campo normalizado é SrcUserDomain. |
Para obter mais informações sobre tipos de entidade específicos, consulte:
Mapeamento de entidade de exemplo
Esta seção usa o evento 4624 do Windows como exemplo para descrever como os dados do evento são normalizados no Microsoft Sentinel.
Esse evento tem as seguintes entidades:
| Terminologia da Microsoft | Prefixo do campo de evento original | Prefixo de campo do ASIM | Descrição |
|---|---|---|---|
| Assunto | Subject |
Actor |
O usuário que relatou informações sobre uma conexão bem-sucedida. |
| Novo logon | Target |
TargetUser |
O usuário para o qual a conexão foi executada. |
| Processo | - | ActingProcess |
O processo que tentou se conectar. |
| Informações de rede | - | Src |
O computador do qual uma tentativa de conexão foi executada. |
Com base nessas entidades, o evento 4624 do Windows é normalizado da seguinte forma (alguns campos são opcionais):
| Campo normalizado | Campo original | Valor no exemplo | Observações |
|---|---|---|---|
| ActorUserId | SubjectUserSid | S-1-5-18 | |
| ActorUserIdType | - | SID | |
| ActorUserName | SubjectDomainName\ SubjectUserName | WORKGROUP\WIN-GG82ULGC9GO$ | Criado concatenando os dois campos |
| ActorUserNameType | - | Windows | |
| ActorSessionId | SubjectLogonId | 0x3e7 | |
| TargetUserId | TargetUserSid | S-1-5-21-1377283216-344919071-3415362939-500 | |
| UserId | TargetUserSid | Alias | |
| TargetUserIdType | - | SID | |
| TargetUserName | NomeDoDomínioAlvo\ NomeDoUsuárioAlvo | Administrator\WIN-GG82ULGC9GO$ | Criado concatenando os dois campos |
| Nome de usuário | NomeDoDomínioAlvo\ NomeDoUsuárioAlvo | Alias | |
| TargetUserNameType | - | Windows | |
| TargetSessionId | TargetLogonId | 0x8dcdc | |
| ActingProcessName | ProcessName | C:\Windows\System32\svchost.exe | |
| ActingProcessId | ProcessId | 0x44c | |
| SrcHostname | WorkstationName | Windows | |
| SrcIpAddr | IpAddress | 127.0.0.1 | |
| SrcPortNumber | IpPort | 0 | |
| TargetHostname | Computador | WIN-GG82ULGC9GO | |
| Nome do host | Computador | Alias |
Próximas etapas
Este artigo fornece uma visão geral da normalização no Microsoft Sentinel e no ASIM.
Para obter mais informações, consulte:
- Assista também ao Webinar de aprofundamento no Microsoft Sentinel: normalizando analisadores e conteúdo normalizado ou veja os slides
- Visão geral do ASIM (Modelo de Informações de Segurança Avançado)
- Analisadores do ASIM (Modelo de Informações de Segurança Avançado)
- Conteúdo do ASIM (Modelo de Informações de Segurança Avançado)