Google Threat Intelligence (Beta)
Enrich incoming events with the Google Threat Intelligence IoC Stream
Overview
Google Threat Intelligence enrichment is in open beta starting with Panther version 1.123, and is available to all customers. Please share any bug reports and feature requests with your Panther support team.
Google Threat Intelligence provides comprehensive threat intelligence data. This integration uses the Google Threat Intelligence IoC Stream API to ingest a near real-time feed of Indicators of Compromise (IoCs) from the Google Threat Intelligence collections you follow, and matches them against log events ingested into Panther for high-fidelity alerts.
Google Threat Intelligence enrichment in Panther requires a Premium API key and active IoC stream subscriptions in your Google Threat Intelligence account.
IoC streams are tied to a Google Threat Intelligence user: you only receive IoCs from collections that the user who owns the API key is following. Make sure the API key you provide to Panther belongs to the same Google Threat Intelligence user that subscribed to the collections you want to ingest.
How Google Threat Intelligence enrichment works in Panther
By default, Google Threat Intelligence is configured to run against every log source in your Panther environment (yet is possible to disable for a log type, if desired). Panther will attempt to match each incoming log event, across all log types, against the Google Threat Intelligence Panther-managed enrichment before it passes through the detection engine.
If Panther identifies a match between an incoming event and Google Threat Intelligence entry, Google Threat Intelligence data is appended to the matching log event under a top-level p_enrichment key. It can then be referenced in detection logic and searches.
Panther pulls new IoCs from your subscribed Google Threat Intelligence collections every hour. Each pull fetches only the IoCs added to the stream since the last successful run, and previously pulled IoCs are retained in the lookup table (deduplicated by the IoC id). IoCs older than the configured maximum age are automatically filtered out on each refresh.
For more information on detection writing using an enrichment source, see Writing a detection using custom enrichment data.
How a match between a log event and Google Threat Intelligence is made
A log event is enriched with Google Threat Intelligence Panther-managed enrichment data (under p_enrichment) if a match is found between:
Any of the values of the Selector field(s) configured for each associated log type.
For each log type, the default Selectors are the Indicator Fields (represented by
p_any_*) associated with the enrichment table's primary key's indicator field designations (though the Selectors are configurable). Learn more about this auto-mapping here.
The value of the
matchkey in a Google Threat Intelligence table entry in Panther.matchis the primary key of the Google Threat Intelligence table and contains the indicator value (IP address, domain, file hash, URL, etc.).See an example of
matchin the Example Google Threat Intelligence table entry below.
Setting up Google Threat Intelligence enrichment
Step 1: Configure Google Threat Intelligence IoC collections
Before setting up Google Threat Intelligence enrichment in Panther, you must configure IoC stream subscriptions in your Google Threat Intelligence account so that Panther can pull threat intelligence data.
Log in to Google Threat Intelligence.
Navigate to the IoC Collections section in your dashboard.

Find the collection(s) you are interested in and click on them.

For each collection you want to monitor:
Click Follow.
Enable the toggle to get new IoCs in your stream.
Click Save preferences.

Repeat for all collections you want to subscribe to.
For detailed guidance on IoC streams, see the Google Threat Intelligence IoC Stream Guide.
Step 2: Create the Google Threat Intelligence enrichment in Panther
To configure Google Threat Intelligence enrichment in Panther:
In the left-hand navigation bar of your Panther Console, click Configure > Enrichments.
In the upper-right corner, click Create New.
Click Google Threat Intelligence.

On the Configuration tab, in the Settings form, provide values for the following fields:
Enrichment Name: Enter a descriptive name for your integration.
API Token: Enter your Google Threat Intelligence API key.
Indicator TTL (Days): Configure the maximum age in days for IoCs to retain in the enrichment table. IoCs older than this cutoff are automatically filtered out during each refresh and are permanently removed.

Click Setup.
On the Verification tab, confirm the integration was created successfully, then click View Enrichments.
Your new Google Threat Intelligence configuration will be visible in the Configure > Enrichments page.

After adding a Google Threat Intelligence enrichment, there may be a delay (a few minutes) before incoming log data begins to be enriched. This allows time for the initial data synchronization to complete.
Enabling, disabling, or modifying Google Threat Intelligence enrichment for a log type
Google Threat Intelligence enrichment is enabled by default for each log type in your Panther instance.
If you'd like to disable (or later enable) Google Threat Intelligence enrichment for a certain log type, or alter a log type's selectors:
In the left-hand navigation bar in your Panther Console, click Configure > Enrichments.
In the list of Enrichments, locate the Google Threat Intelligence source you'd like to modify, and click its name.
Click on the Enriched Log Types tab.
On the right-hand side, click Edit Log Types.
If you'd like to enable this enrichment for a new log type, click Add Log Type.
In the new row that populates, select a Log Type and, in the Selectors field, at least one event field.
If you'd like to disable this enrichment for a log type, locate that log type's row, and click the trash icon.
If you don't see a log type listed, click on the drop-down arrow next to Auto-mapped Log Types. Locate the log type's row and click the edit icon.
If you'd like to alter the selectors for a log type, click into the Selectors field and add or remove selections for event fields.
In the upper-right corner, click Save.
Example Google Threat Intelligence enrichment table entry
The below is an example of a Google Threat Intelligence IoC entry normalized by Panther. Each IoC from a subscribed collection creates its own row, with the indicator value stored in the match field.
GTI.IoCStream schema
GTI.IoCStream schemaThe following is the Panther-managed GTI.IoCStream schema, representing how Google Threat Intelligence IoC data is stored in Panther. Each indicator from a subscribed collection becomes its own row.
Example of using Google Threat Intelligence data in detections
Google Threat Intelligence enrichment data can be used in detection logic to identify known threats. The following example checks whether an event matched a Google Threat Intelligence indicator and whether it was flagged as malicious:
Troubleshooting Google Threat Intelligence enrichment
Common issues
No data being pulled: Ensure you have active IoC collection subscriptions in your Google Threat Intelligence account. You must follow and enable at least one collection for Panther to receive data. Also confirm the API key configured in Panther belongs to the same Google Threat Intelligence user that subscribed to those collections — IoC streams are scoped per user, so a key from a different user will return an empty stream.
API key issues: Verify your Google Threat Intelligence API key is valid, is a Premium API key, and has the appropriate permissions for IoC stream access.
Data freshness: Check your Indicator TTL (Days) setting to ensure it's appropriate for your use case. IoCs older than this threshold are automatically filtered out.
For additional troubleshooting, visit the Panther Knowledge Base to view articles about enrichment that answer frequently asked questions and help you resolve common errors and issues.
Last updated
Was this helpful?

