Coletar registros do switch Dell

Compatível com:

Esse analisador extrai registros de switches da Dell, normaliza carimbos de data/hora e usa padrões grok para estruturar a mensagem de registro em pares de chave-valor. Em seguida, ele mapeia esses campos extraídos para o modelo de dados unificado (UDM), processando vários formatos de registro e enriquecendo os dados com informações contextuais, como detalhes de recursos e gravidade da segurança.

Antes de começar

  • Verifique se você tem uma instância do Google Security Operations.
  • Use o Windows 2016 ou uma versão mais recente ou um host Linux com systemd.
  • Se você estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas.
  • Verifique se você tem uma conexão ativa e credenciais administrativas para um switch Dell.

Receber o arquivo de autenticação de ingestão do Google SecOps

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Agentes de coleta.
  3. Baixe o arquivo de autenticação de ingestão. Salve o arquivo com segurança no sistema em que o agente do Bindplane será instalado.

Receber o ID do cliente do Google SecOps

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Perfil.
  3. Copie e salve o ID do cliente na seção Detalhes da organização.

Instalar o agente do BindPlane

Instalação do Windows

  1. Abra o Prompt de Comando ou o PowerShell como administrador.
  2. Execute este comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Instalação do Linux

  1. Abra um terminal com privilégios de root ou sudo.
  2. 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

Configurar o agente do Bindplane para ingerir Syslog e enviar ao Google SecOps

  1. Acesse o arquivo de configuração:

    • Localize o arquivo config.yaml. Normalmente, ele fica 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 Bloco de Notas).
  2. Edite o arquivo 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: sell_switch
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.

  4. Substitua <customer_id> pelo ID do cliente real.

  5. Atualize /path/to/ingestion-authentication-file.json para o caminho em que o arquivo de autenticação foi salvo na seção Receber arquivo de autenticação de ingestão do Google SecOps.

