Coletar registros de chaves Alcatel

Compatível com:

Este documento explica como transferir os registros de chaveamento da Alcatel para as operações de segurança do Google usando um agente do Bindplane. O analisador extrai campos usando uma série de padrões grok com base em diferentes formatos de registro. Em seguida, ele mapeia os campos extraídos para os campos correspondentes no modelo de dados unificado (UDM, na sigla em inglês) e enriquece os dados com metadados, como fornecedor e tipo de evento.

Antes de começar

  • Verifique se você tem uma instância do Google SecOps.
  • 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.
  • Confira se você tem credenciais privilegiadas para um switch Alcatel.

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 do Bindplane para processar o Syslog e enviar ao Google SecOps

  1. Acesse o arquivo de configuração:

    1. 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.
    2. Abra o arquivo usando um editor de texto (por exemplo, nano, vi ou Notepad).
  2. Edite o arquivo 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: '/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
            ingestion_labels:
                log_type: ALCATEL_SWITCH
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                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 real do cliente.

  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 do Bindplane para aplicar as mudanças

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

    sudo systemctl restart bindplane-agent
    
  • Para reiniciar o agente do Bindplane no Windows, use o console Services ou digite o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurar a exportação de syslog do switch Alcatel

  1. Conecte-se ao switch usando SSH ou um cabo de console.
  2. Faça login com as credenciais de administrador.
  3. Entre no modo de configuração global:

    enable
    configure terminal
    
  4. Defina o endereço IP do servidor BindPlane (syslog):

    swlog output socket <syslog-server-ip>
    
    • Substitua <syslog-server-ip> pelo endereço IP do agente do Bindplane.
  5. Ative a geração de registros no servidor syslog:

    swlog remote enable
    
  6. Configure o nível de registro:

    swlog console level info
    
  7. Ative a geração de registros de comando:

    command-log enable
    
  8. Salve as mudanças na configuração de inicialização:

    write memory
    

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
1.1.1.1 principal.ip
principal.asset.ip
Extraídos da mensagem de registro.
1.1.1.2 target.ip
target.asset.ip
Extraídos da mensagem de registro.
1.1.2.7 target.ip
target.asset.ip
Extraídos da mensagem de registro.
1035 target.port Extraídos da mensagem de registro.
2266 additional.fields.value.string_value Extraídos da mensagem de registro e mapeados como vlan.
3036 principal.port Extraídos da mensagem de registro.
59300 target.port Extraídos da mensagem de registro.
60588 target.port Extraídos da mensagem de registro.
997 principal.resource.attribute.labels.value Extraídos da mensagem de registro e mapeados como limit.
A6450-L2-K4B-01 principal.application Extraídos da mensagem de registro.
A6450-L2-X1B-02-01 principal.application Extraídos da mensagem de registro.
A6450-L2-X2A-01-01 principal.application Extraídos da mensagem de registro.
A6450-L2-X4B-02-01 principal.application Extraídos da mensagem de registro.
A6900-L3-LTX0A principal.application Extraídos da mensagem de registro.
Accepted keyboard-interactive/pam security_result.summary Parte do campo sec_summary extraído.
b8:53:ac:6e:c9:bc principal.mac Extraídos da mensagem de registro.
BRIDGE(10) additional.fields.value.string_value Extraídos da mensagem de registro e mapeados como id_protocol.
CLI log, security_result.summary Parte do campo sec_summary extraído.
cmd: show configuration snapshot all, security_result.detection_fields.value Extraídos da mensagem de registro e mapeados como cmd.
Connection reset by 1.1.2.7 port 60505 security_result.summary Extraídos da mensagem de registro.
Dec 7 14:28:40 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Dec 8 04:21:22 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Dec 9 20:08:29 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Dec 9 20:51:34 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Dec 11 10:18:30 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Dec 17 02:14:22 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Dec 19 10:27:33 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Did not receive identification string from 1.1.2.7 port 60588 security_result.summary Extraídos da mensagem de registro.
esmSetRateLimit: Txing additional.fields.value.string_value Extraídos da mensagem de registro e mapeados como esm_set_rate_limit.
Feb 15 16:29:29 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Feb 16 11:08:45 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
Feb 16 11:08:49 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
flashManager FlashMgr Main info(5) flashMgrValidateImage_exec: valid security_result.summary Extraídos da mensagem de registro.
for ncmadmin from 1.1.1.2 port 59300 ssh2 security_result.summary Parte do campo sec_summary extraído.
from port 3036 to port 1035 security_result.summary Parte do campo sec_summary extraído.
IVDELCSW03 principal.hostname
principal.asset.hostname
Extraídos da mensagem de registro quando principal_ip não é um endereço IP.
IP-HELPER(22) additional.fields.value.string_value Extraídos da mensagem de registro e mapeados como id_protocol.
Jan 16 02:14:13 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Analisado do campo ts.
LLDP(42) additional.fields.value.string_value Extraídos da mensagem de registro e mapeados como id_protocol.
limit=997, principal.resource.attribute.labels.value Extraídos da mensagem de registro e mapeados como limit.
limitType=1 principal.resource.attribute.labels.value Extraídos da mensagem de registro e mapeados como limitType.
lldpProcessLocationIdTLV: Error, LLDP-MED Civic Address LCI len 39 invalid, tlvL security_result.summary Extraídos da mensagem de registro.
Mac Movement for MacAddr: a0:29:19:c0:55:18 security_result.summary Extraídos da mensagem de registro.
MacAddr: a0:29:19:c0:55:18 principal.mac Extraídos da mensagem de registro.
ncmadmin principal.user.userid Extraídos da mensagem de registro.
OS6360 principal.hostname
principal.asset.hostname
Extraídos da mensagem de registro quando principal_ip não é um endereço IP.
result: SUCCESS security_result.detection_fields.value Extraídos da mensagem de registro e mapeados como result.
SES CMD info(5) security_result.summary Parte do campo sec_summary extraído.
STACK-MANAGER principal.application Extraídos da mensagem de registro.
Stack Port A MAC Frames TX/RX Enabled security_result.summary Extraídos da mensagem de registro.
STP(11) additional.fields.value.string_value Extraídos da mensagem de registro e mapeados como id_protocol.
SWCONSOLE-L2-K0A-01 target.hostname
target.asset.hostname
Extraídos da mensagem de registro.
trafficType=2, principal.resource.attribute.labels.value Extraídos da mensagem de registro e mapeados como trafficType.
user: ncmadmin security_result.summary Parte do campo sec_summary extraído.
zslot=0, principal.resource.attribute.labels.value Extraídos da mensagem de registro e mapeados como zslot.
- additional.fields.key Valor codificado: id_protocol
- additional.fields.key Valor codificado: esm_set_rate_limit
- additional.fields.key Valor codificado: vlan
- metadata.event_type Defina como GENERIC_EVENT se nenhum outro tipo for correspondente.
- metadata.product_name Valor codificado: Alcatel Switch
- metadata.vendor_name Valor codificado: ALCATEL SWITCH
- network.application_protocol Defina como SSH quando id_protocol corresponder a ssh (sem diferenciação entre maiúsculas e minúsculas).
- principal.resource.attribute.labels.key Valor codificado: limit
- principal.resource.attribute.labels.key Valor codificado: trafficType
- principal.resource.attribute.labels.key Valor codificado: limitType
- principal.resource.attribute.labels.key Valor codificado: zslot
- security_result.detection_fields.key Valor codificado: cmd
- security_result.detection_fields.key Valor codificado: result
- security_result.severity Defina como INFORMATIONAL quando prod_severity corresponder a info (sem diferenciação entre maiúsculas e minúsculas).

Alterações

2024-03-11

Melhoria:

  • Foram adicionados novos padrões Grok para analisar um novo formato de registros syslog.
  • Mapeamento de severity para security_result.severity e security_result.detection_fields.
  • Se id_protocol for quase igual a ssh, defina network.application_protocol como SSH.
  • Foram adicionados novos padrões Grok para analisar o novo formato de sec_summary.

2024-01-16

  • Parser recém-criado.

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