|
| 1 | +# GreyNoise |
| 2 | + |
| 3 | +## Overview |
| 4 | + |
| 5 | +[GreyNoise](https://www.greynoise.io/) is a cybersecurity platform that helps security teams filter out "internet noise" — background internet scanning activity that's not necessarily targeted or malicious. It collects, analyzes, and labels massive amounts of data from internet-wide scans, typically originating from bots, security researchers, or compromised systems. |
| 6 | + |
| 7 | +## Prerequisites for GreyNoise |
| 8 | + |
| 9 | +Customers must have access to the **Enterprise API** to fetch data from GreyNoise. You can verify your API key access [here](https://viz.greynoise.io/account/api-key). |
| 10 | + |
| 11 | +## Requirements |
| 12 | + |
| 13 | +Elastic Agent must be installed. For more details, check the Elastic Agent [installation instructions](docs-content://reference/fleet/install-elastic-agents.md). |
| 14 | + |
| 15 | +## Setup |
| 16 | + |
| 17 | +### To Collect Logs Through REST API |
| 18 | + |
| 19 | +1. After logging in to GreyNoise, navigate to your [account page](https://viz.greynoise.io/account/api-key). |
| 20 | +2. Click "View API Key" to display and copy your unique API key. |
| 21 | + |
| 22 | +### Enabling the Integration in Elastic |
| 23 | + |
| 24 | +1. In Kibana, go to **Management > Integrations**. |
| 25 | +2. In the "Search for integrations" search bar, type **GreyNoise**. |
| 26 | +3. Click the **GreyNoise** integration from the search results. |
| 27 | +4. Click the **Add GreyNoise** button to add the integration. |
| 28 | +5. While adding the integration, provide the following details to collect logs via REST API: |
| 29 | + - API Key |
| 30 | + - Interval |
| 31 | + - (Optional) Query for custom query filtering |
| 32 | +6. Click **Save and Continue** to save the integration. |
| 33 | + |
| 34 | +**Note:** The "last_seen" field should not be included in the query as it is predefined with a fixed value of "1d". |
| 35 | + |
| 36 | +## Transforming Data for Up-to-Date Insights |
| 37 | + |
| 38 | +To keep the collected data up to date, **Transforms** are used. |
| 39 | + |
| 40 | +You can view transforms by navigating to **Management > Stack Management > Transforms**. |
| 41 | + |
| 42 | +Here, you can see continuously running transforms and view the latest transformed GreyNoise data in the **Discover** section. |
| 43 | + |
| 44 | +The `labels.is_transform_source` field indicates log origin: |
| 45 | +- **False** for transformed index |
| 46 | +- **True** for source index |
| 47 | + |
| 48 | +Currently, one transform is running for the IP datastream: |
| 49 | + |
| 50 | +| Transform Name | Description | |
| 51 | +|----------------|-------------| |
| 52 | +| IP Transform (ID: `logs-ti_greynoise.ip`) | Keeps IP entity type data up to date | |
| 53 | + |
| 54 | +For example: |
| 55 | +- The query `event.module: ti_greynoise and labels.is_transform_source: true` shows logs from the **source index** |
| 56 | +- The query `event.module: ti_greynoise and labels.is_transform_source: false` shows logs from the **transformed index** |
| 57 | + |
| 58 | +A **retention policy** removes data older than the default retention period. For more details, refer to the [Retention Policy Documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/put-transform.html#:~:text=to%20false.-,retention_policy,-(Optional%2C%20object)%20Defines). |
| 59 | + |
| 60 | +In this integration, the IP data stream has a default **retention period of 7 days**. |
| 61 | + |
| 62 | +## Troubleshooting |
| 63 | + |
| 64 | +1. If you experience latency issues during data collection, consider increasing the `HTTP Client Timeout` configuration parameter. |
| 65 | +2. If server-side errors occur, consider reducing the `Page Size` configuration parameter. |
| 66 | + **Note:** Avoid setting the `Page Size` too low, as this may increase the number of API requests, potentially causing processing issues. |
| 67 | +3. If events are not appearing in the transformed index, check if transforms are running without errors. For issues, refer to [Troubleshooting transforms](https://www.elastic.co/guide/en/elasticsearch/reference/current/transform-troubleshooting.html). |
| 68 | + |
| 69 | +## Logs Reference |
| 70 | + |
| 71 | +### IP |
| 72 | + |
| 73 | +This is the `IP` dataset. It uses the [GNQL Endpoint](https://docs.greynoise.io/reference/gnqlquery-1) to fetch data from GreyNoise with "last_seen:1d". It uses version v3 of the API to collect indicators. Currently, the [Triage](https://docs.greynoise.io/docs/intelligence-module-triage) and [Business Services](https://docs.greynoise.io/docs/intelligence-module-business-services) Intelligence Modules are being collected through this data stream. |
| 74 | + |
| 75 | +#### Example |
| 76 | + |
| 77 | +{{event "ip"}} |
| 78 | + |
| 79 | +{{fields "ip"}} |
0 commit comments