Coletar registros do NetScaler

Compatível com:

Este documento descreve como coletar os registros do NetScaler usando um forwarder de operações de segurança do Google.

Para mais informações, consulte Visão geral da ingestão de dados para as operações de segurança do Google.

Um rótulo de transferência identifica o analisador que normaliza os dados de registro brutos para o formato estruturado da UDM. As informações neste documento se aplicam ao analisador com o rótulo de ingestão CITRIX_NETSCALER.

Configurar o NetScaler VPX

Para configurar o NetScaler VPX para enviar registros ao forwarder das Operações de segurança do Google, faça o seguinte:

Verificar a configuração do nome do host

  1. Faça login na interface da Web do NetScaler usando as credenciais de administrador.
  2. Selecione Configuração > Configurações.
  3. Clique em Nome do host, endereço IP do DNS e fuso horário.
  4. Se o campo Nome do host estiver vazio, insira o nome do host. Não inclua espaços. Se esse campo já estiver configurado, nenhuma ação será necessária.
  5. No campo Endereço IP do DNS, verifique se o endereço IP do DNS local está especificado.
  6. No campo Fuso horário, insira seu fuso horário.

Criar servidor de auditoria

  1. Na interface da Web do NetScaler, selecione Configuration > System > Auditing > Syslog > Servers.
  2. Especifique os detalhes do syslog nos seguintes campos:
    • Nome
    • Tipo de servidor
    • Endereço IP
    • Port
  3. Selecione Níveis de registro como Personalizado.
  4. Selecione todas as caixas de seleção, exceto o nível DEBUG na configuração.
  5. Na lista Log facility, selecione LOCAL0.
  6. Na lista Formato da data, selecione MMDDAAAA.
  7. Selecione Fuso horário como GMT.
  8. Desmarque as seguintes caixas de seleção:
    • Registro TCP
    • Geração de registros da ACL
    • Mensagens de registro configuráveis pelo usuário
    • Geração de registros do AppFlow
    • Registros do NAT em grande escala
    • Registro de mensagens ALG
    • Registro de assinantes
    • DNS
    • Interceptação de SSL
    • Filtragem de URL
    • Registro de inspeção de conteúdo
  9. Clique em Ok para criar o servidor de auditoria.

Vincular a política de auditoria criada ao servidor

  1. Na interface da Web do NetScaler, selecione Configuration > System > Auditing > Syslog.
  2. Clique na guia Políticas.
  3. No campo Nome, digite um nome para a política.
  4. Na lista Servidor, selecione a política da seção anterior.
  5. Clique em Criar.
  6. Clique com o botão direito do mouse na política de auditoria criada e selecione Ação > Vinculações globais.
  7. Clique em Adicionar vinculação.
  8. Na janela Vinculação de políticas, faça o seguinte:
    1. No campo Selecionar política, insira a política de auditoria criada.
    2. No painel Binding details, no campo Priority, digite 120, já que é a prioridade padrão.
    3. Clique em Bind.

Configurar o SDX do NetScaler

Para configurar o NetScaler SDX para enviar registros ao forwarder do Google Security Operations, faça o seguinte:

Verificar a configuração do nome do host para o NetScaler SDX

  1. Faça login na interface da Web do NetScaler usando as credenciais de administrador.
  2. Na interface da Web do NetScaler, selecione System > System settings.
  3. Se o campo Nome do host estiver vazio, insira o nome do host. Não inclua espaços. Se esse campo já estiver configurado, nenhuma ação será necessária.
  4. No campo Fuso horário, selecione UTC ou GMT.

Configurar o servidor syslog

  1. Na interface da Web do NetScaler, selecione Sistema > Notificações > Servidores Syslog.
  2. No painel Detalhes, clique em Adicionar.
  3. Na janela Criar servidor de syslog, especifique os valores para os seguintes parâmetros do servidor de syslog:
    1. Digite um nome no campo Nome.
    2. No campo Endereço IP, insira o endereço IP do encaminhador de operações de segurança do Google.
    3. No campo Port, digite o número da porta.
    4. Selecione Níveis de registro como Personalizado.
    5. Selecione todos os níveis de registro, exceto Debug.
  4. Clique em Criar.

Configurar os parâmetros do syslog

  1. Na interface da Web do NetScaler, selecione Sistema > Notificações > Servidores Syslog.
  2. No painel Detalhes, clique em Parâmetros do Syslog.
  3. Na página Configurar parâmetros do syslog, selecione Formato da data como MMDDAAAA e Fuso horário como GMT.
  4. Clique em OK.

