Recolha registos do BeyondTrust Remote Support
Este analisador processa mensagens syslog do BeyondTrust Remote Support, transformando-as no formato UDM. Processa registos formatados em CEF e não CEF, extraindo campos, realizando transformações de dados e mapeando-os para os campos UDM adequados, incluindo detalhes principais, de destino e de resultados de segurança.
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.
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.
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
- Para a instalação do Windows, execute o seguinte script:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
- Para a instalação do Linux, execute o seguinte script:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
- Pode encontrar opções de instalação adicionais neste guia de instalação.
Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps
- Aceda à máquina onde o Bindplane está instalado.
Edite o ficheiro
config.yaml
da seguinte forma:receivers: tcplog: # Replace the below port <54525> and IP <0.0.0.0> with your specific values listen_address: "0.0.0.0:54525" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the creds location below according the placement of the credentials file you downloaded creds: '{ json file for creds }' # Replace <customer_id> below with your actual ID that you copied customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # You can apply ingestion labels below as preferred ingestion_labels: log_type: SYSLOG namespace: BeyondTrust_Remote_Support raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
Reinicie o agente do Bindplane para aplicar as alterações:
sudo systemctl restart bindplane
Configure a exportação do Syslog a partir do BeyondTrust Remote Support
- Inicie sessão no BeyondTrust Remote Support.
- Aceda a Segurança > Administração de dispositivos.
- Aceda à secção Syslog e defina os seguintes valores:
- Servidor Syslog remoto: introduza o nome de anfitrião ou o endereço IP do servidor de anfitrião syslog (Bindplane). Neste campo, pode adicionar até três servidores syslog.
- Formato da mensagem: selecione RFC 5424.
- Porta: introduza a porta do servidor de anfitrião syslog (Bindplane).
- Clique em Enviar.
Mapeamento de UDM
Campo de registo | Mapeamento do UDM | Lógica |
---|---|---|
account:expiration | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "account:expiration" no registo não processado. |
account:email:locale | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "account:email:locale" no registo não processado. |
command_shell_is_whitelist | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "ssions:command_shell_is_whitelist" no registo não processado. |
datetime | read_only_udm.metadata.event_timestamp.seconds | O valor é analisado a partir do campo "datetime" no registo não processado e convertido numa indicação de tempo Unix. |
dtPostTime | read_only_udm.metadata.event_timestamp.seconds | O valor é analisado a partir do campo "dtPostTime" no registo não processado e convertido numa indicação de tempo Unix. |
evento | read_only_udm.metadata.product_event_type | O valor é retirado do campo "event" no registo não processado. |
anfitrião | read_only_udm.principal.hostname | O valor é retirado do campo "host" no registo não processado. |
id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "id" no registo não processado. |
license_pool:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "license_pool:id" no registo não processado. |
login_schedule:timezone | read_only_udm.target.location.country_or_region | O valor é retirado do campo "login_schedule:timezone" no registo não processado. |
old_account:email:address | read_only_udm.target.user.email_addresses | O valor é retirado do campo "old_account:email:address" no registo não processado. |
old_account:failed_logins | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_account:failed_logins" no registo não processado. |
old_display_number | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_display_number" no registo não processado. |
old_login_schedule:timezone | read_only_udm.target.location.country_or_region | O valor é retirado do campo "old_login_schedule:timezone" no registo não processado. |
old_permissions:api:reporting | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:api:reporting" no registo não processado. |
old_permissions:jump_item_role:default:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:jump_item_role:default:id" no registo não processado. |
old_permissions:jump_item_role:default:name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:jump_item_role:default:name" no registo não processado. |
old_permissions:jump_item_role:teams:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:jump_item_role:teams:id" no registo não processado. |
old_permissions:jump_item_role:teams:name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:jump_item_role:teams:name" no registo não processado. |
old_permissions:presentations:control:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:presentations:control:status" no registo não processado. |
old_permissions:public_sites:templates:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:public_sites:templates:status" no registo não processado. |
old_permissions:reporting:presentation_reports | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:reporting:presentation_reports" no registo não processado. |
old_permissions:reporting:support_reports | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:reporting:support_reports" no registo não processado. |
old_permissions:reporting:vault_reports | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:reporting:vault_reports" no registo não processado. |
old_permissions:support | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support" no registo não processado. |
old_permissions:support:accept_team_sessions:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:accept_team_sessions:status" no registo não processado. |
old_permissions:support:bomgar_button:change_public_sites:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:bomgar_button:change_public_sites:status" no registo não processado. |
old_permissions:support:bomgar_button:personal:deploy:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:bomgar_button:personal:deploy:status" no registo não processado. |
old_permissions:support:bomgar_button:team:manage | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:bomgar_button:team:manage" no registo não processado. |
old_permissions:support:bomgar_button:team:manage:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:bomgar_button:team:manage:status" no registo não processado. |
old_permissions:support:ios_content | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:ios_content" no registo não processado. |
old_permissions:support:jump:local | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:jump:local" no registo não processado. |
old_permissions:support:jump:local:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:jump:local:status" no registo não processado. |
old_permissions:support:jump:remote | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:jump:remote" no registo não processado. |
old_permissions:support:jump:remote:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:jump:remote:status" no registo não processado. |
old_permissions:support:rdp:local | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:rdp:local" no registo não processado. |
old_permissions:support:rdp:local:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:rdp:local:status" no registo não processado. |
old_permissions:support:rdp:remote | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:rdp:remote" no registo não processado. |
old_permissions:support:rdp:remote:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:rdp:remote:status" no registo não processado. |
old_permissions:support:session_assignment:idle_timeout | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:session_assignment:idle_timeout" no registo não processado. |
old_permissions:support:session_assignment:idle_timeout:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:session_assignment:idle_timeout:status" no registo não processado. |
old_permissions:support:session_assignment:session_limit | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:session_assignment:session_limit" no registo não processado. |
old_permissions:support:session_assignment:session_limit:status=forbid_override | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:session_assignment:session_limit:status=forbid_override" no registo não processado. |
old_permissions:support:session_keys | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:session_keys" no registo não processado. |
old_permissions:support:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:status" no registo não processado. |
old_permissions:support:team_share | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:team_share" no registo não processado. |
old_permissions:support:team_transfer | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:team_transfer" no registo não processado. |
old_permissions:support:vnc:local | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:vnc:local" no registo não processado. |
old_permissions:support:vnc:local:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:vnc:local:status" no registo não processado. |
old_permissions:support:vnc:remote | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:vnc:remote" no registo não processado. |
old_permissions:support:vnc:remote:status | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_permissions:support:vnc:remote:status" no registo não processado. |
old_private_display_name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_private_display_name" no registo não processado. |
old_provider:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_provider:id" no registo não processado. |
old_provider:name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "old_provider:name" no registo não processado. |
permissions:jump_item_role:default:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "permissions:jump_item_role:default:id" no registo não processado. |
permissions:jump_item_role:default:name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "permissions:jump_item_role:default:name" no registo não processado. |
permissions:jump_item_role:teams:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "permissions:jump_item_role:teams:id" no registo não processado. |
permissions:jump_item_role:teams:name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "permissions:jump_item_role:teams:name" no registo não processado. |
provider:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "provider:id" no registo não processado. |
provider:name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "provider:name" no registo não processado. |
motivo | read_only_udm.security_result.description | O valor é retirado do campo "reason" no registo não processado e anexado ao campo de descrição com o prefixo " – Reason:". |
sEventID | read_only_udm.metadata.product_event_type | O valor é retirado do campo "sEventID" no registo não processado. |
sIpAddress | read_only_udm.principal.ip | O valor é retirado do campo "sIpAddress" no registo não processado. |
sLoginName | read_only_udm.principal.user.userid | O valor é analisado a partir do campo "sLoginName" no registo não processado. Se o campo contiver um domínio, o domínio é extraído e mapeado para read_only_udm.principal.namespace. |
sMessage | read_only_udm.security_result.description | O valor é retirado do campo "sMessage" no registo não processado. O analisador extrai o texto entre aspas e mapeia-o para o campo de descrição. |
sOriginatingAccount | read_only_udm.principal.user.userid | O valor é analisado a partir do campo "sOriginatingAccount" no registo não processado. Se o campo contiver um domínio, o domínio é extraído e mapeado para read_only_udm.principal.namespace. |
sOriginatingApplicationComponent | read_only_udm.principal.application | O valor é retirado do campo "sOriginatingApplicationComponent" no registo não processado e anexado ao campo da aplicação entre parênteses após o valor de sOriginatingApplicationName. |
sOriginatingApplicationName | read_only_udm.principal.application | O valor é retirado do campo "sOriginatingApplicationName" no registo não processado. |
sOriginatingSystem | read_only_udm.principal.hostname | O valor é retirado do campo "sOriginatingSystem" no registo não processado. |
session_policy:id | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "session_policy:id" no registo não processado. |
session_policy:name | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "session_policy:name" no registo não processado. |
session_policy:purpose | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "session_policy:purpose" no registo não processado. |
site | read_only_udm.target.hostname | O valor é retirado do campo "site" no registo não processado. |
estado | read_only_udm.security_result.summary | O valor é retirado do campo "status" no registo não processado e anexado ao campo de resumo. |
support:jump:local | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:jump:local" no registo não processado. |
support:permissions:allow_pinned_clients | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:allow_pinned_clients" no registo não processado. |
support:permissions:allow_users | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:allow_users" no registo não processado. |
support:permissions:canned_scripts | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:canned_scripts" no registo não processado. |
support:permissions:chat | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:chat" no registo não processado. |
support:permissions:chat:push_url | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:chat:push_url" no registo não processado. |
support:permissions:chat:send_file | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:chat:send_file" no registo não processado. |
support:permissions:command_shell | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:command_shell" no registo não processado. |
support:permissions:deploy_callback_button | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:deploy_callback_button" no registo não processado. |
support:permissions:elevation | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:elevation" no registo não processado. |
support:permissions:file_transfers:cust | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:file_transfers:cust" no registo não processado. |
support:permissions:file_transfers:download | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:file_transfers:download" no registo não processado. |
support:permissions:file_transfers:rep | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:file_transfers:rep" no registo não processado. |
support:permissions:file_transfers:upload | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:file_transfers:upload" no registo não processado. |
support:permissions:registry_access | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:registry_access" no registo não processado. |
support:permissions:request_pin_unpin | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:request_pin_unpin" no registo não processado. |
support:permissions:screen_sharing | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing" no registo não processado. |
support:permissions:screen_sharing:allow_elevated_tools | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:allow_elevated_tools" no registo não processado. |
support:permissions:screen_sharing:annotations | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:annotations" no registo não processado. |
support:permissions:screen_sharing:application_restriction | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:application_restriction" no registo não processado. |
support:permissions:screen_sharing:application_sharing | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:application_sharing" no registo não processado. |
support:permissions:screen_sharing:clipboard_direction | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:clipboard_direction" no registo não processado. |
support:permissions:screen_sharing:cobrowse | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:cobrowse" no registo não processado. |
support:permissions:screen_sharing:privacy_mode | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:privacy_mode" no registo não processado. |
support:permissions:screen_sharing:show_screen | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:screen_sharing:show_screen" no registo não processado. |
support:permissions:system_info | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:system_info" no registo não processado. |
support:permissions:system_info:actions | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:permissions:system_info:actions" no registo não processado. |
support:prompting:command_shell | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:command_shell" no registo não processado. |
support:prompting:default | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:default" no registo não processado. |
support:prompting:deploy_callback_button | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:deploy_callback_button" no registo não processado. |
support:prompting:elevate | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:elevate" no registo não processado. |
support:prompting:file_transfer | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:file_transfer" no registo não processado. |
support:prompting:registry | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:registry" no registo não processado. |
support:prompting:screen_sharing:cobrowse | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:screen_sharing:cobrowse" no registo não processado. |
support:prompting:screen_sharing:full_access | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "support:prompting:screen_sharing:full_access" no registo não processado. |
alvo | read_only_udm.target.application | O valor é retirado do campo "target" no registo não processado. O analisador substitui "rep_client" por "Representative Console" e "web/login" por "Web/Login". |
two_factor_auth:app | read_only_udm.principal.user.attribute.labels.value | O valor é retirado do campo "two_factor_auth:app" no registo não processado. |
quando | read_only_udm.metadata.product_log_id | O valor é retirado do campo "when" no registo não processado. |
quando | read_only_udm.metadata.event_timestamp.seconds | O valor é analisado a partir do campo "when" no registo não processado e convertido numa indicação de tempo Unix. |
quem | read_only_udm.principal.user.userid | O valor é analisado a partir do campo "who" no registo não processado. O analisador sintático extrai o texto entre parênteses. |
quem | read_only_udm.principal.user.user_display_name | O valor é analisado a partir do campo "who" no registo não processado. O analisador extrai o texto antes dos parênteses. |
who_ip | read_only_udm.principal.ip | O valor é retirado do campo "who_ip" no registo não processado. |
read_only_udm.metadata.vendor_name | O valor é definido como "BeyondTrust" pelo analisador. | |
read_only_udm.metadata.product_name | O valor é definido como "BeyondTrust Remote Support" pelo analisador. | |
read_only_udm.metadata.log_type | O valor é definido como "BOMGAR" pelo analisador. | |
read_only_udm.extensions.auth.type | O valor é definido como "MACHINE" se o destino for "rep_client", "SSO" se o destino for "web/login" e "AUTHTYPE_UNSPECIFIED" caso contrário pelo analisador. | |
read_only_udm.extensions.auth.mechanism | O valor é definido como "USERNAME_PASSWORD" se o método for "using password", "REMOTE" se o método for "using elevate" e deixado vazio caso contrário pelo analisador. | |
read_only_udm.security_result.action | O valor é definido como "ALLOW" se o estado não for "failure", o motivo não for "failed" ou "user not found" e o sMessage não contiver "failed login to web app". Caso contrário, o valor é definido como "BLOCK" pelo analisador. | |
read_only_udm.security_result.summary | O valor é definido como "Início de sessão do utilizador " ou "Fim de sessão do utilizador " com base no eventName, seguido do estado, se não estiver vazio pelo analisador. | |
read_only_udm.security_result.description | O valor é definido como "User " seguido do userid, endereço IP, estado, eventName, conector ("to" para início de sessão e "from" para terminar sessão), destino e método. Se o motivo não estiver vazio e não for "failed", é anexado à descrição com o prefixo " – Motivo:" pelo analisador. |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.