Recolha registos do IPS da Aruba
Este documento explica como carregar registos de IPS da Aruba para o Google Security Operations através do Bindplane. O analisador extrai eventos, notificações, PAs não autorizados e informações de PAs WIDS de registos formatados em JSON. Transforma os dados de registo não processados em UDM ao mapear campos, processar vários tipos de eventos (início/fim de sessão do utilizador, eventos de rede, eventos de segurança) e enriquecer os dados com informações contextuais, como canal, SSID, BSSID e gravidade. O analisador também realiza a normalização da data/hora e o processamento de erros para JSON com formato incorreto.
Antes de começar
Certifique-se de que cumpre os seguintes pré-requisitos:
- Uma instância do Google SecOps
- Um anfitrião Windows 2016 ou posterior, ou Linux com
systemd - Se estiver a ser executado através de um proxy, certifique-se de que as portas da firewall estão abertas de acordo com os requisitos do agente Bindplane
- Acesso privilegiado à consola de gestão ou à CLI do dispositivo Aruba
Obtenha o ficheiro de autenticação de carregamento do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Agentes de recolha.
- 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
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Perfil.
- 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 de janelas
- Abra a Linha de comandos ou o PowerShell como administrador.
Execute o seguinte comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Instalação do Linux
- Abra um terminal com privilégios de raiz ou sudo.
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 este guia de instalação.
Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps
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,viou Bloco de notas).
- Localize o ficheiro
Edite o ficheiro
config.yamlda 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: YOUR_CUSTOMER_ID_HERE endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'ARUBA_IPS' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels- Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.
- Substitua
<YOUR_CUSTOMER_ID_HERE>pelo ID de cliente real. - Atualize
/path/to/ingestion-authentication-file.jsonpara o caminho onde o ficheiro de autenticação foi guardado na secção Obtenha o ficheiro de autenticação de carregamento do Google SecOps. - Atualize o valor de
endpointpara corresponder à região do seu inquilino.
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-agentPara 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 encaminhamento de Syslog em dispositivos Aruba
Escolha o método de configuração com base no tipo de dispositivo Aruba:
Opção A: controladores Aruba (AOS-8)
Esta opção detalha os passos para configurar o encaminhamento do Syslog em controladores Aruba com o AOS-8.
Usar a IU Web (recomendado para o formato CEF)
- Inicie sessão na interface Web do controlador Aruba.
- Na hierarquia de nós da rede gerida, aceda a Configuração > Sistema > Registo > Servidores Syslog.
- Para adicionar um servidor de registo, clique em + na secção Servidores Syslog.
- Forneça os seguintes detalhes de configuração:
- Endereço IP do servidor: introduza o endereço IP do agente Bindplane.
- Porta: introduza
514(ou a porta configurada no Bindplane). - Protocolo: selecione UDP ou TCP, consoante a configuração do agente Bindplane.
- Clique em Aplicar.
- Para selecionar os tipos de mensagens que quer registar, selecione Níveis de registo.
- Selecione a categoria ou a subcategoria a registar.
- Para selecionar o nível de gravidade da categoria ou subcategoria, selecione o nível na lista pendente Nível de registo.
- Selecione o formato de registo CEF ou BSD-standard na lista pendente Formato.
- O CEF (formato de evento comum) do ArcSight é recomendado para o registo estruturado.
- Clique em Enviar.
- Clique em Alterações pendentes.
- Na janela Alterações pendentes, selecione a caixa de verificação e clique em Implementar alterações.
Opção B: Aruba Instant AP
Esta secção descreve o procedimento para configurar um servidor Syslog num ponto de acesso (PA) Aruba Instant através da respetiva IU Web ou interface de linha de comandos (CLI).
Usar a IU Web
- Inicie sessão na interface Web do Aruba Instant.
- Na janela principal do Instant, clique no link Sistema.
- Clique em Mostrar opções avançadas para apresentar as opções avançadas.
- Clique no separador Monitorização.
- São apresentados os detalhes do separador Monitorização.
- No campo Servidor Syslog, que se encontra na secção Servidores, introduza o endereço IP do agente Bindplane.
- Na secção Níveis de instalações do Syslog, selecione os valores necessários para configurar os níveis de instalações do Syslog.
- Nível de Syslog: registo detalhado sobre os níveis de Syslog.
- AP-Debug: registo detalhado sobre o dispositivo Instant AP.
- Rede: registo sobre a alteração da rede, por exemplo, quando é adicionado um novo Instant AP a uma rede.
- Segurança: registo sobre a segurança da rede, por exemplo, quando um cliente se liga com a palavra-passe errada.
- Sistema: registo sobre a configuração e o estado do sistema.
- Utilizador: registos importantes sobre o cliente.
- User-Debug: registo detalhado sobre o cliente.
- Sem fios: registo sobre rádio.
- Clique em OK para guardar a configuração.
Usar a CLI
- Inicie sessão na CLI do Aruba Instant AP.
Entre no modo de configuração:
configure terminalConfigure o servidor e o nível do syslog:
syslog-server <BINDPLANE_IP_ADDRESS> syslog-level warnings
- Substitua
<BINDPLANE_IP_ADDRESS>pelo endereço IP do anfitrião do agente do Bindplane. - Ajuste o nível de gravidade conforme necessário.
Opção C: Aruba AOS-S (comutadores)
- Inicie sessão na CLI do comutador Aruba AOS-S.
Entre no modo de configuração:
configureConfigure o servidor Syslog:
logging <BINDPLANE_IP_ADDRESS> logging severity warnings- Substitua
<BINDPLANE_IP_ADDRESS>pelo endereço IP do anfitrião do agente do Bindplane. - Ajuste o nível de gravidade conforme necessário.
- Substitua
Guarde a configuração:
write memory
Opção D: Aruba Central (no local)
- Inicie sessão na interface Web do Aruba Central.
- Aceda a Sistema > Administração do sistema > Notificações > Servidor Syslog.
- Clique em Adicionar ou Ativar.
- Forneça os seguintes detalhes de configuração:
- Anfitrião: introduza o endereço IP do agente do Bindplane.
- Porta: introduza
514(ou a porta configurada no Bindplane). - Protocolo: selecione UDP ou TCP, consoante a configuração do agente Bindplane.
- Instalação: selecione Local7 ou conforme necessário.
- Gravidade: selecione o nível de registo mínimo (por exemplo, Aviso ou Informação).
- Clique em Guardar.
Tabela de mapeamento da UDM
| Campo de registo | Mapeamento da UDM | Lógica |
|---|---|---|
notifications.created_timestamp |
metadata.event_timestamp.seconds |
O campo de registo não processado notifications.created_timestamp é convertido em segundos e mapeado. Os nanosegundos são perdidos na conversão. |
notifications.customer_id |
metadata.product_log_id |
Mapeamento direto. |
notifications.device_id |
principal.resource.product_object_id |
Mapeamento direto. |
notifications.group_name |
principal.group.group_display_name |
Mapeamento direto. |
notifications.id |
metadata.product_log_id |
Mapeamento direto. |
notifications.timestamp |
metadata.event_timestamp.seconds |
O campo de registo não processado notifications.timestamp é convertido em segundos e mapeado. |
rogue_aps.acknowledged |
security_result.detection_fields.value onde security_result.detection_fields.key é "acknowledged" |
Convertido em string e mapeado. |
rogue_aps.containment_status |
metadata.description |
Mapeamento direto. |
rogue_aps.cust_id |
metadata.product_log_id |
Mapeamento direto. |
rogue_aps.encryption |
security_result.detection_fields.value onde security_result.detection_fields.key é "encryption" |
Mapeamento direto. |
rogue_aps.first_det_device |
principal.resource.product_object_id |
Mapeamento direto. |
rogue_aps.first_det_device_name |
principal.hostname |
Mapeamento direto. |
rogue_aps.first_seen |
principal.domain.first_seen_time.seconds |
Analisado como uma data e os segundos desde epoch são mapeados. |
rogue_aps.group_name |
principal.group.group_display_name |
Mapeamento direto. |
rogue_aps.id |
principal.mac |
Convertido em minúsculas e mapeado. |
rogue_aps.labels |
security_result.detection_fields.value onde security_result.detection_fields.key é "etiquetas" |
Mapeamento direto. |
rogue_aps.last_det_device |
security_result.about.user.product_object_id |
Mapeamento direto. |
rogue_aps.last_det_device_name |
target.hostname |
Mapeamento direto. |
rogue_aps.last_seen |
principal.domain.last_seen_time.seconds |
Analisado como uma data e os segundos desde epoch são mapeados. Também é usado como a data/hora do evento, se estiver presente. |
rogue_aps.mac_vendor |
target.administrative_domain |
Mapeamento direto. |
rogue_aps.name |
target.user.userid |
Mapeamento direto. |
rogue_aps.overridden |
security_result.detection_fields.value onde security_result.detection_fields.key é "substituído" |
Convertido em string e mapeado. |
rogue_aps.signal |
security_result.detection_fields.value onde security_result.detection_fields.key é "sinal" |
Convertido em string e mapeado. |
rogue_aps.ssid |
security_result.detection_fields.value onde security_result.detection_fields.key é "ssid" |
Mapeamento direto. |
site |
principal.location.name |
Mapeamento direto. |
wids_aps_info_list.attack_type |
metadata.description |
Mapeamento direto. |
wids_aps_info_list.detected_ap |
principal.hostname |
Mapeamento direto. |
wids_aps_info_list.description |
security_result.description |
Mapeamento direto. Também é usado para extrair vários campos através do grok. |
wids_aps_info_list.event_time |
metadata.event_timestamp.seconds |
Convertido em string e usado como a data/hora do evento, se estiver presente. |
wids_aps_info_list.event_type |
metadata.product_event_type |
Mapeamento direto. |
wids_aps_info_list.macaddr |
principal.mac |
Convertido em minúsculas e mapeado. |
wids_aps_info_list.radio_band |
security_result.detection_fields.value onde security_result.detection_fields.key é "radio_band" |
Mapeamento direto. |
wids_aps_info_list.virtual_controller |
target.hostname |
Mapeamento direto. Definido como true se notifications.severity for "Emergência", "Alerta" ou "Crítico". Definido como true se notifications.severity for "Emergência", "Alerta" ou "Crítico". Determinado pelos campos events.event_type ou notifications.type, ou definido como GENERIC_EVENT por predefinição. Várias associações são derivadas da lógica: STATUS_STARTUP, STATUS_SHUTDOWN, STATUS_UPDATE, USER_LOGIN, USER_LOGOUT. Está sempre definido como "ARUBA_IPS". Está sempre definido como "ARUBA_IPS". Está sempre definido como "ARUBA". Defina como "DHCP" se events.event_type for "Cliente DHCP reconhecido" ou "Tempo limite de DHCP do cliente". Definido como "BOOTREPLY" se events.event_type for "Client DHCP Acknowledged" ou "Client DHCP Timeout". Extraído de events.description através de grok se events.event_type for "Client DHCP Acknowledged". Definido como "ACK" se events.event_type for "Cliente DHCP reconhecido" e events.description contiver um endereço IP. Caso contrário, é definido como "WIN_EXPIRED". Definido como "ACCESS POINT" se events.event_type começar por "Radio", "WLAN", "AP" ou for "Security". Definido como "DEVICE" se events.event_type começar por "Radio", "WLAN", "AP" ou for "Security". Mapeado a partir de events.client_mac para a maioria dos eventos de cliente ou rogue_aps.last_det_device para eventos de PA não autorizados. Definido como "AUTH_VIOLATION" para valores events.event_type específicos ou se notifications.description contiver "DoS Attack" ou "disconnect attack". Definir para valores events.event_type específicos. São adicionados vários pares de chaves-valores com base em campos extraídos, como bssid, channel, previous_channel, ssid, previous bssid, acknowledged, overriden, encryption, signal, labels e radio_band. Mapeado a partir de wids_aps_info_list.description para eventos wids. Determinado por notifications.severity ou wids_aps_info_list.level. Definido como "level: %{wids_aps_info_list.level}" para eventos wids. Definir para valores events.event_type específicos. Mapeado a partir de rogue_aps.mac_vendor para eventos de PA não autorizados. Mapeado a partir de rogue_aps.last_det_device_name para eventos de PA não autorizados ou wids_aps_info_list.virtual_controller para eventos de WIDs. Extraído de events.description através de grok se events.event_type for "Security". Mapeado a partir de notifications.client_mac para eventos de notificação, events.client_mac para eventos de cliente, target_mac extraído de wids_aps_info_list.description para eventos wids ou rogue_aps.id para eventos de PA não autorizados. Definido como "CLIENT" para a maioria dos eventos de cliente. Definido como "DEVICE" para a maioria dos eventos do cliente. Definido como "ACTIVE" se events.event_type for "Security". Mapeado a partir de rogue_aps.name para eventos de PA não autorizados. |
events.bssid |
security_result.detection_fields.value onde security_result.detection_fields.key é "bssid" |
Mapeamento direto. |
events.client_mac |
target.mac |
Mapeamento direto. Também é usado para preencher security_result.about.user.product_object_id para eventos de cliente e target.ip para eventos de "Segurança". |
events.description |
metadata.description |
Mapeamento direto para eventos de AP e rádio. Usado para extrair vários campos através do grok para outros tipos de eventos. |
events.device_mac |
principal.mac |
Mapeamento direto. |
events.device_serial |
principal.resource.product_object_id |
Mapeamento direto. |
events.events_details.2.channel |
security_result.detection_fields.value onde security_result.detection_fields.key é "canal" |
Mapeamento direto. |
events.group_name |
principal.group.group_display_name |
Mapeamento direto. |
events.hostname |
principal.hostname |
Mapeamento direto. |
events.timestamp |
metadata.event_timestamp.seconds |
Convertido em string, os milissegundos são removidos e, em seguida, mapeados. Também é usado como a data/hora do evento, se estiver presente. |
timestamp |
metadata.event_timestamp |
Usado como data/hora do evento se outros campos de data/hora não estiverem presentes. Definido como "ATIVO" para a maioria dos eventos de cliente e eventos de "Segurança". Definido como "AUTHTYPE_UNSPECIFIED" se events.event_type for "Client 802.1x Radius Reject". Extraído de events.description através de grok se events.event_type for "Security". |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.