Recolha registos da plataforma de identidade SecureAuth
Este documento explica como carregar registos da SecureAuth Identity Platform para o Google Security Operations através do Bindplane. O analisador extrai campos de vários formatos de registo (SYSLOG, XML, pares de chave/valor) através de filtros grok e XML. Em seguida, mapeia os campos extraídos para os atributos correspondentes do UDM (modelo de dados unificado), enriquecendo os dados com o contexto do evento de segurança e normalizando o resultado para análise posterior.
Antes de começar
- Certifique-se de que tem uma instância do Google Security Operations.
- Certifique-se de que está a usar o Windows 2016 ou posterior, ou um anfitrião Linux com
systemd
. - Se estiver a executar o serviço através de um proxy, certifique-se de que as portas da firewall estão abertas.
- Certifique-se de que tem acesso privilegiado ao SecureAuth.
Obtenha o ficheiro de autenticação de carregamento do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Agentes de recolha.
- Transfira o ficheiro de autenticação de carregamento. Guarde o ficheiro de forma segura no sistema onde o Bindplane vai ser instalado.
Obtenha o ID de cliente do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Perfil.
- Copie e guarde o ID do cliente da secção Detalhes da organização.
Instale o agente do Bindplane
Instalação do Windows
- Abra a Linha de comandos ou o PowerShell como administrador.
Execute o seguinte 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 o seguinte comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Recursos de instalação adicionais
- Para ver opções de instalação adicionais, consulte este guia de instalação.
Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps
Aceda ao ficheiro de configuração:
- Localize o ficheiro
config.yaml
. Normalmente, encontra-se no diretório/etc/bindplane-agent/
no Linux ou no diretório de instalação no Windows. - Abra o ficheiro com um editor de texto (por exemplo,
nano
,vi
ou Bloco de notas).
- Localize o ficheiro
Edite o ficheiro
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 de cliente real.Atualize
/path/to/ingestion-authentication-file.json
para o caminho onde o ficheiro de autenticação foi guardado na secção Obtenha o ficheiro de autenticação de carregamento do Google SecOps.
Reinicie o agente do Bindplane para aplicar as alterações
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, pode usar a consola Services ou introduzir o seguinte comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configure a SecureAuth Identity Platform
- Inicie sessão na consola do SecureAuth Identity.
- Selecione Registos.
- Forneça os seguintes detalhes de configuração na secção Opções de registo:
- ID da instância de registo: introduza o ID da instância de registo, o nome da aplicação ou o nome do domínio; por exemplo,
SecureAuth1
. - Registos de auditoria: selecione a caixa de verificação Syslog.
- Registos de erros: selecione a caixa de verificação Syslog.
- Servidor Syslog: introduza o endereço IP do seu agente Bindplane.
- Porta Syslog: introduza o número da porta do agente Bindplane; por exemplo,
514
. - Especificação RFC do Syslog: selecione RFC 5424.
- ID da instância de registo: introduza o ID da instância de registo, o nome da aplicação ou o nome do domínio; por exemplo,
- Clique em Guardar.
Tabela de mapeamento da UDM
Campo de registo | Mapeamento do UDM | Lógica |
---|---|---|
action_msg | read_only_udm.target.process.command_line | Valor do campo action_msg |
Eletrodoméstico | read_only_udm.principal.domain.name | Valor do campo Appliance |
Eletrodoméstico | 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 | Mapeada com base no valor de cn1 quando cn1Label é "Priority": 1 – HIGH, 2 – MEDIUM, 3 ou 4 – LOW |
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 encontra uma correspondência para o 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 | Mapeada 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 codificado - "CompanyName" | |
read_only_udm.additional.fields.key | Valor codificado - "Company" | |
read_only_udm.additional.fields.key | Valor codificado - "SecureAuthIdPProductType" | |
read_only_udm.extensions.auth.type | Valor codificado - "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 codificado - "SECUREAUTH_SSO" | |
read_only_udm.metadata.product_name | Valor codificado - "SECUREAUTH_SSO" | |
read_only_udm.metadata.vendor_name | Valor codificado - "SECUREAUTH_SSO" | |
read_only_udm.target.user.email_addresses | Valor do campo user_email quando not_email é falso |
|
security_result.severity | 'HIGH' if cn1Label == Priority and cn1 == 1 , 'MEDIUM' if cn1Label == Priority and cn1 == 2 , 'LOW' if cn1Label == Priority and cn1 in [3 , 4 ], 'HIGH' if Priority == 1 , 'MEDIUM' if Priority == 2 , 'LOW' if Priority in [3 , 4 ] |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.