Skip to content

Commit 95f7a34

Browse files
[Imperva] Replace RSA2ELK with Syslog integration for Imperva Securesphere (#8237)
1 parent 7897c77 commit 95f7a34

31 files changed

+2271
-12861
lines changed
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
dependencies:
22
ecs:
3-
reference: "git@v8.10.0"
3+
reference: git@v8.10.0
4+
import_mappings: true
Lines changed: 85 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,92 @@
1-
# Imperva integration
1+
# Imperva
22

3-
This integration is for Imperva device's logs. It includes the following
3+
This integration is for Imperva device logs. It includes the
44
datasets for receiving logs over syslog or read from a file:
55
- `securesphere` dataset: supports Imperva SecureSphere logs.
66

7-
### Securesphere
7+
## Data streams
88

9-
The `securesphere` dataset collects Imperva SecureSphere logs.
9+
The Imperva integration collects one type of data: securesphere.
10+
11+
**Securesphere** consists of alerts, violations, and system events. See more details about [alerts, violations, and events](https://docs.imperva.com/bundle/v14.7-web-application-firewall-user-guide/page/1024.htm)
12+
13+
## Requirements
14+
15+
Elastic Agent must be installed. For more information, refer to the link [here](https://www.elastic.co/guide/en/fleet/current/elastic-agent-installation.html).
16+
17+
### Installing and managing an Elastic Agent:
18+
19+
You have a few options for installing and managing an Elastic Agent:
20+
21+
### Install a Fleet-managed Elastic Agent (recommended):
22+
23+
With this approach, you install Elastic Agent and use Fleet in Kibana to define, configure, and manage your agents in a central location. We recommend using fleet management because it makes the management and upgrade of your agents considerably easier.
24+
25+
### Install Elastic Agent in standalone mode (advanced users):
26+
27+
With this approach, you install Elastic Agent and manually configure the agent locally on the system where it’s installed. You are responsible for managing and upgrading the agents. This approach is reserved for advanced users only.
28+
29+
### Install Elastic Agent in a containerized environment:
30+
31+
You can run Elastic Agent inside a container, either with Fleet Server or standalone. Docker images for all versions of Elastic Agent are available from the Elastic Docker registry, and we provide deployment manifests for running on Kubernetes.
32+
33+
There are some minimum requirements for running Elastic Agent, and for more information, refer to the link [here](https://www.elastic.co/guide/en/fleet/current/elastic-agent-installation.html).
34+
35+
The minimum **kibana.version** required is **8.10.1**.
36+
37+
## Setup
38+
39+
### To collect data from Imperva, follow the required steps:
40+
41+
1. The gateway and management server (MX) should have the relevant connectivity for sending logs using the Syslog server.
42+
43+
2. To send all security violations from the gateway to Elastic:
44+
45+
- Create a custom action set:
46+
47+
- From a 'security violation–all', type and add the gateway security system log > gateway log security event to system log (syslog) using the CEF standard.
48+
- Configure the relevant name and parameters for the action set.
49+
50+
- Assign a followed action to a security - > policy rule.
51+
52+
3. To send all security alerts (aggregated violations) from the gateway to Elastic:
53+
54+
- Create a custom action set:
55+
56+
- From an 'any event type', type and add the server system log > log security event to system log (syslog) using the CEF standard.
57+
- Configure the relevant name and parameters for the action set.
58+
59+
- Assign a followed action to a security - > policy rule.
60+
61+
4. To send all system events from the gateway to Elastic:
62+
63+
- Create a custom action set:
64+
65+
- From an 'any event type', type and add the server system log > log system event to system log (syslog) using the CEF standard.
66+
- Configure the relevant name and parameters for the action set.
67+
68+
- Create system events policy.
69+
- Assign a followed action to a system event policy.
70+
71+
For more information on working with action sets and followed actions, refer to the Imperva relevant [documentation]( https://docs.imperva.com/bundle/v15.0-waf-management-server-manager-user-guide/page/Working_with_Action_Sets_and_Followed_Actions.htm).
72+
73+
### Enabling the integration in Elastic:
74+
75+
1. In Kibana, go to Management > Integrations
76+
2. In the "Search for integrations" search bar, type Imperva.
77+
3. Click on the "Imperva" integration from the search results.
78+
4. Click on the "Add Imperva" button to add the integration.
79+
5. Enable the data collection mode from the following: Filestream, TCP, or UDP.
80+
6. Add all the required configuration parameters, such as paths for the filestream or listen address and listen port for the TCP and UDP.
81+
82+
## Logs Reference
83+
84+
### SecureSphere
85+
86+
This is the `Securesphere` dataset.
87+
88+
#### Example
89+
90+
{{event "securesphere"}}
1091

1192
{{fields "securesphere"}}

packages/imperva/_dev/deploy/docker/docker-compose.yml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,17 @@ services:
77
- ${SERVICE_LOGS_DIR}:/var/log
88
command: /bin/sh -c "cp /sample_logs/* /var/log/"
99
imperva-securesphere-udp:
10-
image: akroh/stream:v0.2.0
10+
image: docker.elastic.co/observability/stream:v0.10.0
1111
volumes:
1212
- ./sample_logs:/sample_logs:ro
13-
entrypoint: /bin/bash
14-
command: -c "/stream log --start-signal=SIGHUP --delay=5s --addr elastic-agent:9531 -p=udp /sample_logs/imperva-securesphere-*.log"
13+
command: log --start-signal=SIGHUP --delay=5s --addr elastic-agent:9507 -p=udp /sample_logs/test-imperva-securesphere.log
1514
imperva-securesphere-tcp:
16-
image: akroh/stream:v0.2.0
15+
image: docker.elastic.co/observability/stream:v0.10.0
1716
volumes:
1817
- ./sample_logs:/sample_logs:ro
19-
entrypoint: /bin/bash
20-
command: -c "/stream log --start-signal=SIGHUP --delay=5s --addr elastic-agent:9531 -p=tcp /sample_logs/imperva-securesphere-*.log"
18+
command: log --start-signal=SIGHUP --delay=5s --addr elastic-agent:9507 -p=tcp /sample_logs/test-imperva-securesphere.log
19+
imperva-securesphere-tls:
20+
image: docker.elastic.co/observability/stream:v0.10.0
21+
volumes:
22+
- ./sample_logs:/sample_logs:ro
23+
command: log --start-signal=SIGHUP --delay=5s --addr elastic-agent:9507 -p=tls --insecure /sample_logs/test-imperva-securesphere.log

0 commit comments

Comments
 (0)