Configurar o forwarder do Google Security Operations para processar registros do NetScaler

  1. Selecione Configurações do SIEM > Encaminhadores.
  2. Clique em Adicionar novo encaminhador.
  3. No campo Nome do encaminhador, insira um nome exclusivo.
  4. Clique em Enviar e em Confirmar. O encaminhador é adicionado, e a janela Add collector configuration aparece.
  5. No campo Nome do coletor, digite um nome exclusivo para o coletor.
  6. Selecione Citrix NetScaler como o Tipo de registro.
  7. No campo Tipo de coletor, selecione Syslog.
  8. Configure os seguintes parâmetros de entrada obrigatórios:
    • Protocolo: especifique o protocolo de conexão que o coletor usa para ouvir dados do syslog.
    • Endereço: especifique o endereço IP ou o nome do host de destino em que o coletor reside e escuta os dados do syslog.
    • Porta: especifique a porta de destino em que o coletor reside e detecta dados do syslog.
  9. Clique em Enviar.

Para mais informações sobre os encaminhadores do Google Security Operations, consulte Gerenciar configurações de encaminhadores na interface do Google Security Operations.

Se você tiver problemas ao criar encaminhadores, entre em contato com o suporte da Google Security Operations.

Referência do mapeamento de campo

Esse analisador processa os registros SYSLOG do Citrix Netscaler no formato chave-valor, extraindo dados formatados em JSON do campo message e enriquecendo o UDM com informações de outros campos, como host.hostname e user_agent.original, após a higienização. Ele lida com casos em que a mensagem principal está vazia, voltando para a mensagem de registro original.

Tabela de mapeamento da UDM

Campo de registro Mapeamento do UDM Lógica
AAA trans id security_result.detection_fields[].value Valor extraído do campo "AAA trans id".
Acesso security_result.action_details Se "Acesso" estiver "Permitido", defina security_result.action como PERMITIR. Se o "Acesso" for "Negado", defina security_result.action como BLOQUEAR.
applicationName principal.application Valor extraído do campo "applicationName".
Browser_type network.http.user_agent Valor extraído do campo "Browser_type".
ClientIP principal.ip, principal.asset.ip Valor extraído do campo "ClientIP".
ClientPort principal.port Valor extraído do campo "ClientPort".
client_cookie additional.fields[].value.string_value Valor extraído do campo "client_cookie".
Comando target.process.command_line Valor extraído do campo "Command".
connectionId security_result.detection_fields[].value Valor extraído do campo "connectionId".
Destino target.ip, target.asset.ip Valor extraído do campo "Destino".
Destino target.ip, target.asset.ip Valor extraído do campo "Destino".
device_serial_number target.asset_id target.asset_id está definido como "device_serial_number:".
Duração network.session_duration.seconds A duração é convertida em segundos e mapeada.
Horário de término security_result.detection_fields[].value Valor extraído do campo "Hora de término".
Failure_reason metadata.description Valor extraído do campo "Failure_reason".
flags additional.fields[].value.string_value Valor extraído do campo "flags".
Grupos target.group.group_display_name Valor extraído do campo "Grupos".
Motivo metadata.description Valor extraído do campo "Motivo".
Remote_ip target.ip, target.asset.ip Valor extraído do campo "Remote_ip".
ServerIP target.ip, target.asset.ip Valor extraído do campo "ServerIP".
ServerPort target.port Valor extraído do campo "ServerPort".
session_guid metadata.product_log_id Valor extraído do campo "session_guid".
SessionId network.session_id Valor extraído do campo "SessionId".
Origem principal.ip, principal.asset.ip Valor extraído do campo "Origem".
Horário de início security_result.detection_fields[].value Valor extraído do campo "Horário de início".
startTime security_result.detection_fields[].value Valor extraído do campo "startTime".
Status security_result.description Valor extraído do campo "Status".
Total_bytes_recv network.received_bytes Valor extraído do campo "Total_bytes_recv".
Total_bytes_send network.sent_bytes Valor extraído do campo "Total_bytes_send".
Total_bytes_wire_recv security_result.detection_fields[].value Valor extraído do campo "Total_bytes_wire_recv".
Total_bytes_wire_send security_result.detection_fields[].value Valor extraído do campo "Total_bytes_wire_send".
Usuário principal.user.userid Valor extraído do campo "Usuário".
VserverServiceIP target.ip, target.asset.ip Valor extraído do campo "VserverServiceIP".
VserverServicePort target.port Valor extraído do campo "VserverServicePort". Fixado em "CITRIX". Fixado em "NETSCALER". Fixado em "CITRIX_NETSCALER". Determinado pelo analisador com base no product_event_type. Exemplos: NETWORK_CONNECTION, USER_LOGIN, USER_LOGOUT, USER_STATS, STATUS_UPDATE, USER_UNCATEGORIZED, GENERIC_EVENT. Valor extraído do prefixo de registro (por exemplo, CONN_DELINK, CONN_TERMINATE, OTHERCONN_DELINK etc.). Uma breve descrição do evento, às vezes derivada de outros campos, como "Reason" ou "Failure_reason". Calculado com base nos campos de data e hora na entrada de registro. O analisador processa vários formatos e fusos horários. Extraídos do campo "username:domainname", considerando a parte após o dois-pontos. Fixado em TCP para eventos com "TCP" em metadata.product_event_type. Defina como PERMITIR para logins e comandos bem-sucedidos e BLOQUEAR para logins com falha e acesso a recursos bloqueados. Derivado de campos como "Status", "Motivo_da_falha" e "Acesso". É definido como USERNAME_PASSWORD quando o nome de usuário e a senha são usados para autenticação (deduzido de determinadas mensagens de registro). Definido como VPN para eventos de login/saída relacionados à VPN. Analisado do campo network.http.user_agent usando uma biblioteca de análise de user agent.

