Recolha registos do firewall Sophos XG

Compatível com:

Este documento explica como recolher registos da firewall Sophos Next Gen (XG) através do Bindplane. O analisador extrai registos, normaliza os pares de chave/valor e mapeia-os para o UDM. Processa vários formatos de registo, converte datas/horas, enriquece os dados de rede e categoriza eventos com base nos IDs de registo e na atividade de rede.

Antes de começar

  • Certifique-se de que tem uma instância do Google Security Operations.
  • Certifique-se de que está a usar o Windows 2016 ou posterior, ou um anfitrião Linux com systemd.
  • Se estiver a executar o serviço através de um proxy, certifique-se de que as portas da firewall estão abertas.
  • Certifique-se de que tem acesso privilegiado à firewall Sophos XG.

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

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

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

  1. Aceda ao ficheiro de configuração:

    1. 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.
    2. 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: '/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: SYSLOG
                namespace: sophos_firewall
                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 de cliente real.

  5. Atualize /path/to/ingestion-authentication-file.json para o caminho onde o ficheiro de autenticação foi guardado na secção Obtenha o ficheiro de autenticação de carregamento do Google SecOps.

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 do Bindplane no Windows, pode usar a consola Services ou introduzir o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configure servidores Syslog da firewall Sophos

  1. Inicie sessão na firewall Sophos XG.
  2. Aceda a Configurar > Serviços do sistema > Definições de registo.
  3. Na secção Servidores Syslog, clique em Adicionar.
  4. Indique os seguintes detalhes de configuração:
    • Nome: introduza um nome exclusivo para o coletor do Google SecOps.
    • Endereço IP/domínio: introduza o endereço IP do Bindplane.
    • Porta: introduza o número da porta do Bindplane.
    • Instalação: selecione DAEMON.
    • Nível de gravidade: selecione Informações.
    • Formato: selecione Formato padrão do dispositivo.
  5. Clique em Guardar.
  6. Regresse à página Definições de registo e selecione os tipos de registos específicos a encaminhar para o servidor syslog.

Configure as definições de registo da firewall Sophos XG

  1. Selecione os seguintes registos Firewall base (registo da política de segurança):
    • Regras da política
    • Tráfego inválido
    • LCAs locais
    • Ataque DoS
    • Pacote redirecionado ICMP rejeitado
    • Pacote encaminhado de origem rejeitado
    • Tráfego fragmentado rejeitado
    • Filtragem de MAC
    • Filtragem de pares IP-MAC
    • Prevenção de spoofing de IP
    • Túnel de VPN SSL
    • Servidor de aplicações protegido
    • Batimento cardíaco
  2. Selecione os seguintes registos de Proteção Web (registo de filtragem Web e registo de filtragem de aplicações):
    • Filtro Web
    • Filtro de aplicações
  3. Selecione os seguintes registos de Proteção de rede (registo de IPS):
    • Anomalia
    • Assinatura
  4. Selecione o seguinte registo do Registo do sistema:
    • Eventos do sistema

Tabela de mapeamento da UDM

