Collect IBM Security Verify Access logs

Supported in:

This document describes how to collect IBM Security Verify Access logs. The parser extracts common fields using Grok patterns and leverages XML parsing for detailed event information embedded within the description field, ultimately mapping extracted data to the Unified Data Model (UDM) for standardized security event representation.

Before you begin

Make sure you have the following prerequisites:

  • Google SecOps instance
  • Windows 2016 or later, or a Linux host with systemd
  • If running behind a proxy, firewall ports are open
  • Administrative access to IBM Security Verify Access (ISVA)

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. 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 the 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" /quiet
    

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)" install_unix.sh
    

Additional installation resources

For additional installation options, consult the installation guide.

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

  1. Access the configuration file:
    • Locate the config.yaml file. Typically, it's in the /etc/bindplane-agent/ directory on Linux or in the installation directory on Windows.
    • Open the file using a text editor (for example, nano, vi, or Notepad).
  2. Edit the config.yaml file as follows:

    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: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            ingestion_labels:
                log_type: 'IBM_SVA'
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Replace the port and IP address as required in your infrastructure.

  4. Replace <customer_id> with the actual customer ID.

  5. Update /path/to/ingestion-authentication-file.json to the path where the authentication file was saved in the Get Google SecOps ingestion authentication file section.

Restart the Bindplane agent to apply the changes

  • In Linux, to restart the Bindplane Agent, run the following command:

    sudo systemctl restart bindplane-agent
    
  • In Windows, to restart the Bindplane Agent, you can either use the Services console or enter the following command:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Customize the Log Format

  1. To edit the WebSEAL configuration file, use the appliance Local Management Interface (LMI).
  2. In the LMI, go to Reverse Proxy Management.
  3. Click Manage > Configuration > Edit configuration file. (You can use the editor to directly edit the WebSEAL configuration file).
  4. Go to logging[stanza], look for syntax requests = {yes|no}, and click Yes.
  5. Go to gmt-time parameter and edit it as follows: gmt-time = yes.
  6. Replace the request-log-format with the following:

    request-log-format = ibmsva: %h %l "%u" %t "%r" %s %b %T %j %{X-Forwarded-For}i %a %A %H %p %m %U %v %d %q
    
  7. See the following explanation of each directive:

    • ibmsva: Identifies logs from the SVA device
    • %h: Remote host
    • %l: Remote logname
    • %u: Remote user
    • %t: Time and date in CLF format
    • %r: First line of the request
    • %s: Response status
    • %b: Bytes in the response (excluding HTTP headers)
    • %T: Time to serve the request (seconds)
    • %j: Junction name
    • %X-Forwarded-For: Forwarded-for IP address
    • %a: Remote IP address
    • %A: Local IP address
    • %H: Request protocol
    • %p: Port
    • %m: Request method (GET, POST, HEAD)
    • %U: URL requested
    • %v: Server name
    • %d: Transaction identifier
    • %q: Query string

Configure Syslog Forwarding in ISVA

  1. Sign in to the ISVA Local Management Interface.
  2. Go to Monitor > Logs > Remote Syslog Forwarding.
  3. Click Add.
  4. Specify the details for the remote syslog server.
    • Server: The IP address or hostname of the syslog server (Bindplane).
    • Port: The port on which the syslog server is listening for requests (Bindplane).
    • Protocol: Select UDP or TCP (depending on your syslog/Bindplane configuration).
    • Format: Select Syslog.
  5. Click Save.

Configuring the log sources for a remote log server

  1. Select the remote syslog server to send logs to.
  2. Click Sources.
  3. Click Add.
  4. Specify the details for the log source and then click OK.
    • Name: Select WebSEAL.
    • Instance Name: Select the WebSEAL instance.
    • Log file: Name of the source log file.
    • (Optional) Tag: The tag to add to the sent log entries.
    • Facility: All messages will be sent with the specified facility code (The available codes list).
    • Severity: The severity of the sent log entries. All messages will be sent with the specified severity level.
  1. Click Save.

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