Alterações

2024-05-21

  • Um padrão Grok foi modificado para analisar registros descartados.

2024-05-20

  • Novo padrão Grok adicionado para analisar registros não analisados.

2024-05-08

  • O mapeamento das informações de duração foi atualizado de "security_results" para "network.session_duration" .

2024-04-29

  • Foi adicionada uma verificação condicional para "Browser_type" e mapeada para "network.http.parsed_user_agent".
  • Adição de uma verificação condicional para "userId" e "user_email".
  • "Navegador" foi mapeado para "network.http.parsed_user_agent".

2024-02-23

  • O padrão Grok foi atualizado para analisar o nome do host conforme o esperado no campo UDM.

2024-01-25

  • Foram adicionados padrões Grok para analisar logs em que "message_type" é "Message", "NONHTTP_RESOURCEACCESS_DENIED", "UDPFLOWSTAT" e "EXTRACTED_GROUPS".
  • Foi adicionado suporte para analisar registros em que "feature" é "GUI" e "EVENT".
  • "principal_port" foi mapeado para "principal.port".
  • "ClientIP" foi mapeado para "principal.asset.ip".
  • "principal_ip" foi mapeado para "principal.ip" e "principal.asset.ip".
  • Mapeamos "target_ip" para "target.ip" e "target.asset.ip".
  • Mapeou "target_port" para "target.port".
  • "description" foi mapeada para "metadata.description".
  • Mapeou "type", "aaa_trans_id", "pcb_trans_id", "pcb_state", "pcb_label", "trans_id", "authPolicyLen", "login_attempts", "PromptLen", "partitionLen", "cmdPolicyLen" e "ssh_pubkey_len" para "security_result.detection_fields".
  • "principal_hostname" foi mapeado para "principal.hostname" e "principal.asset.hostname".
  • "hostname" foi mapeado para "intermediary.asset.hostname".
  • "Hostname" foi mapeado para "observer.asset.hostname".
  • Mapeamos "cip", "ServerIP", "VIP", "VserverServiceIP" e "Remote_ip" para "target.asset.ip".
  • Quando "message_type" é "Message", "User" é mapeado para "principal.user.userid".
  • Quando "principal_ip" e "target_ip" estiverem presentes, defina "metadata.event_type" como "NETWORK_CONNECTION".
  • Quando "Client_ip" e "target_ip" estiverem presentes, defina "metadata.event_type" como "NETWORK_CONNECTION".
  • Quando "message_type" for "NONHTTP_RESOURCEACCESS_DENIED" e "UDPFLOWSTAT", defina "metadata.event_type" como "USER_STATS".
  • Quando "message_type" for "Message" e "User" estiver presente, defina "metadata.event_type" como "USER_UNCATEGORIZED".
  • Quando "principal_ip" estiver presente, defina "metadata.event_type" como "STATUS_UPDATE".

2023-11-26

  • Enhancement-
  • Foram adicionados padrões Grok para analisar logs em que "message_type" é "Message".

2023-07-21

  • Melhoria: o analisador foi atualizado para analisar corretamente os registros que contêm o recurso "CLI".

2022-09-26

  • Melhoria: os analisadores personalizados foram migrados para o analisador padrão.

2022-06-09

  • Melhoria: foram adicionados os mapeamentos solicitados:
  • Mapeou "startTime", "endTime" e "Duration" para "security_result.detection_fields".
  • O analisador foi atualizado para analisar os registros que contêm message_type: 'CHANNEL_UPDATE', 'NETWORK_UPDATE', 'AAATM Message'.

2022-05-09

  • Correção de bugs: o analisador foi atualizado para analisar corretamente os registros que contêm message_type - 'TCPCONNSTAT'.
  • O grok foi atualizado para incluir o nome de domínio completo em "principal.administrative_domain".
  • Os registros com falhas durante o teste da API Validation foram analisados.

2022-04-27

  • Melhoria: mapeamentos solicitados foram adicionados
  • Campo intermediary.hostname mapeado
  • Registros de falha da API analisada