Campo de registo Mapeamento de UDM Lógica
activityname security_result.detection_fields.activityname Valor do campo activityname.
app_category security_result.detection_fields.Application Category, application_category Valor do campo app_category.
app_filter_policy_id security_result.detection_fields.app_filter_policy_id Valor do campo app_filter_policy_id.
app_is_cloud security_result.detection_fields.app_is_cloud Valor do campo app_is_cloud.
app_name principal.application Valor do campo app_name.
app_resolved_by security_result.detection_fields.app_resolved_by Valor do campo app_resolved_by.
app_risk security_result.detection_fields.Application Risk, application_risk Valor do campo app_risk.
app_technology application_technology Valor do campo app_technology.
application principal.application Valor do campo application.
application_category security_result.detection_fields.Application Category Valor do campo application_category.
application_risk security_result.detection_fields.Application Risk Valor do campo application_risk.
application_technology security_result.detection_fields.Application Technology Valor do campo application_technology.
bytes_received network.received_bytes Valor do campo bytes_received.
bytes_sent network.sent_bytes Valor do campo bytes_sent.
category application_category Valor do campo category.
category_type security_result.detection_fields.category_type Valor do campo category_type.
client_host_name network.dhcp.client_hostname Valor do campo client_host_name.
client_physical_address network.dhcp.chaddr Valor do campo client_physical_address.
con_event security_result.detection_fields.con_event Valor do campo con_event.
con_id security_result.detection_fields.con_id Valor do campo con_id.
connevent security_result.detection_fields.connevent Valor do campo connevent.
connid security_result.detection_fields.connid Valor do campo connid.
date event.timestamp Analisado a partir dos campos date e time, ajustado para o fuso horário.
device_id intermediary.asset.asset_id Valor do campo device_id, com o prefixo ID:.
device_model intermediary.hostname Valor do campo device_model.
device_name intermediary.hostname Valor do campo device_name.
device_serial_id intermediary.asset.asset_id Valor do campo device_serial_id, com o prefixo ID:.
domain principal.administrative_domain, target.hostname Valor do campo domain.
dst_country target.location.country_or_region Valor do campo dst_country.
dst_country_code target.location.country_or_region Valor do campo dst_country_code.
dst_ip target.ip Valor do campo dst_ip.
dst_mac target.mac Valor do campo dst_mac.
dst_port target.port Valor do campo dst_port.
dst_trans_ip target.nat_ip Valor do campo dst_trans_ip.
dst_trans_port target.nat_port Valor do campo dst_trans_port.
dst_zone security_result.detection_fields.dst_zone Valor do campo dst_zone.
dstzone security_result.detection_fields.dstzone Valor do campo dstzone.
dstzonetype security_result.detection_fields.dstzonetype Valor do campo dstzonetype.
duration network.session_duration.seconds Valor do campo duration.
ether_type security_result.detection_fields.ether_type Valor do campo ether_type.
exceptions security_result.detection_fields.exceptions Valor do campo exceptions.
fw_rule_id security_result.rule_id Valor do campo fw_rule_id.
fw_rule_name security_result.rule_name Valor do campo fw_rule_name.
fw_rule_section security_result.rule_set Valor do campo fw_rule_section.
fw_rule_type security_result.rule_type Valor do campo fw_rule_type.
gw_id_request security_result.detection_fields.gw_id_request Valor do campo gw_id_request.
gw_name_request security_result.detection_fields.gw_name_request Valor do campo gw_name_request.
hb_health security_result.detection_fields.hb_health Valor do campo hb_health.
hb_status security_result.detection_fields.hb_status Valor do campo hb_status.
http_category security_result.detection_fields.http_category Valor do campo http_category.
http_category_type security_result.detection_fields.http_category_type Valor do campo http_category_type.
http_status network.http.response_code Valor do campo http_status.
in_display_interface security_result.detection_fields.in_display_interface Valor do campo in_display_interface.
in_interface security_result.detection_fields.in_interface Valor do campo in_interface.
ipaddress principal.ip, network.dhcp.ciaddr Valor do campo ipaddress.
log_component metadata.product_event_type, security_result.detection_fields.log_component Valor do campo log_component.
log_id metadata.product_log_id Valor do campo log_id.
log_msg metadata.description Valor do campo message após a remoção de message=.
log_occurrence security_result.detection_fields.log_occurrence Valor do campo log_occurrence.
log_subtype security_result.detection_fields.log_subtype, security_result.action Valor do campo log_subtype.
log_type security_result.detection_fields.log_type Valor do campo log_type.
log_version security_result.detection_fields.log_version Valor do campo log_version.
message metadata.description Valor do campo message.
nat_rule_id security_result.detection_fields.nat_rule_id Valor do campo nat_rule_id.
nat_rule_name security_result.detection_fields.nat_rule_name Valor do campo nat_rule_name.
out_display_interface security_result.detection_fields.out_display_interface Valor do campo out_display_interface.
out_interface security_result.detection_fields.out_interface Valor do campo out_interface.
packets_received network.received_packets Valor do campo packets_received.
packets_sent network.sent_packets Valor do campo packets_sent.
priority security_result.severity Mapeado a partir do campo priority ou severity com base numa tabela de consulta.
protocol network.ip_protocol Analisado a partir do campo protocol através de uma tabela de pesquisa.
reason security_result.detection_fields.reason, security_result.summary Valor do campo reason.
recv_bytes network.received_bytes Valor do campo recv_bytes.
recv_pkts network.received_packets Valor do campo recv_pkts.
referer network.http.referral_url Valor do campo referer.
rule_id security_result.rule_id Valor do campo rule_id.
rule_name security_result.rule_name Valor do campo rule_name.
sent_bytes network.sent_bytes Valor do campo sent_bytes.
sent_pkts network.sent_packets Valor do campo sent_pkts.
severity priority Valor do campo severity.
src_country principal.location.country_or_region Valor do campo src_country.
src_country_code principal.location.country_or_region Valor do campo src_country_code.
src_ip principal.ip Valor do campo src_ip.
src_mac principal.mac Valor do campo src_mac.
src_port principal.port Valor do campo src_port.
src_trans_ip principal.nat_ip Valor do campo src_trans_ip.
src_trans_port principal.nat_port Valor do campo src_trans_port.
src_zone security_result.detection_fields.src_zone Valor do campo src_zone.
srczone security_result.detection_fields.srczone Valor do campo srczone.
srczonetype security_result.detection_fields.srczonetype Valor do campo srczonetype.
status security_result.action_details, security_result.action Valor do campo status.
status_code network.http.response_code Valor do campo status_code.
target.url target.url Valor do campo url.
time event.timestamp Analisado a partir dos campos date e time, ajustado para o fuso horário.
timestamp event.timestamp Analisado a partir do campo timestamp.
tran_dst_ip target.nat_ip Valor do campo tran_dst_ip.
tran_dst_port target.nat_port Valor do campo tran_dst_port.
tran_src_ip principal.nat_ip Valor do campo tran_src_ip.
tran_src_port principal.nat_port Valor do campo tran_src_port.
url target.url Valor do campo url.
used_quota security_result.detection_fields.used_quota Valor do campo used_quota.
user_agent network.http.user_agent, network.http.parsed_user_agent Valor do campo user_agent. Versão analisada também gerada.
user_gp extensions.auth.type Se user_gp for vpn, define extensions.auth.type como VPN.
user_name principal.user.userid, principal.user.email_addresses Valor do campo user_name. Se contiver @, também é adicionado a email_addresses.
web_policy_id security_result.detection_fields.web_policy_id Valor do campo web_policy_id.
N/A event.idm.read_only_udm.metadata.event_timestamp Copiado de event.timestamp.
N/A event.idm.read_only_udm.metadata.log_type O esquema de carregamento do Chronicle especifica o tipo de registo como SOPHOS_FIREWALL.
N/A event.idm.read_only_udm.metadata.vendor_name Valor constante SOPHOS.
N/A event.idm.read_only_udm.metadata.product_name Valor constante SOPHOS Firewall.
N/A event.idm.read_only_udm.network.application_protocol Definido como DHCP se o campo ipaddress estiver presente. Caso contrário, derivado do campo protocol.
N/A event.idm.read_only_udm.metadata.event_type Determinado pela lógica com base na presença de outros campos (por exemplo, NETWORK_HTTP, NETWORK_CONNECTION, NETWORK_DHCP, STATUS_UPDATE, GENERIC_EVENT).
N/A event.idm.read_only_udm.security_result.action Derivados dos campos status ou log_subtype.

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