Collect ExtraHop Reveal(x) logs

Supported in:

This document explains how to ingest ExtraHop Reveal(x) logs to Google Security Operations using Bindplane. ExtraHop Reveal(x) is a network detection and response (NDR) platform that provides real-time visibility into network traffic, enabling organizations to detect threats, investigate incidents, and respond to security events across cloud and on-premises environments.

Before you begin

Make sure you have the following prerequisites:

  • A Google SecOps instance.
  • A Windows Server 2016 or later, or a Linux host with systemd.
  • If running behind a proxy, ensure firewall ports are open per the Bindplane agent requirements.
  • Privileged access to the ExtraHop Reveal(x) Administration settings.

Get Google SecOps ingestion authentication file

  1. Sign in to the Google SecOps console.
  2. Go to SIEM Settings > Collection Agents.
  3. Download the Ingestion Authentication File.
  4. Save the file securely on the system where Bindplane will be installed.

Get Google SecOps customer ID

  1. Sign in to the Google SecOps console.
  2. Go to SIEM Settings > Profile.
  3. Copy and save the Customer ID from the Organization Details section.

Install the Bindplane agent

Install the Bindplane agent on your Windows or Linux operating system according to the following instructions.

Windows installation

  1. Open Command Prompt or PowerShell as an administrator.
  2. Run the following command:

    msiexec /i "[https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi](https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi)" /quiet
    
  3. Verify the installation by running:

    sc query observiq-otel-collector
    

The service should show as RUNNING.

Linux installation

  1. Open a terminal with root or sudo privileges.
  2. Run the following command:

    sudo sh -c "$(curl -fsSlL [https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh](https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh))" install_unix.sh
    
  3. Verify the installation by running:

    sudo systemctl status observiq-otel-collector
    

The service should show as active (running).

Additional installation resources

For additional installation options, see the Bindplane agent installation guide.

Configure the Bindplane agent to ingest syslog and send to Google SecOps

Locate the configuration file

  • Linux: sudo systemctl status observiq-otel-collector
  • Windows: C:\Program Files\observIQ OpenTelemetry Collector\config.yaml

Edit the configuration file

  • Replace the entire contents of config.yaml with the following configuration:

    receivers:
      tcplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/extrahop:
        compression: gzip
        creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
        customer_id: '<CUSTOMER_ID>'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: EXTRAHOP
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/extrahop_to_chronicle:
          receivers:
            - tcplog
          exporters:
            - chronicle/extrahop
    

Configuration parameters

Replace the following placeholders:

  • <CUSTOMER_ID>: Your Google SecOps customer ID.
  • Update the creds_file_path to the path where the ingestion authentication file was saved:
    • Linux: /etc/bindplane-agent/ingestion-auth.json
    • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
  • Update the endpoint value with your regional endpoint:
    • United States: malachiteingestion-pa.googleapis.com
    • Europe: europe-malachiteingestion-pa.googleapis.com
    • Asia: asia-southeast1-malachiteingestion-pa.googleapis.com

Restart the Bindplane agent to apply the changes

To restart the Bindplane agent in Linux:

  1. Run the following command:

    sudo systemctl restart observiq-otel-collector
    
  2. Verify the service is running:

    sudo systemctl status observiq-otel-collector
    
  3. Check logs for errors:

    sudo journalctl -u observiq-otel-collector -f
    

To restart the Bindplane agent in Windows:

  1. Choose one of the following options:

    • Command Prompt or PowerShell as administrator:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • Services console:
      1. Press Win+R, type services.msc, and press Enter.
      2. Locate observIQ OpenTelemetry Collector.
      3. Right-click and select Restart.
  2. Verify the service is running:

    sc query observiq-otel-collector
    
  3. Check logs for errors:

    type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
    

Configure ExtraHop Reveal(x) syslog forwarding

Configure system notification syslog

  1. Sign in to the ExtraHop Administration settings (https://<extrahop-hostname-or-IP-address>/admin).
  2. In the Network Settings section, click Notifications.
  3. Click Syslog.
  4. Provide the following configuration details:
    • Destination: Enter the IP address of the Bindplane agent host.
    • Protocol: Select TCP.
    • Port: Enter the port number configured in the Bindplane agent (for example, 514).
  5. Click Test Settings and then Save.

Configure audit log syslog forwarding

  1. In the ExtraHop Administration settings, go to the Status and Diagnostics section.
  2. Click Audit Log > Configure Syslog Settings.
  3. Provide the following configuration details:
    • Destination: Enter the IP address of the Bindplane agent host.
    • Protocol: Select TCP.
    • Port: Enter 514.
  4. Click Test Settings and then Save.

Optional: Configure RFC-compliant syslog format

  1. In the ExtraHop Administration settings, click Running Config > Edit Config.
  2. Add the following entry under the syslog_notification section:

    "rfc_compliant_format": "rfc5424"
    
  3. Click Save and then Apply Changes.

UDM mapping table

Log Field UDM Mapping Logic
act security_result.action_details Raw log value mapping.
cat metadata.product_event_type Raw log value mapping.
deviceExternalId metadata.product_log_id Raw log value mapping.
dhost target.hostname Raw log value mapping.
dpt target.port Raw log value mapping.
dst target.ip Raw log value mapping.
duser target.user.userid Raw log value mapping.
msg metadata.description Raw log value mapping.
proto network.ip_protocol Raw log value mapping.
severity security_result.severity Mapped based on CEF severity value.
shost principal.hostname Raw log value mapping.
spt principal.port Raw log value mapping.
src principal.ip Raw log value mapping.
suser principal.user.userid Raw log value mapping.
N/A metadata.log_type Set to EXTRAHOP.
N/A metadata.product_name Set to Reveal(x).
N/A metadata.vendor_name Set to ExtraHop.

Need more help? Get answers from Community members and Google SecOps professionals.