Recolha registos do sistema de prevenção de intrusões sem fios (WIPS) da Cisco

Compatível com:

Este documento explica como carregar registos do sistema de prevenção de intrusões sem fios (WIPS) da Cisco para o Google Security Operations através do Bindplane. O analisador extrai pares de chave/valor das mensagens syslog e, em seguida, mapeia esses valores para campos do modelo de dados unificado (UDM). Determina o event_type adequado com base na presença de informações principais, de destino e do utilizador, e categoriza os eventos de segurança com base em eventType e outros campos.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Instância do Google SecOps
  • Windows 2016 ou posterior, ou um anfitrião Linux com systemd
  • Se estiver a ser executado através de um proxy, certifique-se de que as portas da firewall estão abertas
  • Acesso privilegiado ao ponto de acesso (PA) / controlador de LAN sem fios (WLC) da Cisco

Obtenha o ficheiro de autenticação de carregamento do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Agentes de recolha.
  3. Transfira o ficheiro de autenticação de carregamento.
    • Guarde o ficheiro de forma segura no sistema onde o BindPlane vai ser instalado.

Obtenha o ID de cliente do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Perfil.
  3. Copie e guarde o ID do cliente da secção Detalhes da organização.

Instale o agente do Bindplane

Instale o agente do Bindplane no seu sistema operativo Windows ou Linux de acordo com as seguintes instruções.

Instalação do Windows

  1. Abra a Linha de comandos ou o PowerShell como administrador.
  2. Execute o seguinte 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 o seguinte comando:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Recursos de instalação adicionais

Para ver opções de instalação adicionais, consulte o guia de instalação.

Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps

  1. Aceda ao ficheiro de configuração:
    • Localize o ficheiro config.yaml. Normalmente, encontra-se no diretório /etc/bindplane-agent/ no Linux ou no diretório de instalação no Windows.
    • Abra o ficheiro com um editor de texto (por exemplo, nano, vi ou Bloco de notas).
  2. Edite o ficheiro config.yaml da seguinte forma:

    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds_file_path: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            log_type: 'CISCO_WIPS'
            raw_log_field: body
            ingestion_labels:
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    

Reinicie o agente do Bindplane para aplicar as alterações

  • Para reiniciar o agente do Bindplane no Linux, execute o seguinte comando:

    sudo systemctl restart bindplane-agent
    
  • Para reiniciar o agente Bindplane no Windows, pode usar a consola Serviços ou introduzir o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configure o sistema de prevenção de intrusões sem fios adaptável (aWIPS) no Cisco Catalyst

  1. Inicie sessão no Cisco Catalyst através de SSH.
  2. Introduza a configuração global para ativar o aWIPS no perfil do PA:

    configure terminal
    ap profile <profile-name>
    awips
    
  3. Configure o intervalo de limitação do syslog para 60 segundos:

    awips-syslog throttle period 60
    

Configure o Syslog através de perfis de PA da Cisco

  1. No perfil de associação de PA (através da CLI):

    configure terminal
    ap profile <profile-name>
      syslog host <Bindplane_IP_address>
      syslog level informational
      syslog facility local0
    end
    

Configure o Syslog no Cisco WLC (GUI)

  1. Inicie sessão na IU Web do WLC.
  2. Aceda a Gestão > Registos > Config.
  3. Introduza o endereço IP do agente Bindplane no campo Endereço IP do servidor Syslog.
  4. Clique em Adicionar.
  5. Indique os seguintes detalhes de configuração:
    • Gravidade do Syslog: selecione Informacional.
    • Syslog Facility: selecione Local Use 0.
  6. Clique em Aplicar.
  7. Clique em Guardar configuração.

Configure o Syslog em pontos de acesso através do WLC (CLI)

  1. Anfitrião do Syslog do PA global:

    config ap syslog host global <Bindplane_IP_address>
    
  2. Configure o anfitrião syslog do PA específico:

    config ap syslog host specific <AP-name> <Bindplane_IP_address>
    
  3. Defina a gravidade do syslog do PA:

    config ap logging syslog level informational
    
  4. Defina a instalação para mensagens AP:

    config logging syslog facility local0
    

Tabela de mapeamento do UDM

