Coletar registros de chaves Dell

Compatível com:

Esse analisador extrai registros de chaves 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, na sigla em inglês), processando vários formatos de registro e enriquecendo os dados com informações contextuais, como detalhes do recurso e gravidade da segurança.

Antes de começar

  • Verifique se você tem uma instância do Google Security Operations.
  • Verifique se você está usando o Windows 2016 ou uma versão mais recente ou um host Linux com systemd.
  • Se 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. Faça o download do arquivo de autenticação de transferência. Salve o arquivo com segurança no sistema em que o BindPlane será instalado.

Receber o ID de 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 raiz 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 BindPlane para ingerir o Syslog e enviar ao Google SecOps

  1. Acesse o arquivo de configuração:

    • Localize o arquivo config.yaml. Normalmente, ele está 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 Notepad).
  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 o arquivo de autenticação de transferência do Google SecOps.

Reinicie o agente BindPlane para aplicar as mudanças.

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

    sudo systemctl restart bindplane-agent
    
  • No Windows, para reiniciar o agente BindPlane, use o console Services ou digite o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurar a exportação de syslog de um switch Dell

  1. Conecte-se ao switch Dell usando SSH ou a porta do console.
  2. Faça login com credenciais administrativas.
  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 as mensagens 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 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 do principal e 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 do recurso, com a chave codificada como "Nome do recurso". Se o campo do 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 a partir 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 Mapeado para 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 de host principal e de 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, será usado para o IP principal e o IP do 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 Mapeado para 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ídos do campo local e mapeados para o IP de destino e o IP do recurso de destino.
local_port target.port Extraídos do campo local e mapeados para a porta de destino.
mac principal.mac Se for um endereço MAC válido, ele será 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 Usada como descrição do resultado de segurança. Se ele contiver "aberto para o usuário", o tipo de evento será definido como USER_LOGIN e o tipo de autenticação como MACHINE. Se ele contiver "fechado para o usuário", 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 do 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 do 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ídos do campo server e mapeados para o IP principal e o IP do recurso principal.
server_port principal.port Extraídos do campo server e mapeados 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 Mapeado para 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 Fixado em "Dell".
N/A metadata.product_name Fixado em "Dell Switch".
N/A extensions.auth.type Defina 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 se não for definido de outra forma. Pode ser USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, NETWORK_CONNECTION, NETWORK_UNCATEGORIZED, STATUS_UPDATE ou GENERIC_EVENT.

Alterações

2024-04-25

  • Foram adicionados padrões Grok para analisar um novo tipo de registro.
  • Mapeou op para metadata.product_event_type.
  • Mapeou mac para principal.mac.
  • Mapeou addr para principal.ip.
  • Mapeou hostname para principal.ip.
  • Mapeou server_ip para principal.ip.
  • Mapeou server_port para principal.port.
  • Mapeou acct para principal.user.userid.
  • Mapeou target_ip para target.ip.
  • Mapeou local_ip para target.ip.
  • Mapeou local_port para target.port.
  • Mapeou File para target.file.full_path.
  • Mapeou target_host para target.hostname.
  • Mapeou target_user_id para target.user.userid.
  • Mapeou Server_ID para target.resource.product_object_id.
  • Mapeamos tzknown, is_synced e exe para security_result.detection_fields.
  • Mapeou res para security_result.summary.
  • Se o valor do campo res for "", o status será mapeado para security_result.summary.
  • Mapeou uid, enterpriseId, auid, terminal, subj, grantors e ID para principal.resource.attribute.labels.

2024-04-04

  • Foram adicionados padrões Grok para analisar um novo tipo de registro.
  • Mapeou prod_event_type para metadata.product_event_type.
  • Mapeou ip para principal.ip.
  • Mapeou dest_ip para target.ip.
  • Mapeou target_url para target.url.
  • Mapeou sec_description para security_result.description.
  • Mapeou action_details para security_result.action_details.

2024-01-04

  • Foram adicionados padrões Grok para registros recém-ingeridos.
  • Adição de um bloco de data quando datetime está no formato SYSLOGTIMESTAMP.
  • Mapeou softwareName para principal.asset.software.name.
  • Mapeou swVersion para principal.asset.software.version.
  • Mapeou port para principal_port.
  • Mapeou user para principal.user.userid e definiu metadata.event_type como USER_UNCATEGORIZED quando user está presente.
  • Mapeou application para principal.application.
  • Mapeou ip para principal.ip.
  • Defina sec_result.severity como INFORMATIONAL quando severity for IFMGR-5-OSTATE_DN.
  • Mapeou msg para metadata.description.

2023-11-02

  • Parser recém-criado.