Recolha registos do Pulse Secure

Compatível com:

Este documento descreve como pode recolher registos do Pulse Secure através de um encaminhador do Google Security Operations.

Para mais informações, consulte o artigo Vista geral da ingestão de dados no Google Security Operations.

Uma etiqueta de carregamento identifica o analisador que normaliza os dados de registo não processados para o formato UDM estruturado. As informações neste documento aplicam-se ao analisador com a etiqueta de carregamento PULSE_SECURE_VPN.

Configure a Pulse Secure VPN

Para configurar a VPN Pulse Secure, faça uma das seguintes ações:

  • Configure a versão 8.3R3 e anteriores da VPN Pulse Secure
  • Configure a versão 8.3R4 e posterior da VPN Pulse Secure

Configure a versão 8.3R3 e anteriores da VPN Pulse Secure

  1. Inicie sessão na consola do Pulse Connect Secure.
  2. Na consola Pulse Connect Secure, selecione System > Log/monitoring > Settings. Pode selecionar Definições no separador Eventos, no separador Acesso do utilizador ou no separador Acesso de administrador.
  3. Na secção Selecionar eventos para registar, selecione todas as caixas de verificação correspondentes a eventos.
  4. Na secção Servidores Syslog, faça o seguinte:
    1. No campo Nome do servidor/IP, especifique o endereço IP do encaminhador do Google Security Operations.
    2. Na lista Instalação, selecione LOCAL0. A lista Facility apresenta oito instalações: LOCAL0 a LOCAL7. Pode usar uma destas definições para mapear instalações no seu servidor syslog.
    3. Na lista Tipo, selecione UDP ou TCP.
  5. Clique em Adicionar.
  6. Opcional: para adicionar vários servidores syslog para eventos, acesso de administrador ou registos de acesso de utilizadores, repita os passos 2 a 4.
  7. Clique em Guardar alterações.
  8. Para garantir que o formato de registo padrão está definido como predefinição, faça o seguinte:
    1. Abra a consola Pulse connect secure.
    2. Nos separadores Eventos, Acesso do utilizador e Acesso de administrador, defina os Filtros como Padrão.
    3. Se o filtro padrão não estiver definido como o filtro predefinido, clique em Predefinir.
    4. Clique em Guardar.

