Symantec Endpoint Pipeline POC Usage
This is a pipeline to process Symantec Endpoint Protection logs. It expects a syslog header. The format of the events it expects is:
<51>Dec 8 11:08:30 devhost SymantecServer: server02,Event Description: Portscan,Local Host IP: 192.168.50.2,Local Host MAC: 000000000000,Remote Host Name: ,Remote Host IP: 192.168.50.3,Remote Host MAC: 000000000000,Inbound,TCP,Intrusion ID: 0,Begin: 2020-12-08 09:08:01,End Time: 2020-12-08 09:08:01,Occurrences: 1,Application: ,Location: Office,User Name: johndoe,Domain Name: local,Local Port: 0,Remote Port: 0,CIDS Signature ID: 10000,CIDS Signature string: Portscan,CIDS Signature SubID: 0,Intrusion URL: ,Intrusion Payload URL: ,SHA-256: ,MD-5:
Elasticsearch Setup
- Install the pipeline definition to Elasticsearch using Kibana Dev Tools Console or use
curl
.
ORPUT _ingest/pipeline/symantec-endpoint { /* JSON pipeline content */ }
curl -XPUT "https://es:9200/_ingest/pipeline/symantec-endpoint" -H 'Content-Type: application/json' -d@symantec-endpoint-pipeline.json
Filebeat Setup
-
Add a log file input to the filebeat.yml. The
udp
input could be used alternatively.filebeat.inputs: - type: log paths: - /var/log/symantec-endpoint*.log tags: [symantec-endpoint, forwarded] pipeline: symantec-endpoint
-
Restart Filebeat.
Hi there,
I noted that the version I am using of Symantec (Version 14 (14.3 MP1) build 1148 (14.3.1148.0100)) can have different keys for different Logs and that the order is not always guaranteed to be the same. To cope with this fact I took your pipeline and instead of using the csv processor (which relies on the ordering) I used a combination of split and kv. So I can use labels to refer to the different fields, e.g., Occurrencies: 1 becomes
ctx._csv.Occurrencies
and so on. What is particularly tricky, is the presence of fields without a key. In this case I iterate over the "unparsed" entries and search for the string I need (e.g., Inbound, Outbound fornetwork.direction
and TCP, UDP fornetwork.transport
. I share my modification, in the hope to be useful for the community.Kind regards,
Mirko