Reinicie o agente do Bindplane para aplicar as mudanças

  • No Linux, para reiniciar o agente do Bindplane, execute o seguinte comando:

    sudo systemctl restart bindplane-agent
    
  • No Windows, para reiniciar o Bindplane Agent, use o console Serviços ou insira o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurar a exportação do Syslog de um switch Dell

  1. Conecte-se ao switch Dell usando SSH ou a porta do console.
  2. Faça login com credenciais de administrador.
  3. Use o comando a seguir para especificar o endereço IP ou o nome do host do servidor syslog. Substitua <syslog_server_ip>, <udp|tcp> e <syslog-port-number> pelos detalhes reais:

    logging host <syslog-server-ip> transport <udp|tcp> port <syslog-port-number>
    
  4. Opcional: defina o nível mínimo de gravidade para que as mensagens sejam enviadas ao servidor syslog. Por exemplo, para registrar mensagens informativas e acima:

    logging level informational
    
  5. Salve a configuração em execução na configuração de inicialização para garantir que as mudanças persistam nas reinicializações:

    copy running-config startup-config
    
  6. Salve a configuração:

    write memory
    

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
acct principal.user.userid Usado como o userid se o campo user não estiver presente.
addr principal.asset.ip, principal.ip Analisado como um endereço IP e usado para o IP principal e o IP do recurso, se for um IP válido e diferente do nome do host.
application principal.application Mapeado diretamente.
asset principal.asset.attribute.labels.value Mapeado diretamente para o valor do rótulo de recurso, com a chave codificada como "Nome do recurso". Se o campo de recurso estiver vazio e a mensagem contiver "Dell", o recurso será definido como "Dell".
auid principal.resource.attribute.labels.value Mapeado diretamente para um rótulo com a chave auid em principal.resource.attribute.labels.
datetime metadata.event_timestamp Analisado de vários formatos no campo de mensagem e convertido em um carimbo de data/hora.
dest_ip target.asset.ip, target.ip Mapeado para o IP de destino e o IP do recurso de destino.
enterpriseId principal.resource.attribute.labels.value Mapeado para um rótulo com a chave enterpriseId em principal.resource.attribute.labels.
exe sec_result.detection_fields.value Associado a um campo de detecção com a chave exe.
File target.file.full_path Mapeado diretamente.
grantors principal.resource.attribute.labels.value Mapeado para um rótulo com a chave grantors em principal.resource.attribute.labels.
host principal.hostname, principal.asset.hostname, metadata.event_type Usado como nome do host principal e nome do host do recurso. Se host estiver presente, metadata.event_type será definido como STATUS_UPDATE. Se o nome do host estiver presente, mas o host não, o nome do host será usado como host.
hostname principal.asset.ip, principal.ip, host Se for um IP válido, usado para IP principal e IP de recurso. Se host estiver vazio, ele será usado como host.
ID principal.resource.attribute.labels.value Mapeado para um rótulo com a chave ID em principal.resource.attribute.labels.
ip principal.asset.ip, principal.ip Mapeado para o IP principal e o IP do recurso.
is_synced sec_result.detection_fields.value Associado a um campo de detecção com a chave is_synced.
local target.asset.ip, target.ip, target.port Analisado para extrair o IP e a porta locais, mapeados para o IP de destino, o IP do recurso de destino e a porta de destino.
local_ip target.asset.ip, target.ip Extraído do campo local e mapeado para o IP de destino e o IP do recurso de destino.
local_port target.port Extraído do campo local e mapeado para a porta de destino.
mac principal.mac Se for um endereço MAC válido, mapeado para o endereço MAC principal.
msg metadata.description Usado como a descrição do evento, se presente. Também analisado para outros campos.
msg1 metadata.description Usado como descrição do evento se msg2 não estiver presente.
msg2 sec_result.description, metadata.event_type, extensions.auth.type Usado como descrição do resultado de segurança. Se ele contiver "opened for user", o tipo de evento será definido como USER_LOGIN e o tipo de autenticação como MACHINE. Se ele contiver "closed for user", o tipo de evento será definido como USER_LOGOUT e o tipo de autenticação como MACHINE.
op metadata.product_event_type Usado como tipo de evento de produto, se presente.
pid principal.process.pid Mapeado diretamente.
port principal.port Mapeado diretamente.
prod_event_type metadata.product_event_type Usado como tipo de evento de produto, se presente.
res sec_result.summary Mapeado diretamente.
sec_description sec_result.description, target.url, target.ip, target.asset.ip, sec_result.action_details Analisado para URL de destino, IP, detalhes da ação e usado como descrição do resultado de segurança.
Server_ID target.resource.product_object_id Mapeado diretamente.
server principal.asset.ip, principal.ip, principal.port Analisado para extrair o IP e a porta do servidor, mapeado para o IP principal, o IP do recurso principal e a porta principal.
server_ip principal.asset.ip, principal.ip Extraído do campo server e mapeado para o IP principal e o IP do recurso principal.
server_port principal.port Extraído do campo server e mapeado para a porta principal.
ses network.session_id Mapeado diretamente.
severity sec_result.severity, metadata.product_event_type Usado para determinar a gravidade do resultado de segurança e o tipo de evento do produto com base em valores específicos.
software principal.asset.software Mapeado diretamente.
softwareName software.name Mapeado diretamente.
Status sec_result.summary Usado como o resumo do resultado de segurança se res não estiver presente.
subj principal.resource.attribute.labels.value Mapeado para um rótulo com a chave subj em principal.resource.attribute.labels.
swVersion software.version Mapeado diretamente.
target_host target.hostname, target.asset.hostname Mapeado diretamente para o nome do host de destino e o nome do host do recurso de destino.
target_ip target.asset.ip, target.ip Mapeado diretamente para o IP de destino e o IP do recurso de destino.
target_url target.url Mapeado diretamente.
target_user_id target.user.userid Mapeado diretamente.
terminal principal.resource.attribute.labels.value Mapeado para um rótulo com a chave terminal em principal.resource.attribute.labels.
tzknown sec_result.detection_fields.value Associado a um campo de detecção com a chave tzknown.
uid principal.resource.attribute.labels.value Mapeado para um rótulo com a chave uid em principal.resource.attribute.labels.
user principal.user.userid, metadata.event_type Usado como ID do usuário principal. Se user estiver presente, metadata.event_type será definido como USER_UNCATEGORIZED.
username target.user.userid Mapeado diretamente para o ID do usuário de destino.
N/A metadata.vendor_name Codificado como "Dell".
N/A metadata.product_name Codificado como "Dell Switch".
N/A extensions.auth.type Definido como MACHINE para eventos específicos de login/logout.
N/A metadata.event_type Determinado por uma lógica complexa baseada em vários campos e condições. O padrão é GENERIC_EVENT, a menos que seja definido de outra forma. Pode ser USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, NETWORK_CONNECTION, NETWORK_UNCATEGORIZED, STATUS_UPDATE ou GENERIC_EVENT.

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