Configure a versão 8.3R4 e posterior da VPN Pulse Secure

  1. Na consola Pulse connect secure, clique no separador Eventos, no separador Acesso do utilizador ou no separador Acesso de administrador e, de seguida, defina os Filtros como Novo filtro.
  2. No campo Nome do filtro, introduza um nome para o filtro.
  3. Na secção Formato de exportação, selecione Personalizado e introduza o seguinte formato no campo:

    [SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%

  4. Clique em Guardar.

  5. Com base na versão do seu dispositivo, para ativar a configuração do syslog, faça uma das seguintes ações:

    • Ative o registo syslog na VPN Pulse Secure
    • Ative o registo syslog no Ivanti Connect Secure

Ative o registo syslog na VPN Pulse Secure

  1. Na consola Pulse connect secure, selecione System > Log/monitoring > Settings. Pode selecionar Definições no separador Eventos, no separador Acesso do utilizador ou no separador Acesso de administrador.
  2. Na secção Selecionar eventos para registar, selecione todas as caixas de verificação, exceto as caixas de verificação Acesso HTML5, Mensagens de controlo de admissão e Pedidos não autenticados.
  3. No campo Servidor Syslog, introduza informações sobre os servidores Syslog.
  4. Na secção Servidores Syslog, faça o seguinte:
    1. No campo Nome/IP do servidor, introduza o nome do servidor ou o endereço IP do encaminhador do Google Security Operations.
    2. Na lista Instalação, selecione LOCAL0.
    3. Na lista Filtro, selecione o filtro que criou anteriormente.
  5. Clique em Adicionar.
  6. Opcional: para adicionar vários servidores syslog para eventos, acesso de administrador ou registos de acesso de utilizadores, repita os passos 2 a 4.
  7. Clique em Guardar alterações.

Ative o registo syslog no Ivanti Connect Secure

  1. Na consola Pulse connect secure, clique no separador Eventos, no separador Acesso do utilizador ou no separador Acesso de administrador e, de seguida, selecione Filtros.
  2. Clique no separador Novo filtro.
  3. Na secção Formato de exportação, selecione Personalizado e introduza o seguinte formato no campo:

    [SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%

  4. Clique em Guardar.

  5. Clique em Sistema > Registo/monitorização e, de seguida, selecione o separador Definições.

  6. No campo Tamanho máximo do registo, especifique o tamanho máximo do registo e selecione os eventos a registar.

  7. Especifique a configuração do servidor da seguinte forma:

    1. No campo Nome/IP do servidor, especifique o nome do domínio totalmente qualificado ou o endereço IP do encaminhador do Google Security Operations para o servidor syslog.

      Se selecionar Segurança da camada de transporte (TLS) na lista de tipos, o nome do servidor tem de corresponder ao CN no subjectDN no certificado obtido do servidor.

    2. Na lista Instalação, selecione um nível de instalação do servidor syslog.

    3. Na lista Tipo, selecione o tipo de ligação ao servidor syslog como UDP, TCP ou TLS. O TLS usa protocolos criptográficos para fornecer uma comunicação segura.

      Se selecionar TLS, selecione o certificado de cliente instalado para usar na autenticação do servidor syslog. Os certificados de cliente são definidos na janela Configuration > Certificates > Client auth certificates. Os certificados de cliente têm de ser instalados no dispositivo antes de poderem ser usados. Contacte a sua autoridade de certificação para obter o certificado.

    4. Na lista Filtrar, selecione Personalizado.

  8. Clique em Adicionar.

Configure o encaminhador do Google Security Operations para carregar registos do Pulse Secure

  1. Selecione Definições do SIEM > Encaminhadores.
  2. Clique em Adicionar novo encaminhador.
  3. No campo Nome do encaminhador, introduza um nome exclusivo para o encaminhador.
  4. Clique em Enviar e, de seguida, em Confirmar. O encaminhador é adicionado e é apresentada a janela Adicionar configuração do coletor.
  5. No campo Nome do coletor, introduza um nome exclusivo para o coletor.
  6. Selecione Pulse Secure como o Tipo de registo.
  7. Selecione Syslog como o tipo de coletor.
  8. Configure os seguintes parâmetros de entrada obrigatórios:
    • Protocolo: especifique o protocolo de ligação que o coletor usa para ouvir dados de syslog.
    • Endereço: especifique o endereço IP ou o nome de anfitrião de destino onde o coletor reside e escuta os dados syslog.
    • Porta: especifique a porta de destino onde o coletor reside e ouve dados syslog.
  9. Clique em Enviar.

Para mais informações acerca dos encaminhadores do Google Security Operations, consulte o artigo Faça a gestão das configurações de encaminhadores através da IU do Google Security Operations.

Se tiver problemas ao criar encaminhadores, contacte o apoio técnico das Operações de segurança da Google.

Referência de mapeamento de campos

Este analisador extrai campos dos registos da VPN Pulse Secure, processando os formatos de registos de eventos do Windows e syslog. Normaliza diversas estruturas de registo num formato comum, categorizando eventos como inícios de sessão, fins de sessão, ligações e alterações de políticas, enriquecendo-os com dados contextuais, como agentes do utilizador, endereços IP e datas/horas.

Tabela de mapeamento do UDM

Campo de registo Mapeamento de UDM Lógica
ação security_result.action_details Mapeado diretamente a partir do campo action.
aplicação principal.application Mapeado diretamente a partir do campo application.
bytes_read network.received_bytes Mapeado diretamente a partir do campo bytes_read e convertido em número inteiro não assinado.
bytes_written network.sent_bytes Mapeado diretamente a partir do campo bytes_written e convertido em número inteiro não assinado.
client_host principal.hostname, principal.asset.hostname Mapeado diretamente a partir do campo client_host.
cmd principal.process.command_line Mapeado diretamente a partir do campo cmd.
connection_status security_result.detection_fields.value.string_value Mapeado diretamente a partir do campo connection_status.
data_time metadata.event_timestamp.seconds Analisado a partir do campo data_time usando vários formatos de data/hora (MM-dd-aaaa HH:mm:ss Z, RFC 3339, ISO8601, MMM d HH:mm:ss, MMM d HH:mm:ss).
devname principal.hostname, principal.asset.hostname Mapeado diretamente a partir do campo devname.
dstip target.ip, target.asset.ip Mapeado diretamente a partir do campo dstip.
dstport target.port Mapeado diretamente a partir do campo dstport e convertido em número inteiro.
dstcountry target.location.country_or_region Mapeado diretamente a partir do campo dstcountry se não for "Reservado" ou estiver vazio.
duração network.session_duration.seconds Mapeado diretamente a partir do campo duration e convertido em número inteiro.
dvc intermediary.hostname ou intermediary.ip Se o campo dvc puder ser convertido num endereço IP, é mapeado para intermediary.ip. Caso contrário, é mapeado para intermediary.hostname.
dvc_hostname intermediary.hostname, principal.hostname, principal.asset.hostname ou intermediary.ip, principal.ip, principal.asset.ip Se for possível converter o campo dvc_hostname num endereço IP, este é mapeado para os campos de IP respetivos. Caso contrário, é mapeado para os respetivos campos de nomes de anfitriões.
event_type metadata.product_event_type Mapeado diretamente a partir do campo event_type.
failure_reason security_result.description Mapeado diretamente a partir do campo failure_reason. Se a mensagem contiver "because host", o texto "host" é adicionado antes do motivo da falha.
has_principal event.idm.read_only_udm.principal (presença) Definido como "true" se algum dos campos principais estiver preenchido e "false" caso contrário. Derivado da lógica do analisador.
has_target event.idm.read_only_udm.target (presença) Definido como "true" se algum dos campos de destino estiver preenchido e "false" caso contrário. Derivado da lógica do analisador.
has_target_user event.idm.read_only_udm.target.user.userid (presença) Definido como "true" se target.user.userid estiver preenchido e "false" caso contrário. Derivado da lógica do analisador.
host_ip principal.ip, principal.asset.ip Mapeado diretamente a partir do campo host_ip.
host_mac principal.mac Mapeado diretamente a partir do campo host_mac, substituindo os hífens por dois pontos.
http_method network.http.method Mapeado diretamente a partir do campo http_method.
http_response network.http.response_code Mapeado diretamente a partir do campo http_response e convertido em número inteiro.
info_desc about.labels.value Mapeado diretamente a partir do campo info_desc.
ip_new target.ip, target.asset.ip Mapeado diretamente a partir do campo ip_new.
nível security_result.severity, security_result.severity_details O security_result.severity é derivado do campo level ("error"/"warning" -> HIGH, "notice" -> MEDIUM, "information"/"info" -> LOW). O valor não processado de level também é mapeado para security_result.severity_details.
logid metadata.product_log_id Mapeado diretamente a partir do campo logid.
locip principal.ip, principal.asset.ip Mapeado diretamente a partir do campo locip.
mensagem metadata.description Usado para extrair vários campos através de filtros grok e kv. Se a mensagem contiver "EventID", é processada como um registo de eventos do Windows.
message_info metadata.description Mapeado diretamente para metadata.description se não for usado de outra forma em padrões grok mais específicos.
msg metadata.product_event_type, metadata.description Se o campo msg estiver presente, o tipo de produto é extraído e mapeado para metadata.product_event_type, e a mensagem restante é mapeada para metadata.description.
msg_hostname principal.hostname, principal.asset.hostname Mapeado diretamente a partir do campo msg_hostname.
msg_ip principal.ip, principal.asset.ip Mapeado diretamente a partir do campo msg_ip.
msg_user_agent network.http.user_agent, network.http.parsed_user_agent, metadata.product_version A string do agente do utilizador é mapeada para network.http.user_agent, o agente do utilizador analisado é mapeado para network.http.parsed_user_agent e a versão do produto (se presente) é mapeada para metadata.product_version.
network_duration network.session_duration.seconds Mapeado diretamente a partir do campo network_duration e convertido em número inteiro.
policyid security_result.rule_id Mapeado diretamente a partir do campo policyid.
policyname security_result.rule_name Mapeado diretamente a partir do campo policyname.
policytype security_result.rule_type Mapeado diretamente a partir do campo policytype.
priority_code about.labels.value Mapeado diretamente a partir do campo priority_code e também usado para derivar about.labels.value para a chave "Gravidade" (consulte a lógica).
prod_name metadata.product_name Mapeado diretamente a partir do campo prod_name.
product_type metadata.product_event_type Mapeado diretamente a partir do campo product_type.
product_version metadata.product_version Mapeado diretamente a partir do campo product_version.
proto network.ip_protocol Mapeado para network.ip_protocol após a conversão num nome de protocolo IP através de uma pesquisa.
pwd principal.process.file.full_path Mapeado diretamente a partir do campo pwd.
domínio principal.group.attribute.labels.value Mapeado diretamente a partir do campo realm.
rcvdbyte network.received_bytes Mapeado diretamente a partir do campo rcvdbyte e convertido em número inteiro não assinado.
remip target.ip Mapeado diretamente a partir do campo remip.
resource_name target.resource.name Mapeado diretamente a partir do campo resource_name após a remoção de espaços em branco à esquerda/à direita e hífenes.
resource_status security_result.description Mapeado diretamente a partir do campo resource_status.
resource_user_group principal.user.group_identifiers Mapeado diretamente a partir do campo resource_user_group.
resource_user_name principal.user.userid Mapeado diretamente a partir do campo resource_user_name.
funções principal.user.group_identifiers Mapeado diretamente a partir do campo roles.
sentbyte network.sent_bytes Mapeado diretamente a partir do campo sentbyte e convertido em número inteiro não assinado.
session_id network.session_id Mapeado diretamente a partir do campo session_id.
sessionid network.session_id Mapeado diretamente a partir do campo sessionid.
srcip principal.ip, principal.asset.ip Mapeado diretamente a partir do campo srcip.
srcport principal.port Mapeado diretamente a partir do campo srcport e convertido em número inteiro.
srccountry principal.location.country_or_region Mapeado diretamente a partir do campo srccountry se não for "Reservado" ou estiver vazio.
subtype metadata.product_event_type Usado em conjunto com type para formar metadata.product_event_type.
target_file target.file.full_path Mapeado diretamente a partir do campo target_file.
target_host target.hostname, target.asset.hostname Mapeado diretamente a partir do campo target_host.
target_ip target.ip, target.asset.ip Mapeado diretamente a partir do campo target_ip.
target_port target.port Mapeado diretamente a partir do campo target_port e convertido em número inteiro.
target_url target.url Mapeado diretamente a partir do campo target_url.
tempo metadata.event_timestamp.seconds Analisado a partir do campo time com o formato "aaaa-MM-dd HH:mm:ss".
escrever metadata.product_event_type Usado em conjunto com subtype para formar metadata.product_event_type.
u_event_source_ip principal.ip, principal.asset.ip ou target.ip Se target_ip ou target_host estiverem presentes, u_event_source_ip é mapeado para principal.ip e principal.asset.ip. Caso contrário, se target_ip, target_host e target_url estiverem todos vazios, u_event_source_ip é mapeado para target.ip.
u_observer_ip observer.ip Mapeado diretamente a partir do campo u_observer_ip.
u_prin_ip principal.ip, principal.asset.ip Mapeado diretamente a partir do campo u_prin_ip.
utilizador target.user.userid Mapeado diretamente a partir do campo user.
user_agent network.http.user_agent, network.http.parsed_user_agent A string do agente do utilizador é mapeada para network.http.user_agent e o agente do utilizador analisado é mapeado para network.http.parsed_user_agent.
user_group_identifier target.user.group_identifiers ou principal.user.group_identifiers Mapeado para target.user.group_identifiers na maioria dos casos. Mapeado para principal.user.group_identifiers nos eventos de alteração de IP (USER_UNCATEGORIZED) e restrições de domínio.
user_ip principal.ip, principal.asset.ip Mapeado diretamente a partir do campo user_ip. Se estiver vazio e u_event_source_ip não estiver vazio, assume o valor de u_event_source_ip.
nome de utilizador principal.user.userid ou target.user.userid Mapeado para principal.user.userid na maioria dos casos. Mapeado para target.user.userid em alguns cenários específicos (por exemplo, quando detect_user_logout_failed é falso e detect_policy_change_failed é falso).
username_removed target.user.userid Mapeado diretamente a partir do campo username_removed.
vd principal.administrative_domain Mapeado diretamente a partir do campo vd.

metadata.vendor_name, metadata.product_name, metadata.event_type, metadata.log_type, network.ip_protocol, security_result.action, security_result.severity e extensions.auth.type são derivados ou definidos pela lógica do analisador com base nas condições descritas na coluna Lógica.

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.