Coletar registros do InterSystems Caché
Este documento explica como ingerir registros do InterSystems Caché no Google Security Operations usando o agente do Bindplane.
O InterSystems Caché é uma plataforma de banco de dados e aplicativos de alto desempenho usada em serviços financeiros e de saúde. Ele gera registros de auditoria para operações de banco de dados, acesso de usuários e eventos do sistema. O analisador extrai campos dos dados de auditoria do Caché e os mapeia para o modelo de dados unificado (UDM), capturando a identidade do usuário, atributos de rede, detalhes do processo, operações de arquivo e resultados de segurança.
Antes de começar
Verifique se você tem os pré-requisitos a seguir:
- Uma instância do Google SecOps
- Windows Server 2016 ou mais recente ou host Linux com
systemd - Conectividade de rede entre o agente do Bindplane e o servidor InterSystems Caché
- Se estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas de acordo com os requisitos do agente Bindplane.
- Acesso privilegiado à instância do InterSystems Caché com autoridade para configurar a geração de registros de auditoria e a exportação de registros
Receber o arquivo de autenticação de ingestão do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Agentes de coleta.
- Baixe o arquivo de autenticação de ingestão.
Salve o arquivo de forma segura no sistema em que o Bindplane será instalado.
Receber o ID de cliente do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
Copie e salve o ID do cliente na seção Detalhes da organização.
Instalar o agente do BindPlane
Instale o agente do Bindplane no seu sistema operacional Windows ou Linux de acordo com as instruções a seguir.
Instalação do Windows
- Abra o prompt de comando ou o PowerShell como administrador.
Execute este comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietAguarde a conclusão da instalação.
Execute o seguinte comando para confirmar a instalação:
sc query observiq-otel-collectorO serviço vai aparecer como EM EXECUÇÃO.
Instalação do Linux
- Abra um terminal com privilégios de root ou sudo.
Execute este comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.shAguarde a conclusão da instalação.
Execute o seguinte comando para confirmar a instalação:
sudo systemctl status observiq-otel-collectorO serviço vai aparecer como ativo (em execução).
Outros recursos de instalação
Para mais opções de instalação e solução de problemas, consulte o guia de instalação do agente do Bindplane.
Configurar o agente do Bindplane para ingerir syslog e enviar ao Google SecOps
Localizar o arquivo de configuração
Linux:
sudo nano /opt/observiq-otel-collector/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Editar o arquivo de configuração
Substitua todo o conteúdo de
config.yamlpela seguinte configuração:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/intersystems_cache: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: INTERSYSTEMS_CACHE raw_log_field: body service: pipelines: logs/intersystems_cache: receivers: - udplog exporters: - chronicle/intersystems_cache
Parâmetros de configuração
Substitua os seguintes marcadores de posição:
Configuração do receptor:
udplog: o tipo de receptor com base no protocolo:udplogpara syslog UDPtcplogpara syslog TCPsyslogpara syslog RFC 3164/5424
0.0.0.0: endereço IP para escutar:0.0.0.0para detectar em todas as interfaces (recomendado)- Endereço IP específico para detectar em uma interface
514: número da porta para escutar (por exemplo,514,1514,6514)
Configuração do exportador:
<customer_id>: ID do cliente da etapa anteriormalachiteingestion-pa.googleapis.com: URL do endpoint regional:- EUA:
malachiteingestion-pa.googleapis.com - Europa:
europe-malachiteingestion-pa.googleapis.com - Ásia:
asia-southeast1-malachiteingestion-pa.googleapis.com - Consulte a lista completa em Endpoints regionais.
- EUA:
- Ajuste o
creds_file_pathdependendo da plataforma:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
Salve o arquivo de configuração.
- Depois de editar, salve o arquivo:
- Linux: pressione
Ctrl+O,EntereCtrl+X. - Windows: clique em Arquivo > Salvar.
- Linux: pressione
Reinicie o agente do Bindplane para aplicar as mudanças
Para reiniciar o agente do Bindplane no Linux, execute o seguinte comando:
sudo systemctl restart observiq-otel-collectorVerifique se o serviço está em execução:
sudo systemctl status observiq-otel-collectorVerifique se há erros nos registros:
sudo journalctl -u observiq-otel-collector -f
Para reiniciar o agente do Bindplane no Windows, escolha uma das seguintes opções:
Prompt de comando ou PowerShell como administrador:
net stop observiq-otel-collector && net start observiq-otel-collectorConsole de serviços:
- Pressione
Win+R, digiteservices.msce pressione Enter. - Localize o Coletor do OpenTelemetry da observIQ.
- Clique com o botão direito do mouse e selecione Reiniciar.
Verifique se o serviço está em execução:
sc query observiq-otel-collectorVerifique se há erros nos registros:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Pressione
Configurar o encaminhamento de syslog do InterSystems Caché
O InterSystems Caché grava eventos de auditoria no banco de dados de auditoria interno. Configure o encaminhamento do syslog para enviar esses eventos ao agente do Bindplane.
Ativar e configurar a geração de registros de auditoria
- Abra o Portal de gerenciamento de cache.
- Acesse Administração do sistema > Segurança > Auditoria > Configurar eventos do sistema.
- Ative os eventos de auditoria que você quer capturar (por exemplo,
%System/%Login/LoginFailure,%System/%Security/Protect). - Clique em Salvar.
Configurar o encaminhamento de syslog
- No Management Portal, acesse Administração do sistema > Segurança > Auditoria > Configurar auditoria.
- Ative o encaminhamento de syslog para eventos de auditoria.
- Informe os seguintes detalhes de configuração:
- Servidor Syslog: insira o endereço IP do host do agente do Bindplane (por exemplo,
192.168.1.100). - Porta: insira
514(precisa corresponder à porta do receptor do Bindplane). - Protocolo: selecione UDP (precisa corresponder ao tipo de receptor do Bindplane).
- Servidor Syslog: insira o endereço IP do host do agente do Bindplane (por exemplo,
Clique em Salvar.
Tabela de mapeamento do UDM
| Campo de registro | Mapeamento do UDM | Lógica |
|---|---|---|
deviceNtDomain |
about.administrative_domain |
Renomeado/mapeado |
deviceExternalId |
about.asset.asset_id |
Mapeado diretamente |
device_product |
about.asset.asset_id |
Mapeado diretamente |
device_vendor |
about.asset.asset_id |
Mapeado diretamente |
fileHash |
about.file.full_path |
Mapeado diretamente |
filePath |
about.file.full_path |
Renomeado/mapeado |
_hash |
about.file.sha256 |
Renomeado/mapeado |
fileHash |
about.file.sha256 |
Renomeado/mapeado |
fsize |
about.file.size |
Renomeado/mapeado |
dvchost |
about.hostname |
Renomeado/mapeado |
ips |
about.ip |
Mesclado |
dvc_mac |
about.mac |
Mapeado: slot → mac_address |
dvcmac |
about.mac |
Mesclado |
mac_address |
about.mac |
Mesclado |
deviceTranslatedAddress |
about.nat_ip |
Mesclado |
Emne |
about.process.command_line |
Mapeado diretamente |
Path |
about.process.command_line |
Mapeado diretamente |
Subject |
about.process.command_line |
Mapeado diretamente |
deviceProcessName |
about.process.command_line |
Renomeado/mapeado |
dvcpid |
about.process.pid |
Renomeado/mapeado |
permissions |
about.resource.attribute.permissions |
Mesclado |
additional_cfp1 |
additional.fields |
Mesclado |
additional_cfp2 |
additional.fields |
Mesclado |
additional_cfp3 |
additional.fields |
Mesclado |
additional_cfp4 |
additional.fields |
Mesclado |
additional_cn1 |
additional.fields |
Mesclado |
additional_cn2 |
additional.fields |
Mesclado |
additional_cn3 |
additional.fields |
Mesclado |
additional_cs1 |
additional.fields |
Mesclado |
additional_cs2 |
additional.fields |
Mesclado |
additional_cs3 |
additional.fields |
Mesclado |
additional_cs4 |
additional.fields |
Mesclado |
additional_cs5 |
additional.fields |
Mesclado |
additional_cs6 |
additional.fields |
Mesclado |
additional_cs7 |
additional.fields |
Mesclado |
additional_devicePayloadId |
additional.fields |
Mesclado |
additional_eventId |
additional.fields |
Mesclado |
additional_field |
additional.fields |
Mesclado |
additional_field_key |
additional.fields |
Mapeado: smb_stage1 → additional_smb_stage1 |
additional_flexString1 |
additional.fields |
Mesclado |
additional_fname |
additional.fields |
Mesclado |
additional_smb_stage1 |
additional.fields |
Mesclado |
cs2 |
additional.fields |
Mapeado: arc_test → additional_cs2 |
cs5_label |
additional.fields |
Mesclado |
event_name |
extensions.auth.type |
Mapeado: logout → AUTHTYPE_UNSPECIFIED, login → AUTHTYPE_UNSPECIFIED |
field_intermediary |
intermediary |
Mesclado |
msg |
metadata.description |
Renomeado/mapeado |
Generated |
metadata.event_timestamp |
Analisado como yyyy-MM-ddTHH:mm:ss |
Received |
metadata.event_timestamp |
Analisado como yyyy-MM-ddTHH:mm:ss |
rt |
metadata.event_timestamp |
Analisado como yyyy-MM-ddTHH:mm:ssZ |
event_name |
metadata.event_type |
Mapeado: logout → USER_LOGOUT, login → USER_LOGIN, "LogSpyware","LogPredictiveMachin... |
device_event_class_id |
metadata.product_event_type |
Mapeado diretamente |
event_name |
metadata.product_event_type |
Mapeado diretamente |
externalId |
metadata.product_log_id |
Mapeado diretamente |
device_product |
metadata.product_name |
Mapeado diretamente |
device_version |
metadata.product_version |
Mapeado diretamente |
device_vendor |
metadata.vendor_name |
Renomeado/mapeado |
app_protocol_output |
network.application_protocol |
Mapeado diretamente |
deviceDirection |
network.direction |
Mapeado: 0 → INBOUND, 1 → OUTBOUND |
requestMethod |
network.http.method |
Renomeado/mapeado |
agentZoneURI |
network.http.referral_url |
Mapeado diretamente |
requestClientApplication |
network.http.user_agent |
Renomeado/mapeado |
ip_protocol_out |
network.ip_protocol |
Mapeado diretamente |
in |
network.received_bytes |
Renomeado/mapeado |
out |
network.sent_bytes |
Renomeado/mapeado |
sntdom |
principal.administrative_domain |
Renomeado/mapeado |
sourceServiceName |
principal.application |
Renomeado/mapeado |
Group_name |
principal.group.group_display_name |
Mapeado diretamente |
Gruppenavn |
principal.group.group_display_name |
Mapeado diretamente |
Device_name |
principal.hostname |
Mapeado diretamente |
Enhetsnavn |
principal.hostname |
Mapeado diretamente |
shost |
principal.hostname |
Renomeado/mapeado |
principal_ip |
principal.ip |
Mesclado |
shost |
principal.ip |
Mesclado |
mac |
principal.mac |
Mesclado |
sourceTranslatedAddress |
principal.nat_ip |
Mesclado |
sourceTranslatedPort |
principal.nat_port |
Renomeado/mapeado |
spt |
principal.port |
Renomeado/mapeado |
sproc |
principal.process.command_line |
Renomeado/mapeado |
spid |
principal.process.pid |
Renomeado/mapeado |
principal_role |
principal.user.attribute.roles |
Mesclado |
suser |
principal.user.user_display_name |
Mapeado diretamente |
suid |
principal.user.userid |
Renomeado/mapeado |
_action |
security_result.action |
Mesclado |
act |
security_result.action |
Mapeado: accept → _action, deny → _action |
Action_Taken |
security_result.action_details |
Mapeado diretamente |
act |
security_result.action_details |
Mapeado diretamente |
cat |
security_result.category_details |
Mesclado |
Scan_Type |
security_result.description |
Mapeado diretamente |
Type |
security_result.description |
Mapeado diretamente |
msg_data_2 |
security_result.description |
Mapeado diretamente |
infection_channel_label |
security_result.detection_fields |
Mesclado |
operasjon_label |
security_result.detection_fields |
Mesclado |
operation_label |
security_result.detection_fields |
Mesclado |
permission_label |
security_result.detection_fields |
Mesclado |
spyware_Grayware_Type_label |
security_result.detection_fields |
Mesclado |
threat_probability_label |
security_result.detection_fields |
Mesclado |
tillatelse_label |
security_result.detection_fields |
Mesclado |
mwProfile |
security_result.rule_name |
Mapeado diretamente |
severity |
security_result.severity |
Mapeado: "0", "1", "2", "3", "LOW" → LOW, "4", "5", "6", "MEDIUM", "SUBSTANTIAL", "INFO"... |
severity |
security_result.severity_details |
Mapeado diretamente |
Result |
security_result.summary |
Mapeado diretamente |
appcategory |
security_result.summary |
Mapeado diretamente |
reason |
security_result.summary |
Renomeado/mapeado |
Spyware |
security_result.threat_name |
Mapeado diretamente |
Unknown_Threat |
security_result.threat_name |
Mapeado diretamente |
Virus_Malware_Name |
security_result.threat_name |
Mapeado diretamente |
oldFilePath |
src.file.full_path |
Renomeado/mapeado |
oldFileSize |
src.file.size |
Renomeado/mapeado |
old_permissions |
src.resource.attribute.permissions |
Mesclado |
dntdom |
target.administrative_domain |
Renomeado/mapeado |
app |
target.application |
Mapeado diretamente |
destinationServiceName |
target.application |
Renomeado/mapeado |
ahost |
target.hostname |
Mapeado diretamente |
temp_dhost |
target.hostname |
Mapeado diretamente |
IPv6_Address |
target.ip |
Mesclado |
agt |
target.ip |
Mesclado |
dst_ip |
target.ip |
Mesclado |
ipv6 |
target.ip |
Mapeado: - → IPv6_Address |
atz |
target.location.country_or_region |
Mapeado diretamente |
amac |
target.mac |
Mesclado |
mac_address |
target.mac |
Mesclado |
destination_translated_address |
target.nat_ip |
Mesclado |
destinationTranslatedPort |
target.nat_port |
Renomeado/mapeado |
dpt |
target.port |
Renomeado/mapeado |
dproc |
target.process.command_line |
Renomeado/mapeado |
File_name |
target.process.file.full_path |
Mapeado diretamente |
Infected_Resource |
target.process.file.full_path |
Mapeado diretamente |
Object |
target.process.file.full_path |
Mapeado diretamente |
Objekt |
target.process.file.full_path |
Mapeado diretamente |
dpid |
target.process.pid |
Renomeado/mapeado |
resource_Type_label |
target.resource.attribute.labels |
Mesclado |
request |
target.url |
Mapeado diretamente |
target_role |
target.user.attribute.roles |
Mesclado |
CustomerName |
target.user.user_display_name |
Mapeado diretamente |
temp_duser |
target.user.user_display_name |
Mapeado diretamente |
Bruker |
target.user.userid |
Mapeado diretamente |
User_value |
target.user.userid |
Mapeado diretamente |
temp_duid |
target.user.userid |
Mapeado diretamente |
| N/A | extensions.auth.type |
Constante: AUTHTYPE_UNSPECIFIED |
| N/A | metadata.event_type |
Constante: USER_LOGOUT |
| N/A | network.direction |
Constante: INBOUND |
| N/A | security_result.severity |
Constante: LOW |
Registro de alterações
Ver o registro de alterações deste analisador
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.