Campo de registo Mapeamento de UDM Lógica
applicationCategoryData security_result.summary Mapeado diretamente.
applicationSpecificAlarmID target.resource.attribute.labels.applicationSpecificAlarmID Convertido numa etiqueta no recurso de destino.
attackerMacAddr target.mac Mapeado diretamente.
authEntityId principal.resource.attribute.labels.authEntityId Convertido numa etiqueta no recurso principal.
category security_result.category_details Mapeado diretamente.
detectingApCount target.resource.attribute.labels.detectingApCount Convertido numa etiqueta no recurso de destino.
description metadata.description Mapeado diretamente.
displayName principal.user.userid Extraído através da expressão regular host/(?P<user_id>[\\w-]+) de displayName se o padrão corresponder.
eventType metadata.product_event_type Mapeado diretamente.
instanceId principal.resource.attribute.labels.instanceId Convertido numa etiqueta no recurso principal.
instanceUuid metadata.product_log_id Mapeado diretamente.
instanceVersion principal.resource.attribute.labels.instanceVersion Convertido numa etiqueta no recurso principal.
macInfo target.resource.attribute.labels.macInfo Convertido numa etiqueta no recurso de destino.
notificationDeliveryMechanism target.resource.attribute.labels.notificationDeliveryMechanism, network.ip_protocol Convertido numa etiqueta no recurso de destino. Se o valor contiver "snmp" (não é sensível a maiúsculas e minúsculas), network.ip_protocol é definido como "UDP".
previousSeverity target.resource.attribute.labels.previousSeverity Convertido numa etiqueta no recurso de destino. Definido como "AUTHTYPE_UNSPECIFIED" se eventType for "USER_AUTHENTICATION_FAILURE" e user_id não estiver vazio. Copiado do timestamp do registo. Determinada pela lógica do analisador com base em várias condições:
"USER_LOGIN" se eventType for "USER_AUTHENTICATION_FAILURE" e user_id não estiver vazio.
"NETWORK_CONNECTION" se is_target_present e is_principal_present forem verdadeiros.
"STATUS_UPDATE" se is_principal_present for verdadeiro.
"USER_UNCATEGORIZED" se user_id não estiver vazio.
"GENERIC_EVENT" caso contrário. Codificado de forma rígida para "CISCO_WIPS". Codificado como "Sistema de prevenção de intrusões sem fios (WIPS)". Codificado de forma rígida para "Cisco". Definido como "UDP" se notificationDeliveryMechanism contiver "snmp" (sem distinção entre maiúsculas e minúsculas). Mapeado a partir de reportingEntityAddress ou source se não forem IPs. Mapeado a partir de reportingEntityAddress ou source, se forem IPs. Extraído através de expressão regular de source, se for um endereço MAC. Convertido numa etiqueta no recurso principal. Convertido numa etiqueta no recurso principal.
reportingEntityAddress principal.ip, principal.hostname Se for um endereço IP, mapeado para principal.ip. Caso contrário, é mapeado para principal.hostname.
severity security_result.severity Mapeado com base nestas condições:
"CRÍTICO" se severity for "0", "1", "CRÍTICO" ou "MUITO ALTO".
"HIGH" se severity for "2", "3", "4" ou "HIGH".
"MEDIUM" se severity for "5" ou "MEDIUM".
"BAIXO" se severity for "6", "7" ou "BAIXO".
sigAlertDescription security_result.description Mapeado diretamente.
signatureName target.resource.attribute.labels.signatureName Convertido numa etiqueta no recurso de destino.
source principal.hostname, principal.ip, principal.mac Se for um endereço IP, mapeado para principal.ip. Se for um endereço MAC, mapeado para principal.mac. Caso contrário, é mapeado para principal.hostname.
srcObjectClassId principal.resource.attribute.labels.srcObjectClassId Convertido numa etiqueta no recurso principal.
srcObjectId principal.resource.attribute.labels.srcObjectId Convertido numa etiqueta no recurso principal.
subclassName security_result.rule_name Mapeado diretamente. Definido como "BLOCK" se applicationSpecificAlarmID contiver "BlockList" (sem distinção entre maiúsculas e minúsculas) ou se eventType for um de "SIGNATURE_ATTACK", "MALICIOUS_ROGUE_AP_DETECTED" ou "USER_AUTHENTICATION_FAILURE". Determinado pela lógica do analisador com base em eventType:
"NETWORK_MALICIOUS" se eventType for "MALICIOUS_ROGUE_AP_DETECTED".
"NETWORK_SUSPICIOUS" se eventType for "SIGNATURE_ATTACK".
"AUTH_VIOLATION" se eventType for "USER_AUTHENTICATION_FAILURE".
timestamp metadata.event_timestamp Os campos seconds e nanos estão mapeados diretamente.

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