Coletar registros do SecureAuth Identity Platform
Este documento explica como ingerir os registros do SecureAuth Identity Platform para as operações de segurança do Google usando o Bindplane. O analisador extrai campos de vários formatos de registro (SYSLOG, XML, pares de chave-valor) usando filtros grok e xml. Em seguida, ele mapeia os campos extraídos para os atributos correspondentes do modelo de dados unificado (UDM, na sigla em inglês), enriquecendo os dados com o contexto do evento de segurança e padronizando a saída para análise posterior.
Antes de começar
- Verifique se você tem uma instância do Google Security Operations.
- Verifique se você está usando o Windows 2016 ou uma versão mais recente ou um host Linux com
systemd
. - Se estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas.
- Verifique se você tem acesso privilegiado ao SecureAuth.
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.
- Faça o download do arquivo de autenticação de transferência. Salve o arquivo com segurança 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
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" /quiet
Instalação do Linux
- Abra um terminal com privilégios de raiz ou sudo.
Execute este comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Outros recursos de instalação
- Para mais opções de instalação, consulte este guia de instalação.
Configurar o agente do Bindplane para processar o Syslog e enviar ao Google SecOps
Acesse o arquivo de configuração:
- Localize o arquivo
config.yaml
. Normalmente, ele está no diretório/etc/bindplane-agent/
no Linux ou no diretório de instalação no Windows. - Abra o arquivo usando um editor de texto (por exemplo,
nano
,vi
ou Notepad).
- Localize o arquivo
Edite o arquivo
config.yaml
da seguinte forma:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization ingestion_labels: log_type: SECUREAUTH_SSO raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.
Substitua
<customer_id>
pelo ID real do cliente.Atualize
/path/to/ingestion-authentication-file.json
para o caminho em que o arquivo de autenticação foi salvo na seção Receber o arquivo de autenticação de transferência do Google SecOps.
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 bindplane-agent
Para reiniciar o agente do Bindplane no Windows, use o console Services ou digite o seguinte comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configurar o SecureAuth Identity Platform
- Faça login no console da SecureAuth Identity.
- Selecione Registros.
- Informe os seguintes detalhes de configuração na seção Opções de registro:
- ID da instância de registro: insira o ID da instância de registro, o nome do aplicativo ou do domínio, por exemplo,
SecureAuth1
. - Registros de auditoria: marque a caixa de seleção Syslog.
- Registros de erros: marque a caixa de seleção Syslog.
- Servidor Syslog: insira o endereço IP do seu agente do Bindplane.
- Porta Syslog: insira o número da porta do agente do Bindplane. Por exemplo,
514
. - Especificação do RFC do Syslog: selecione RFC 5424.
- ID da instância de registro: insira o ID da instância de registro, o nome do aplicativo ou do domínio, por exemplo,
- Clique em Salvar.
Tabela de mapeamento do UDM
Campo de registro | Mapeamento de UDM | Lógica |
---|---|---|
action_msg | read_only_udm.target.process.command_line | Valor do campo action_msg |
Dispositivo | read_only_udm.principal.domain.name | Valor do campo Appliance |
Dispositivo | read_only_udm.target.administrative_domain | Valor do campo Appliance |
BrowserSession | read_only_udm.network.session_id | Valor do campo BrowserSession |
gato | read_only_udm.metadata.product_event_type | Valor do campo cat |
Categoria | read_only_udm.metadata.product_event_type | Valor do campo Category |
cn1 | security_result.severity | Mapeado com base no valor de cn1 quando cn1Label é "Prioridade": 1 - ALTO, 2 - MÉDIO, 3 ou 4 - BAIXO |
Empresa | read_only_udm.additional.fields.value.string_value | Valor do campo Company |
cs1 | read_only_udm.network.session_id | Valor do campo cs1 quando cs1Label é "BrowserSession" |
cs3 | read_only_udm.additional.fields.value.string_value | Valor do campo cs3 quando cs3Label é 'CompanyName' |
dst | read_only_udm.target.ip | Valor do campo dst |
domínio | read_only_udm.principal.domain.name | Valor do campo domain |
dvc | read_only_udm.intermediary.ip | Valor do campo dvc |
EventID | read_only_udm.metadata.product_log_id | Valor do campo EventID |
HostName | read_only_udm.principal.hostname | Valor do campo HostName quando o grok não corresponde ao endereço IP |
HostName | read_only_udm.principal.ip | Valor do campo HostName quando o grok corresponde ao endereço IP |
ip | read_only_udm.principal.ip | Valor do campo ip |
Mensagem | read_only_udm.metadata.description | Valor do campo Message |
Mensagem | security_result.description | Valor do campo Message |
nat_ip | read_only_udm.principal.nat_ip | Valor do campo nat_ip |
Prioridade | security_result.severity | Mapeado com base no valor de Priority : 1 - ALTO, 2 - MÉDIO, 3 ou 4 - BAIXO |
SAMLConsumerURL | read_only_udm.target.url | Valor do campo SAMLConsumerURL |
sec_msg | security_result.description | Valor do campo sec_msg |
SecureAuthIdPAppliance | read_only_udm.target.administrative_domain | Valor do campo SecureAuthIdPAppliance |
SecureAuthIdPApplianceMachineName | read_only_udm.target.hostname | Valor do campo SecureAuthIdPApplianceMachineName |
SecureAuthIdPDestinationSiteUrl | read_only_udm.target.url | Valor do campo SecureAuthIdPDestinationSiteUrl |
SecureAuthIdPProductType | read_only_udm.additional.fields.value.string_value | Valor do campo SecureAuthIdPProductType |
sessão | read_only_udm.network.session_id | Valor do campo session |
spid | read_only_udm.target.process.pid | Valor do campo spid |
src | read_only_udm.principal.ip | Valor do campo src |
suser | read_only_udm.target.user.userid | Valor do campo suser |
UserAgent | read_only_udm.network.http.user_agent | Valor do campo UserAgent |
UserHostAddress | read_only_udm.principal.nat_ip | Valor do campo UserHostAddress |
UserHostAddress | read_only_udm.target.ip | Valor do campo UserHostAddress |
UserID | read_only_udm.principal.user.userid | Valor do campo UserID |
Versão | read_only_udm.metadata.product_version | Valor do campo Version |
read_only_udm.additional.fields.key | Valor fixado: "CompanyName" | |
read_only_udm.additional.fields.key | Valor fixado: "Company" | |
read_only_udm.additional.fields.key | Valor fixado no código: "SecureAuthIdPProductType" | |
read_only_udm.extensions.auth.type | Valor fixado: "SSO" | |
read_only_udm.metadata.event_type | 'USER_LOGIN' se SecureAuthIdPAuthGuiMode == 0 e auth_result == Success , 'USER_CHANGE_PERMISSIONS' se SecureAuthIdPAuthGuiMode == 0 e auth_result ==WS-Trust success. , 'USER_LOGOUT' se SecureAuthIdPAuthGuiMode == 0 e auth_result == Session Aborted , 'NETWORK_CONNECTION' se UserHostAddress != and `HostName` != , 'STATUS_UPDATE' se ip != or `HostName` != , 'USER_UNCATEGORIZED' se UserHostAddress != and `HostName` == e UserID != ``, caso contrário, 'GENERIC_EVENT' |
|
read_only_udm.metadata.log_type | Valor fixado: 'SECUREAUTH_SSO' | |
read_only_udm.metadata.product_name | Valor fixado: 'SECUREAUTH_SSO' | |
read_only_udm.metadata.vendor_name | Valor fixado: 'SECUREAUTH_SSO' | |
read_only_udm.target.user.email_addresses | Valor do campo user_email quando not_email é falso |
|
security_result.severity | "HIGH" se cn1Label == Priority e cn1 == 1 , "MEDIUM" se cn1Label == Priority e cn1 == 2 , "LOW" se cn1Label == Priority e cn1 em [3 , 4 ], "HIGH" se Priority == 1 , "MEDIUM" se Priority == 2 , "LOW" se Priority em [3 , 4 ] |
Alterações
2023-07-09
- Inclusão de suporte a um novo formato de registro: SYSLOG + KV.
- Foi adicionado um padrão Grok para analisar os novos registros.
2022-04-25
- Parser recém-criado: a versão específica do cliente foi atualizada e convertida para o padrão.
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.