Coletar registros do Thinkst Canary
Esse analisador normaliza mensagens de registro bruto do software Thinkst Canary limpando quebras de linha e tentando analisar a mensagem como JSON. Em seguida, com base na presença de campos específicos ("Descrição" para o formato de chave-valor ou "Resumo" para JSON), ele determina o formato do registro e inclui a lógica de análise adequada de arquivos de configuração separados para mapear os dados no modelo de dados unificado.
Antes de começar
- Verifique se você tem uma instância do Google SecOps.
- Verifique se você tem acesso privilegiado ao Thinkst Canary.
Configurar a API REST no Thinkst Canary
- Faça login no console de gerenciamento do Thinkst Canary.
- Clique no ícone de engrenagem > Configurações globais.
- Clique em API.
- Clique em Ativar API.
- Clique em + para adicionar uma API.
- Dê um nome descritivo à API.
- Copie o hash do domínio e o token de autenticação.
Configurar um feed no Google SecOps para processar registros do Thinkst Canary
- Clique em Adicionar novo.
- No campo Nome do feed, insira um nome para o feed (por exemplo, Thinkst Canary Logs).
- Selecione API de terceiros como o Tipo de origem.
- Selecione Thinkst Canary como o Tipo de registro.
- Clique em Próxima.
- Especifique valores para os seguintes parâmetros de entrada:
- Cabeçalho HTTP de autenticação:o token gerado anteriormente em um formato
auth_token:<TOKEN>
(por exemplo, auth_token:AAAABBBBCCCC111122223333). - Nome do host da API:o FQDN (nome de domínio totalmente qualificado) do endpoint da API REST do Thinks Canary (por exemplo,
myinstance.canary.tools
). - Namespace de recursos: o namespace de recursos.
- Rótulos de ingestão: o rótulo aplicado aos eventos desse feed.
- Cabeçalho HTTP de autenticação:o token gerado anteriormente em um formato
- Clique em Próxima.
- Revise a configuração do feed na tela Finalizar e clique em Enviar.
Mapeamento do UDM
Campo de registro | Mapeamento de UDM | Lógica |
---|---|---|
AUDITACTION | read_only_udm.metadata.product_event_type | O valor é retirado do campo de descrição se o formato for JSON. Caso contrário, ele é determinado pelo campo eventid. |
CanaryIP | read_only_udm.target.ip | |
CanaryName | read_only_udm.target.hostname | |
CanaryPort | read_only_udm.target.port | |
COOKIE | read_only_udm.security_result.about.resource.attribute.labels.value | |
criada | read_only_udm.metadata.event_timestamp.seconds | |
created_std | read_only_udm.metadata.event_timestamp.seconds | |
DADOS | ||
description | read_only_udm.metadata.product_event_type | O valor é retirado do campo de descrição se o formato for JSON. Caso contrário, ele é determinado pelo campo eventid. |
Descrição | read_only_udm.metadata.product_event_type | O valor é retirado do campo de descrição se o formato for JSON. Caso contrário, ele é determinado pelo campo eventid. |
DOMAIN | read_only_udm.target.administrative_domain | |
dst_host | read_only_udm.target.ip | |
dst_port | read_only_udm.target.port | |
eventid | read_only_udm.metadata.product_event_type | O valor é retirado do campo de descrição se o formato for JSON. Caso contrário, ele é determinado pelo campo eventid. |
events_count | read_only_udm.security_result.detection_fields.value | |
FILENAME | read_only_udm.target.file.full_path | |
FIN | read_only_udm.security_result.detection_fields.value | |
flock_id | read_only_udm.principal.resource.attribute.labels.value | |
flock_name | read_only_udm.principal.resource.attribute.labels.value | |
FunctionData | ||
FunctionName | ||
CABEÇALHOS | read_only_udm.security_result.about.resource.attribute.labels | |
HOST | read_only_udm.target.hostname | |
HOSTNAME | read_only_udm.target.hostname | |
id | read_only_udm.metadata.product_log_id | |
ID | read_only_udm.security_result.detection_fields.value | |
IN | read_only_udm.security_result.detection_fields.value | |
ip_address | ||
CHAVE | ||
LEN | read_only_udm.security_result.detection_fields.value | |
LOCALNAME | read_only_udm.target.hostname | |
LOCALVERSION | read_only_udm.target.platform_version | |
logtype | read_only_udm.security_result.detection_fields.value | |
LOGINTYPE | ||
MAC | read_only_udm.principal.mac | |
matched_annotations | ||
MÉTODO | read_only_udm.network.http.method | |
MODO | ||
ms_macro_ip | read_only_udm.principal.ip | |
ms_macro_username | read_only_udm.principal.user.user_display_name | |
nome | read_only_udm.target.hostname | |
node_id | read_only_udm.principal.resource.attribute.labels.value | |
OFFSET | ||
CÓDIGO DE OPERAÇÃO | ||
SAI | read_only_udm.security_result.detection_fields.value | |
SENHA | ||
CAMINHO | read_only_udm.target.url | |
portas | read_only_udm.target.labels.value | |
PREC | read_only_udm.security_result.detection_fields.value | |
PreviousIP | read_only_udm.principal.ip | |
PROTO | read_only_udm.network.ip_protocol | |
PSH | read_only_udm.security_result.detection_fields.value | |
REALM | read_only_udm.target.administrative_domain | |
REMOTENAME | read_only_udm.principal.hostname | |
REMOTEVERSION | read_only_udm.principal.platform_version | |
REPO | read_only_udm.target.resource.attribute.labels.value | |
RESPOSTA | read_only_udm.network.http.response_code | |
ReverseDNS | ||
Configurações | read_only_udm.target.labels | |
SHARENAME | ||
SIZE | ||
PELE | ||
SMBARCH | ||
SMBREPEATEVENTMSG | ||
SMBVER | ||
SNAME | ||
SourceIP | read_only_udm.principal.ip | |
src_host | read_only_udm.principal.ip | |
src_host_reverse | read_only_udm.principal.hostname | |
src_port | read_only_udm.principal.port | |
STATUS | ||
resumo | read_only_udm.metadata.product_event_type | O valor é retirado do campo de descrição se o formato for JSON. Caso contrário, ele é determinado pelo campo eventid. |
SYN | read_only_udm.security_result.detection_fields.value | |
TCPBannerID | ||
TERMSIZE | ||
TERMTYPE | ||
timestamp | read_only_udm.metadata.event_timestamp.seconds | |
timestamp_std | read_only_udm.metadata.event_timestamp.seconds | |
Carimbo de data/hora | read_only_udm.metadata.event_timestamp.seconds | |
TKTVNO | read_only_udm.security_result.detection_fields.value | |
TOS | read_only_udm.security_result.detection_fields.value | |
TTL | read_only_udm.security_result.detection_fields.value | |
TIPO | ||
USER | read_only_udm.principal.user.user_display_name | |
USERAGENT | read_only_udm.network.http.user_agent | |
NOME DE USUÁRIO | read_only_udm.target.user.user_display_name | |
URG | read_only_udm.security_result.detection_fields.value | |
URGP | read_only_udm.security_result.detection_fields.value | |
WINDOW | read_only_udm.security_result.detection_fields.value | |
windows_desktopini_access_domain | read_only_udm.principal.group.group_display_name | |
windows_desktopini_access_username | read_only_udm.principal.user.user_display_name | |
read_only_udm.metadata.log_type | THINKST_CANARY: valor codificado. | |
read_only_udm.metadata.vendor_name | Thinkst: valor codificado | |
read_only_udm.metadata.product_name | Canary: valor codificado | |
read_only_udm.security_result.severity | CRÍTICA: valor codificado. | |
read_only_udm.is_alert | true: valor fixado no código | |
read_only_udm.is_significant | true: valor fixado no código | |
read_only_udm.network.application_protocol | Determinada pela porta e pelo product_event_type | |
read_only_udm.extensions.auth.mechanism | Determinado pelo método de autenticação usado no evento |
Alterações
2024-05-18
- Adicionamos suporte para eventos "Flock Settings Changed" e começamos a mapear o ID do usuário desses eventos.
2024-03-05
- Adição de suporte a eventos "Solicitação SIP" e "Solicitação TFTP".
- Melhoria no mapeamento de vários campos, como hashes de arquivos, agentes do usuário e rótulos de recursos.
- Começamos a mapear detalhes específicos dos cabeçalhos SIP e TFTP para uma melhor análise de segurança.
2023-12-08
- Os alertas "THINKST_CANARY" padronizados são eventos críticos com marcações de gravidade adequadas.
- Foi adicionado suporte a eventos de "NMAP OS Scan Detected".
2023-12-07
- Adição de suporte para os eventos "Tentativa de login do WinRM", "Tentativa de login do Telnet" e "Comando Redis".
- Melhoria na análise de carimbos de data/hora de eventos.
2023-09-15
- Inclusão de suporte a eventos de "tentativa de login VNC".
2023-08-04
- Melhoria no processamento de eventos acionados pelo Canarytoken:
- Agora, tipos de eventos mais específicos são usados.
- As informações do Canarytoken são mapeadas corretamente.
- Os eventos são marcados como alertas.
- A categoria de segurança está definida como "NETWORK_SUSPICIOUS".
2023-05-12
- Correção de um problema em que os eventos "Tentativa de login do MSSQL" não eram categorizados corretamente.
2022-12-04
- Foi adicionado suporte para os eventos "Tentativa de login HTTP", "Tentativa de login FTP", "Verificação do site", "Configurações do console alteradas" e "Tentativa de login RDP".