Connect the Elasticsearch data source
to IBM Security QRadar® Suite Software to enable your applications and
dashboards to collect and analyze Elasticsearch
security data. Universal Data Insights connectors enable
federated search across your security products.
Before you begin
Collaborate with an Elastic Stack
administrator who can install and configure security for the Elasticsearch server. You need to set up basic security
for the Elastic Stack. For more information about
setting up basic security for the Elastic Stack,
see Set up basic security for the Elastic Stack
(https://www.elastic.co/guide/en/elasticsearch/reference/current/security-basic-setup.html). If you have a firewall between your cluster and the data source target, use the
IBM® Security Edge Gateway to host the containers. The Edge Gateway must be V1.6 or later. For more information,
see Edge Gateway.
About this task
The IBM Security QRadar Suite Software connector for Elasticsearch is designed to work with Elastic Common Schema 1.7.
Structured Threat Information eXpression (STIX) is a language and
serialization format that organizations use to exchange cyberthreat intelligence. The connector uses STIX patterning to
query Elasticsearch data and returns results as
STIX objects. For more information about how the Elasticsearch data schema maps to STIX, see Elasticsearch
stix-shifter repository
(https://github.com/opencybersecurityalliance/stix-shifter/tree/develop/stix_shifter_modules/elastic_ecs).
Procedure
- Log in to IBM Security QRadar Suite Software.
- From the menu, click
.
- On the Data Sources tab, click
Connect a data source.
- Click Elastic Search (ECS), then click
Next.
- Configure the connection to allow
IBM Security QRadar Suite Software to connect to the data source.
- Configure the connection to the data source.
Table 1. Connection parameters
Parameter |
Description |
Data source name |
Enter a unique name to identify the data source connection. You can create multiple
connections to a data source, so it is useful to clearly set them apart by name. Only
alphanumeric characters and the following special characters are allowed: - .
_
|
Data source description |
Enter a description to indicate the purpose of the data source connection. You can create
multiple connections to a data source, so it is useful to clearly indicate the purpose of each
connection by description. Only alphanumeric characters and the following special characters are
allowed: - . _
|
Edge gateway |
If you have a firewall between your cluster and the data source target, use the Edge Gateway to host the containers. In the
Edge gateway field, specify an Edge Gateway to host the connector. It can take up to
five minutes for the status of newly deployed data source connections on the Edge Gateway to show as being connected.
|
Management IP address or Hostname |
Enter the hostname or IP address of the data source so that the QRadar Suite Software can communicate with it. |
Host port |
Enter the port number that is associated with the data source host. The port is 443 by
default. |
Indices (Optional) |
To search specific Elasticsearch indices,
set a single index or multiple indices in a comma-separated list in the Indices
(Optional) field. For example: index1,index2. To search all
indices, leave the text box empty. |
- Set the query parameters to control the behavior of the
federated search query on the data source.
Table 2. Query parameters
Query parameter |
Description |
Concurrent search limit |
Enter the number of simultaneous connections that can be made to the data source. The default
limit for the number of connections is 4. The value must not be less than 1 and must not be greater
than 100. |
Query search timeout limit |
Enter the time limit in minutes for how long the query is run on the data source. The default
time limit is 30. When the value is set to zero, no timeout occurs. The value must not be less than
1 and must not be greater than 120. |
Result size limit |
Enter the maximum number of entries or objects that are returned by search query. The default
result size limit is 10,000. The value must not be less than 1 and must not be greater than
500,000. |
Query time range |
Enter the time range in minutes for the search, represented as the last X
minutes. The default is 5 minutes. The value must not be less than 1 and must not be greater than
10,000. |
Custom mapping (Optional) |
If you need to customize the STIX attributes mapping, click
Customize attribute mapping and edit the JSON blob to map new or existing
properties to their associated target data source fields. |
Important: If you increase the Concurrent search limit and the
Result size limit, a greater amount of data can be sent to the data source,
which increases the strain on the data source. Increasing the query time range also increases the
amount of data.
- Optional: If you configured Elasticsearch with a CA certificate, add the
certificate.
- To confirm that you have a self-signed certificate, you can search the web for
ssl
decode
, then copy and paste the certification into a Certificate Decoder. If the
Common Name shows localhost.localdomain
, then it is a self-signed certificate.
Otherwise, it is a signed CA certificate.
- If the value of your hostname or IP address does not match the common name value in
your certificate, add the hostname to the server that hosts the Edge Gateway.
Table 3. Adding your hostname to the Edge Gateway server
If you are running the Edge client |
If you are not running the Edge client |
Run the following
command:manageAppHost dns --set --ip <ip_address> --hostname <hostname1> --hostname <hostname2>
Tip: The <ip_address> is the address of the server that you want to
access, and <hostname> is the name of the server. If a server has multiple
names, you can add each name by using --hostname . You can use
--show to see the defined hostnames and --clear to remove a
hostname previously set with the manageAppHost command.
|
Add the hostname to the server that hosts the Edge Gateway by adding entries to Pod
/etc/hosts with HostAliases. To edit the Universal Data Insights worker deployment, run the following
command:oc edit deployment udi-udiworker
Add the following information to
the host deployment HostAliases, in the spec.template.spec
section: hostAliases:
- hostnames:
- qradar.iseccs.local
ip: <1.2.3.4>
For more information, see Adding entries to Pod /etc/hosts with HostAliases
(https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/).
|
- Copy the certificate details and paste it in the space that is
provided.
- Click Add a
configuration.
- Configure identity and access.
Table 4. Configuration parameters
Parameter |
Description |
Configuration Name |
Enter a unique name to describe the access configuration and distinguish it from the other
access configurations for this data source connection that you might set up. Only alphanumeric
characters and the following special characters are allowed: - . _ |
Configuration Description |
Enter a unique description to describe the access configuration and distinguish it from the
other access configurations for this data source connection that you might set up. Only alphanumeric
characters and the following special characters are allowed: - . _ |
Username |
Establish authentication to access the Elasticsearch API. To establish the connection with
basic authentication, enter a Username and
Password.
|
Password |
Access Token (Token Based Access) |
Establish authentication to access the Elasticsearch API. To establish the connection with
token-based authentication, enter an Access Token (Token Based
Access).
|
API Key (Key Based Access) |
Establish authentication to access the Elasticsearch API. To establish the connection with API
Key authentication, enter an API Key (Key Based Access) and ID
(Key Based Access).
|
ID (Key Based Access) |
- Click Add.
- To save your configuration and establish the connection, click
Done.
- To edit your configurations, complete the following steps:
- On the Data Sources tab, select the data source connection that
you want to edit.
- In the Configurations section, click Edit
Configuration (
).
- Edit the identity and access parameters and click
Save.
Results
You can see the data source connection configuration
that you added under Connections > Data Sources page.
Tip: After the data source is connected, it takes some time for the initial data
retrieval based on the frequency that is specified in the Frequency
parameter. During this time, the data source appears as unavailable. After the data retrieval is
complete, the data source shows as connected. To maintain the connection status, a polling mechanism
is initiated to verify the connection periodically.
What to do next
Test the connection by searching for an IP address in IBM Security Data Explorer that matches an asset data source. In
Data Explorer, click an IP address to view
its associated assets and risk.
To use Data Explorer,
you must have data sources that are connected so that the application can run queries and retrieve
results across a unified set of data sources. The search results vary depending on the data that is
contained in your configured data sources. For more information about how to build a query in
Data Explorer, see Build a query.