Skip to content

Commit 82b8fe6

Browse files
authored
[Filebeat] Add CustomString mapping to CEF for Forcepoint NGFW (elastic#15910)
* Add CustomString mapping to CEF for Forcepoint NGFW Closes elastic#14663
1 parent 77619d6 commit 82b8fe6

File tree

12 files changed

+507
-6
lines changed

12 files changed

+507
-6
lines changed

CHANGELOG.next.asciidoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ https://github.com/elastic/beats/compare/v7.0.0-alpha2...master[Check the HEAD d
107107
- Add dashboard for AWS ELB fileset. {pull}15804[15804]
108108
- Add dashboard for AWS vpcflow fileset. {pull}16007[16007]
109109
- Add ECS tls fields to zeek:smtp,rdp,ssl and aws:s3access,elb {issue}15757[15757] {pull}15935[15936]
110+
- Add custom string mapping to CEF module to support Forcepoint NGFW {issue}14663[14663] {pull}15910[15910]
110111

111112
*Heartbeat*
112113

filebeat/docs/fields.asciidoc

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4655,9 +4655,27 @@ type: keyword
46554655
[[exported-fields-cef-module]]
46564656
== CEF fields
46574657
4658-
Module for receiving CEF logs over Syslog. The module does not add fields beyond what the decode_cef processor provides.
4658+
Module for receiving CEF logs over Syslog. The module adds vendor specific fields in addition to the fields the decode_cef processor provides.
46594659
46604660
4661+
4662+
[float]
4663+
=== forcepoint
4664+
4665+
Fields for Forcepoint Custom String mappings
4666+
4667+
4668+
4669+
*`forcepoint.virus_id`*::
4670+
+
4671+
--
4672+
Virus ID
4673+
4674+
4675+
type: keyword
4676+
4677+
--
4678+
46614679
[[exported-fields-cisco]]
46624680
== Cisco fields
46634681

filebeat/docs/modules/cef.asciidoc

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,27 @@ The UDP port to listen for syslog traffic. Defaults to `9003`
4040

4141
NOTE: Ports below 1024 require Filebeat to run as root.
4242

43+
[float]
44+
==== Forcepoint NGFW Security Management Center
45+
46+
This module will process CEF data from Forcepoint NGFW Security
47+
Management Center (SMC). In the SMC configure the logs to be
48+
forwarded to the address set in `var.syslog_host` in format CEF and
49+
service UDP on `var.syslog_port`. Instructions can be found in
50+
https://support.forcepoint.com/KBArticle?id=000015002[KB 15002] for
51+
configuring the SMC. Testing was done with CEF logs from SMC version
52+
6.6.1 and custom string mappings were taken from 'CEF Connector
53+
Configuration Guide' dated December 5, 2011.
54+
55+
4356
:has-dashboards!:
4457

4558
:fileset_ex!:
4659

4760
:modulename!:
4861

4962

63+
5064
[float]
5165
=== Fields
5266

x-pack/filebeat/module/cef/_meta/docs.asciidoc

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,22 @@ The UDP port to listen for syslog traffic. Defaults to `9003`
3535

3636
NOTE: Ports below 1024 require Filebeat to run as root.
3737

38+
[float]
39+
==== Forcepoint NGFW Security Management Center
40+
41+
This module will process CEF data from Forcepoint NGFW Security
42+
Management Center (SMC). In the SMC configure the logs to be
43+
forwarded to the address set in `var.syslog_host` in format CEF and
44+
service UDP on `var.syslog_port`. Instructions can be found in
45+
https://support.forcepoint.com/KBArticle?id=000015002[KB 15002] for
46+
configuring the SMC. Testing was done with CEF logs from SMC version
47+
6.6.1 and custom string mappings were taken from 'CEF Connector
48+
Configuration Guide' dated December 5, 2011.
49+
50+
3851
:has-dashboards!:
3952

4053
:fileset_ex!:
4154

4255
:modulename!:
56+
Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
- key: cef-module
22
title: CEF
33
description: >
4-
Module for receiving CEF logs over Syslog. The module does not add fields
5-
beyond what the decode_cef processor provides.
4+
Module for receiving CEF logs over Syslog. The module adds vendor
5+
specific fields in addition to the fields the decode_cef processor
6+
provides.
67
fields:

x-pack/filebeat/module/cef/fields.go

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
- name: forcepoint
2+
type: group
3+
default_field: false
4+
description: >
5+
Fields for Forcepoint Custom String mappings
6+
fields:
7+
- name: virus_id
8+
type: keyword
9+
description: >
10+
Virus ID
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
description: Pipeline for Forcepoint CEF
3+
4+
processors:
5+
# cs1 is ruleID
6+
- set:
7+
field: rule.id
8+
value: "{{cef.extensions.deviceCustomString1}}"
9+
if: "ctx.cef?.extensions?.deviceCustomString1 != null"
10+
11+
# cs2 is natRuleID
12+
- set:
13+
field: rule.id
14+
value: "{{cef.extensions.deviceCustomString2}}"
15+
if: "ctx.cef?.extensions?.deviceCustomString2 != null"
16+
17+
# cs3 is VulnerabilityReference
18+
- set:
19+
field: vulnerability.reference
20+
value: "{{cef.extensions.deviceCustomString3}}"
21+
if: "ctx.cef?.extensions?.deviceCustomString3 != null"
22+
23+
# cs4 is virusID
24+
- set:
25+
field: cef.forcepoint.virus_id
26+
value: "{{cef.extensions.deviceCustomString4}}"
27+
if: "ctx.cef?.extensions?.deviceCustomString4 != null"

x-pack/filebeat/module/cef/log/ingest/pipeline.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,9 @@ processors:
4545
field: destination.as.organization_name
4646
target_field: destination.as.organization.name
4747
ignore_missing: true
48-
48+
- pipeline:
49+
name: '{< IngestPipeline "fp-pipeline" >}'
50+
if: "ctx.cef?.device?.vendor == 'FORCEPOINT'"
4951
on_failure:
5052
- set:
5153
field: error.message

x-pack/filebeat/module/cef/log/manifest.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@ var:
1313
- name: input
1414
default: syslog
1515

16-
ingest_pipeline: ingest/pipeline.yml
16+
ingest_pipeline:
17+
- ingest/pipeline.yml
18+
- ingest/fp-pipeline.yml
19+
1720
input: config/input.yml
1821

1922
requires.processors:

0 commit comments

Comments
 (0)