Coletar registros do Radware WAF
Este documento explica como coletar os registros do firewall de aplicativo da Web (WAF, na sigla em inglês) do Radware usando um forwarder de operações de segurança do Google.
O analisador extrai campos das mensagens syslog do firewall Radware usando padrões Grok e os mapeia para o UDM. Ele processa vários formatos de registro, preenche campos de resultados de segurança com base nos detalhes do ataque e categoriza eventos com base em attack_id
, enriquecendo os dados para ingestão do Google SecOps.
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 o Radware Vision Reporter está instalado e configurado no AppWall.
- Verifique se você tem acesso privilegiado ao portal do Radware WAF.
Receber o arquivo de autenticação de ingestão do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Agentes de coleta.
- Faça o download do arquivo de autenticação de transferência. Salve o arquivo com segurança no sistema em que o agente Bindplane será instalado.
Receber o ID de cliente do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
- Copie e salve o ID do cliente na seção Detalhes da organização.
Instalar o agente do Bindplane
Instalação do Windows
- Abra o Prompt de Comando ou o PowerShell como administrador.
Execute este 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 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
- Para mais opções de instalação, consulte este guia de instalação.
Configurar o agente do Bindplane para processar o Syslog e enviar ao Google SecOps
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).
- Localize o arquivo
Edite o arquivo
config.yaml
da seguinte forma:receivers: udplog: # Replace with your specific IP and port listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Path to the ingestion authentication file creds: '/path/to/your/ingestion-auth.json' # Your Chronicle customer ID customer_id: 'your_customer_id' endpoint: malachiteingestion-pa.googleapis.com ingestion_labels: log_type: SYSLOG namespace: radware_waf raw_log_field: body 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
<customer_id>
pelo ID real do cliente. - 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 o WAF Radware AppWall
Para concluir as tarefas, faça as seguintes três configurações:
- Configure o AppWall de forma independente usando o Vision Reporter.
- Configure o AppWall integrado no Alteon usando o Vision Reporter (inclua dados de solicitação HTTP nos detalhes do evento).
- Configure o Vision Reporter para enviar registros ao agente do Bindplane.
Configurar o AppWall autônomo usando o Vision Reporter
- Faça login no console do Radware WAF usando as credenciais de administrador.
- Acesse Configuração > Serviços > Suporte à visão > Vision Reporter.
- Ative o registro selecionando a caixa de seleção Enviar eventos para o Vision Reporter.
- Endereço do Vision Reporter: insira o endereço IP do Vision Reporter.
- Port: digite o número da porta.
- Protocolo: selecione UDP ou TCP.
- Para incluir dados de resposta HTTP, marque a caixa de seleção Enviar respostas para o Vision Reporter.
- Clique em Salvar.
Configurar o AppWall integrado no Alteon usando o Vision Reporter (preferência para o registro de dados de solicitação HTTP)
- Faça login no console do Radware WAF usando as credenciais de administrador.
- Acesse Configuração > Segurança > Segurança da Web > Vision Reporter.
- Ative o registro selecionando a caixa de seleção Enviar eventos para o Vision Reporter.
- Marque a caixa de seleção Enviar eventos para o Vision Reporter.
- Endereço IP do Vision Reporter: insira o endereço IP do Vision Reporter.
- Port: insira um número de porta alto.
- Segurança: selecione UDP ou TCP.
- Clique em Salvar.
Configurar o Vision Reporter para enviar registros ao agente do Bindplane
- Faça login no console do administrador do Radware Vision Reporter.
- Acesse Configuração > SIEM e registro externo.
- Clique em + Adicionar novo destino do SIEM.
- Nome do destino: digite Google SecOps Forwarder.
- Tipo de exportação de registro: selecione Syslog (formato RFC 5424) para geração de registros estruturados.
- Endereço IP do servidor de syslog remoto: insira o endereço IP do agente do Bindplane.
- Porta: insira uma porta que o agente do Bindplane detecta (por exemplo, 514 para UDP, 601 para TCP).
- Protocolo: selecione UDP ou TCP, dependendo da configuração do Bindplane.
- Clique em Salvar.
Tabela de mapeamento do UDM
Campo de registro | Mapeamento do UDM | Lógica |
---|---|---|
action |
event.idm.read_only_udm.security_result.action |
Se action for "drop", defina como "BLOCK". |
attack_desc |
event.idm.read_only_udm.security_result.description |
Mapeado diretamente. |
attack_type |
event.idm.read_only_udm.security_result.threat_name |
Mapeado diretamente. |
command |
event.idm.read_only_udm.principal.process.command_line |
Mapeado diretamente. |
description |
event.idm.read_only_udm.security_result.description |
Mapeado diretamente se attack_desc estiver vazio. |
dst_ip |
event.idm.read_only_udm.target.ip |
Mapeado diretamente. |
dst_port |
event.idm.read_only_udm.target.port |
Mapeado diretamente, convertido em número inteiro. Defina como "MACHINE" se username estiver presente e command não estiver. Copiado do campo collection_time do registro bruto. O padrão é "NETWORK_CONNECTION". Defina como "GENERIC_EVENT" se src_ip ou dst_ip estiverem ausentes. Defina como "USER_LOGIN" se username estiver presente e command não estiver. Pode ser substituído pela lógica baseada em attack_id . Defina como "RADWARE_FIREWALL". Mapeado do campo product . Defina como "Radware". |
intermediary_ip |
event.idm.read_only_udm.intermediary.ip |
Mapeado diretamente. |
obv_ip |
event.idm.read_only_udm.observer.ip |
Mapeado diretamente. |
product |
event.idm.read_only_udm.metadata.product_name |
Mapeado diretamente. |
protocol_number_src |
event.idm.read_only_udm.network.ip_protocol |
Analisado usando a lógica parse_ip_protocol.include . |
rule_id |
event.idm.read_only_udm.security_result.rule_id |
Mapeado diretamente. Derivado com base no valor de attack_id . Os valores incluem "ACL_VIOLATION", "NETWORK_DENIAL_OF_SERVICE", "NETWORK_SUSPICIOUS" e "NETWORK_RECON". |
src_ip |
event.idm.read_only_udm.principal.ip |
Mapeado diretamente. |
src_port |
event.idm.read_only_udm.principal.port |
Mapeado diretamente, convertido em número inteiro. |
ts |
event.idm.read_only_udm.metadata.event_timestamp |
Analisado e convertido em carimbo de data/hora. |
username |
event.idm.read_only_udm.target.user.userid |
Mapeado diretamente se command não estiver presente. |
username |
event.idm.read_only_udm.principal.user.userid |
Mapeado diretamente se command estiver presente. |
Alterações
2023-12-08
- Um padrão Grok foi modificado para analisar corretamente "src_ip".
2023-11-23
- Foram adicionados novos padrões Grok para oferecer suporte a um novo padrão não analisado de SYSLOGS.
- Inclusão de suporte ao novo padrão de data "ts".
- Inicialização de "attack_type", "attack_desc", "protocol_number_src", "security_result", "action" e "product" como nulo.
- Adição de verificação de nulos a "product" antes do mapeamento para "event.idm.read_only_udm.metadata.product_name".
- Foi adicionada uma verificação de valor nulo a "rule_id" antes do mapeamento para "event.idm.read_only_udm.security_result.rule_id".
- Adição de verificação de valor nulo em "attack_desc" antes do mapeamento para "event.idm.read_only_udm.security_result.description".
- Adição de verificação de nulos a "attack_type" antes do mapeamento para "event.idm.read_only_udm.security_result.threat_name".
- "Nome de usuário" foi mapeado para "event.idm.read_only_udm.principal.user.userid".
- "command" foi associado a "event.idm.read_only_udm.principal.process.command_line".
- "description" foi associado a "event.idm.read_only_udm.security_result.description".
- "intermediary_ip" foi mapeado para "event.idm.read_only_udm.intermediary.ip".
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.