SlideShare a Scribd company logo
1 of 58
https://digitalis.io
info@digitalis.io
Security Information and
Event Management with Kafka,
Kafka Connect, KSQL and Logstash
https://digitalis.io
2
Jason Bell
ABOUT
Working with Kafka since 2014, in
development, support and now DevOps.
Author of Machine Learning: Hands on
for Developers and Technical
Professionals, published by Wiley.
Kafka DevOps Engineer
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
What is SIEM?
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
SIEM adoption originally driven from Payment Card
Industry Data Security Standard (PCI DSS).
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Data can come from various sources such as
firewalls, anti-virus, login information and intrusion
prevention systems.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
For example: A user does 20 failed login attempts.
Has the user actually forgotten? Let’s class this as
a low priority event. The user may have just
forgotten their password and retried.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
A user does 140 failed login attempts in five
minutes. This is more than likely a brute force
attack and needs investigating.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Enterprise SIEM Problems
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Enterprise SIEM Problems
● Large Volumes of Data.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Enterprise SIEM Problems
● Large Volumes of Data.
● Variety of log formats - RFC5424, RFC3164, Windows Events and other
bespoke log formats from network devices.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Enterprise SIEM Problems
● Large Volumes of Data.
● Variety of log formats - RFC5424, RFC3164, Windows Events and other
bespoke log formats from network devices.
● Regulatory compliance.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
“Virtually every regulatory compliance regime or
standard such as GDPR, ISO 27001, PCI DSS,
HIPAA, FERPA, Sarbanes-Oxley (SOX), FISMA,
and SOC 2 have some requirements of log
management to preserve audit trails of activity that
addresses the CIA (Confidentiality, Integrity, and
Availability) triad.”
https://digitalis.io/blog/kafka/apache-kafka-and-regulatory-compliance/
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Enterprise SIEM Problems
● Large Volumes of Data.
● Variety of log formats - RFC5424, RFC3164, Windows Events and other
bespoke log formats from network devices.
● Regulatory compliance.
● High Availability Requirements
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Enterprise SIEM Problems
● Large Volumes of Data.
● Variety of log formats - RFC5424, RFC3164, Windows Events and other
bespoke log formats from network devices.
● Regulatory compliance.
● High Availability Requirements
● Downstream sometimes cannot keep up at peak times – 9am, DDoS events
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Enterprise SIEM Problems
● Large Volumes of Data.
● Variety of log formats - RFC5424, RFC3164, Windows Events and other
bespoke log formats from network devices.
● Regulatory compliance.
● High Availability Requirements
● Downstream sometimes cannot keep up at peak times – 9am, DDoS events
● Multiple consumers of data and connectivity to them
○ routing, transforming, filtering
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Why use Kafka?
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Why Kafka?
● High Availability
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Why Kafka?
● High Availability
● Scalable
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Why Kafka?
● High Availability
● Scalable
● High Throughput
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Why Kafka?
● High Availability
● Scalable
● High Throughput
● Rich Ecosystem
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Why Kafka?
● High Availability
● Scalable
● High Throughput
● Rich Ecosystem
● ksqlDB for Implementing Logic for Routing/Filtering/Transforming
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Why Kafka?
● High Availability
● Scalable
● High Throughput
● Rich Ecosystem
● ksqlDB for Implementing Logic for Routing/Filtering/Transforming
● Buffering of data during high peak volumes – a shock absorber.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Kafka SIEM Architecture
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Data Flows and Components
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Topic and Outbound Data Flows
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Data Ingestion
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Data Ingestion
● Non-repudiation - fingerprinting source logs
● Transformation to JSON
● Non-standard syslog formats - bespoke grokking
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Logstash - Input
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
TODO: Insert Logstash In->Filter-Out diagram
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Logstash Input – All Types input {
udp {
host => "0.0.0.0"
port => 5140
type => rfc5424
tags => ["rfc5424"]
}
tcp {
host => "0.0.0.0"
port => 5140
type => rfc5424
tags => ["rfc5424"]
}
syslog {
port => 5150
type => rfc3164
tags => ["rfc3164"]
}
}
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Logstash - Filtering
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Logstash Filter – RFC3164
filter {
if [type] == "rfc3164" {
# rename and remove fields
mutate {
remove_field => [ "@version", "@timestamp" ]
rename => { "host" => "client_addr" }
rename => { "logsource" => "host" }
rename => { "severity_label" => "severity" }
rename => { "facility_label" => "facility" }
}
}
}
}
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Logstash Filter – RFC5424
filter {
if [type] == "rfc5424" {
# parse RFC5424 log
grok {
patterns_dir => "/etc/logstash/patterns"
match => [ "message", "%{SYSLOG}" ]
tag_on_failure => [ "_grokparsefailure_syslog" ]
}
# rename fields and remove unneeded ones
mutate {
rename => { "syslog_facility" => "facility" }
rename => { "syslog_severity" => "severity" }
# message_syslog contains message content +
extra data
replace => { "message" => "%{message_syslog}" }
remove_field => [ "@version", "facility_label",
"@timestamp", "message_content", "message_syslog" ]
rename => { "program" => "ident" }
rename => { "timestamp_source" => "timestamp"}
rename => { "host" => "client_addr" }
rename => { "host_source" => "host" }
}
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Logstash Filter – RFC JSON
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
{
"host":“testhost",
"ident":"info",
"message":"01070417:6: AUDIT - user admin - RAW: httpd(pam_audit): User=admin tty=(unknown) host=10.234.254.90 failed to login after 1 attempt….",
"priority":"info",
"facility":"local0",
"client_addr":"10.234.254.90",
"bucket":"2019042913",
"evt_id":"33a3a040-6a7f-11e9-a8be-0050568115fd",
"extradata":"[ ]",
"fingerprint ":"73dd765f55a1791b667bd6160235e3f6 ",
"rawdata ":"..... ",
"pid":"-",
"msgid":"-",
"timestamp":"2019-04-29T14:03:37.000000Z"
}
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Logstash - Output
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
output {
if "syslog_rfc5424" in [tags] {
kafka {
codec => json
topic_id => "syslog_rfc5424"
bootstrap_servers => "{{ confluent_ksql_bootstrap_servers }}"
security_protocol => SSL
ssl_key_password => "{{ logstash_ssl_key_password }}"
ssl_keystore_location => "/etc/logstash/logstash.keystore.jks"
ssl_keystore_password => "{{ logstash_ssl_keystore_password }}"
ssl_truststore_location => "/etc/logstash/logstash.truststore.jks"
ssl_truststore_password => "{{ logstash_ssl_truststore_password }}"
compression_type => "snappy"
acks => "1"
retries => "3"
retry_backoff_ms => "500"
request_timeout_ms => "2000"
batch_size => "32768"
ssl_endpoint_identification_algorithm => "https"
ssl_keystore_type => jks
}
}
}
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Topic Filtering and Routing
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Filter / Routing
● Some downstream systems are not interested in INFO -
too much data
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Filter / Routing
● Some downstream systems are not interested in INFO -
too much data
● Some are only interested in Windows events for
example.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
create stream syslog_rfc3164 (client_addr varchar, host varchar, timestamp varchar, severity varchar,
message varchar, facility varchar, type varchar, priority varchar) with (KAFKA_TOPIC='syslog_rfc3164',
VALUE_FORMAT='JSON’);
create stream auth_rfc3164 with (KAFKA_TOPIC='syslog_auth', VALUE_FORMAT='JSON') AS SELECT * FROM
syslog_rfc3164 WHERE message LIKE '%password check failed for user%' OR message LIKE '%An account
failed to log on.%' OR message LIKE '%%0xC000006D’;
create stream syslog_rfc5424 (facility varchar, message varchar, pid varchar, type varchar, timestamp
varchar, ident varchar, client_addr varchar, host varchar, msgid varchar, extradata varchar, priority
varchar) with (KAFKA_TOPIC='syslog_rfc5424', VALUE_FORMAT='JSON’);
create stream auth_rfc5424 with (KAFKA_TOPIC='syslog_auth', VALUE_FORMAT='JSON') AS SELECT * FROM
syslog_rfc5424 WHERE message LIKE '%password check failed%' OR extradata LIKE '%|309|%' OR message
LIKE '%An account failed to log on.%' OR message LIKE '%%0xC000006D';
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Destinations and Sinks
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Destinations and Sink
● Use existing connectors
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Destinations and Sink
● Use existing connectors
● Build your own connectors
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Splunk HTTP Sink in
Kafka Connect
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
{
"name": "syslog-sink-splunk",
"config": {
"connector.class": "SplunkHECSinkConnector",
"tasks.max": "{{ tasks_max }}",
"topics": "{{ topics }}",
"splunk.endpoint.uri": "{{ splunk_endpoint_uri }}",
"splunk.hec.token": "{{ splunk_hec_token }}",
"splunk.index": "{{ splunk_index }}",
"splunk.channelid": "{{ splunk_channelid }}",
"splunk.sourcetype": "{{ splunk_sourcetype }}",
"splunk.http.loglevel": "{{ splunk_http_loglevel }}",
"value.converter": "org.apache.kafka.connect.json.JsonConverter",
"value.converter.schemas.enable": "{{ splunk_value_converter_schemas_enable }}",
"errors.tolerance": "{{ splunk_errors_tolerance }}",
"errors.deadletterqueue.topic.name":"{{ errors_deadletterqueue_topic_name }}",
"errors.deadletterqueue.topic.replication.factor": "{{ errors_deadletterqueue_topic_replication_factor }}"
}
}
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Testing
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Testing
● Process 3TB/day data volumes.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Testing
● Process 3TB/day data volumes.
● Prove the solution can scale horizontally.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Testing: Process 2.3TB/day data volumes.
● 3TB/day = 33MB/second
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
• 400 threads were set up in the Thread Group to simulate
400 servers sending the logs.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
• 6 load injectors were setup, totalling 2400 threads
(simulated servers), in order to generate between
20MB/second to 40 MB/second load against the endpoint
from the injectors.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
• The load was injected over 5 days period at a sustained
rate to ascertain the performance characteristics of each
component over a prolonged duration.
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Testing
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Carry on the conversation:
• Website: https://digitalis.io
• Reddit: https://reddit.com/users/digitalis_io
• Twitter: @digitalis_io
©2020 digitalis.io Ltd. Do not distribute without
consent.
https://digitalis.io
Any Questions?

More Related Content

What's hot

Financial Event Sourcing at Enterprise Scale
Financial Event Sourcing at Enterprise ScaleFinancial Event Sourcing at Enterprise Scale
Financial Event Sourcing at Enterprise Scaleconfluent
 
Lead confluent HQ Dec 2019
Lead   confluent HQ Dec 2019Lead   confluent HQ Dec 2019
Lead confluent HQ Dec 2019Sabri Skhiri
 
Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...
Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...
Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...Natan Silnitsky
 
Modernizing your Application Architecture with Microservices
Modernizing your Application Architecture with MicroservicesModernizing your Application Architecture with Microservices
Modernizing your Application Architecture with Microservicesconfluent
 
How Apache Kafka helps to create Data Culture – How to Cross the Kafka Chasm
How Apache Kafka helps to create Data Culture – How to Cross the Kafka ChasmHow Apache Kafka helps to create Data Culture – How to Cross the Kafka Chasm
How Apache Kafka helps to create Data Culture – How to Cross the Kafka Chasmconfluent
 
Apache Kafka® Use Cases for Financial Services
Apache Kafka® Use Cases for Financial ServicesApache Kafka® Use Cases for Financial Services
Apache Kafka® Use Cases for Financial Servicesconfluent
 
Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...
Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...
Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...confluent
 
batbern43 Events - Lessons learnt building an Enterprise Data Bus
batbern43 Events - Lessons learnt building an Enterprise Data Busbatbern43 Events - Lessons learnt building an Enterprise Data Bus
batbern43 Events - Lessons learnt building an Enterprise Data BusBATbern
 
Apache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR ModernizationApache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR ModernizationKai Wähner
 
Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...
Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...
Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...HostedbyConfluent
 
Check Out our Rich Python Portfolio: Leaders in Python & Django‎
Check Out our Rich Python Portfolio: Leaders in Python & Django‎Check Out our Rich Python Portfolio: Leaders in Python & Django‎
Check Out our Rich Python Portfolio: Leaders in Python & Django‎Zealous System
 
Python Automation With Gauge + Selenium + API + Jenkins
Python Automation With Gauge + Selenium + API + JenkinsPython Automation With Gauge + Selenium + API + Jenkins
Python Automation With Gauge + Selenium + API + JenkinsFagun Priyadarshi
 
Application Modernization Using Event Streaming Architecture (David Wadden, V...
Application Modernization Using Event Streaming Architecture (David Wadden, V...Application Modernization Using Event Streaming Architecture (David Wadden, V...
Application Modernization Using Event Streaming Architecture (David Wadden, V...HostedbyConfluent
 
Confluent Messaging Modernization Forum
Confluent Messaging Modernization ForumConfluent Messaging Modernization Forum
Confluent Messaging Modernization Forumconfluent
 
Pivoting event streaming, from PROJECTS to a PLATFORM
Pivoting event streaming, from PROJECTS to a PLATFORMPivoting event streaming, from PROJECTS to a PLATFORM
Pivoting event streaming, from PROJECTS to a PLATFORMconfluent
 
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...confluent
 
Digital Transformation Mindset - More Than Just Technology
Digital Transformation Mindset - More Than Just TechnologyDigital Transformation Mindset - More Than Just Technology
Digital Transformation Mindset - More Than Just Technologyconfluent
 
Battle Tested Event-Driven Patterns for your Microservices Architecture
Battle Tested Event-Driven Patterns for your Microservices ArchitectureBattle Tested Event-Driven Patterns for your Microservices Architecture
Battle Tested Event-Driven Patterns for your Microservices ArchitectureNatan Silnitsky
 
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...HostedbyConfluent
 
Generali connection platform_full
Generali connection platform_fullGenerali connection platform_full
Generali connection platform_fullconfluent
 

What's hot (20)

Financial Event Sourcing at Enterprise Scale
Financial Event Sourcing at Enterprise ScaleFinancial Event Sourcing at Enterprise Scale
Financial Event Sourcing at Enterprise Scale
 
Lead confluent HQ Dec 2019
Lead   confluent HQ Dec 2019Lead   confluent HQ Dec 2019
Lead confluent HQ Dec 2019
 
Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...
Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...
Battle Tested Event-Driven Patterns for your Microservices Architecture - Dev...
 
Modernizing your Application Architecture with Microservices
Modernizing your Application Architecture with MicroservicesModernizing your Application Architecture with Microservices
Modernizing your Application Architecture with Microservices
 
How Apache Kafka helps to create Data Culture – How to Cross the Kafka Chasm
How Apache Kafka helps to create Data Culture – How to Cross the Kafka ChasmHow Apache Kafka helps to create Data Culture – How to Cross the Kafka Chasm
How Apache Kafka helps to create Data Culture – How to Cross the Kafka Chasm
 
Apache Kafka® Use Cases for Financial Services
Apache Kafka® Use Cases for Financial ServicesApache Kafka® Use Cases for Financial Services
Apache Kafka® Use Cases for Financial Services
 
Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...
Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...
Driving Business Transformation with Real-Time Analytics Using Apache Kafka a...
 
batbern43 Events - Lessons learnt building an Enterprise Data Bus
batbern43 Events - Lessons learnt building an Enterprise Data Busbatbern43 Events - Lessons learnt building an Enterprise Data Bus
batbern43 Events - Lessons learnt building an Enterprise Data Bus
 
Apache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR ModernizationApache Kafka for Cybersecurity and SIEM / SOAR Modernization
Apache Kafka for Cybersecurity and SIEM / SOAR Modernization
 
Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...
Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...
Risk Management in Retail with Stream Processing (Daniel Jagielski, Virtuslab...
 
Check Out our Rich Python Portfolio: Leaders in Python & Django‎
Check Out our Rich Python Portfolio: Leaders in Python & Django‎Check Out our Rich Python Portfolio: Leaders in Python & Django‎
Check Out our Rich Python Portfolio: Leaders in Python & Django‎
 
Python Automation With Gauge + Selenium + API + Jenkins
Python Automation With Gauge + Selenium + API + JenkinsPython Automation With Gauge + Selenium + API + Jenkins
Python Automation With Gauge + Selenium + API + Jenkins
 
Application Modernization Using Event Streaming Architecture (David Wadden, V...
Application Modernization Using Event Streaming Architecture (David Wadden, V...Application Modernization Using Event Streaming Architecture (David Wadden, V...
Application Modernization Using Event Streaming Architecture (David Wadden, V...
 
Confluent Messaging Modernization Forum
Confluent Messaging Modernization ForumConfluent Messaging Modernization Forum
Confluent Messaging Modernization Forum
 
Pivoting event streaming, from PROJECTS to a PLATFORM
Pivoting event streaming, from PROJECTS to a PLATFORMPivoting event streaming, from PROJECTS to a PLATFORM
Pivoting event streaming, from PROJECTS to a PLATFORM
 
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
 
Digital Transformation Mindset - More Than Just Technology
Digital Transformation Mindset - More Than Just TechnologyDigital Transformation Mindset - More Than Just Technology
Digital Transformation Mindset - More Than Just Technology
 
Battle Tested Event-Driven Patterns for your Microservices Architecture
Battle Tested Event-Driven Patterns for your Microservices ArchitectureBattle Tested Event-Driven Patterns for your Microservices Architecture
Battle Tested Event-Driven Patterns for your Microservices Architecture
 
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
Data Mess to Data Mesh | Jay Kreps, CEO, Confluent | Kafka Summit Americas 20...
 
Generali connection platform_full
Generali connection platform_fullGenerali connection platform_full
Generali connection platform_full
 

Similar to Security Information and Event Management with Kafka, Kafka Connect, KSQL and Logstash

Ivanti for msp
Ivanti for mspIvanti for msp
Ivanti for mspIvanti
 
Log Analytics for Distributed Microservices
Log Analytics for Distributed MicroservicesLog Analytics for Distributed Microservices
Log Analytics for Distributed MicroservicesKai Wähner
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Codemotion
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Codemotion
 
Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?
Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?
Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?michaelbasoah
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningCisco DevNet
 
TENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBE
TENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBETENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBE
TENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBECristian Garcia G.
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Cisco DevNet
 
Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...
Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...
Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...NETWAYS
 
Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...
Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...
Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...Amazon Web Services
 
Logstash and Maxmind: not just for GEOIP anymore
Logstash and Maxmind: not just for GEOIP anymoreLogstash and Maxmind: not just for GEOIP anymore
Logstash and Maxmind: not just for GEOIP anymoreFaithWestdorp
 
Elk its big log season
Elk its big log seasonElk its big log season
Elk its big log seasonEric Luellen
 
Case StudyAutomotive - SSLVPN case study DIGIPASS BY VA
Case StudyAutomotive - SSLVPN case study DIGIPASS BY VACase StudyAutomotive - SSLVPN case study DIGIPASS BY VA
Case StudyAutomotive - SSLVPN case study DIGIPASS BY VAMaximaSheffield592
 
The Boring Security Talk
The Boring Security TalkThe Boring Security Talk
The Boring Security Talkkieranjacobsen
 
Webzurich - The State of Web Security in Switzerland
Webzurich - The State of Web Security in SwitzerlandWebzurich - The State of Web Security in Switzerland
Webzurich - The State of Web Security in SwitzerlandTiago Henriques
 
Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...
Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...
Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...London Microservices
 
Web Application Debugging Webinar
Web Application Debugging WebinarWeb Application Debugging Webinar
Web Application Debugging WebinarAVEVA
 
Introduction to ThousandEyes
Introduction to ThousandEyesIntroduction to ThousandEyes
Introduction to ThousandEyesThousandEyes
 
Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...
Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...
Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...ForgeRock
 

Similar to Security Information and Event Management with Kafka, Kafka Connect, KSQL and Logstash (20)

Ivanti for msp
Ivanti for mspIvanti for msp
Ivanti for msp
 
Log Analytics for Distributed Microservices
Log Analytics for Distributed MicroservicesLog Analytics for Distributed Microservices
Log Analytics for Distributed Microservices
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
 
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
Stève Sfartz - Meeting rooms are talking! Are you listening? - Codemotion Ber...
 
Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?
Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?
Are Your Appliance Security Solutions Ready For 2048-bit SSL Certificates ?
 
Meeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listeningMeeting rooms are talking. Are you listening
Meeting rooms are talking. Are you listening
 
TENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBE
TENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBETENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBE
TENDENCIAS DE SEGURIDAD PARA AMBIENTES EN LA NUBE
 
Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?Meeting rooms are talking! are you listening?
Meeting rooms are talking! are you listening?
 
Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...
Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...
Zabbix – Powerful enterprise grade monitoring driven by Open Source by Wolfga...
 
Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...
Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...
Optimize Your SaaS Offering with Serverless Microservices (GPSTEC405) - AWS r...
 
Logstash and Maxmind: not just for GEOIP anymore
Logstash and Maxmind: not just for GEOIP anymoreLogstash and Maxmind: not just for GEOIP anymore
Logstash and Maxmind: not just for GEOIP anymore
 
DDS Secure Intro
DDS Secure IntroDDS Secure Intro
DDS Secure Intro
 
Elk its big log season
Elk its big log seasonElk its big log season
Elk its big log season
 
Case StudyAutomotive - SSLVPN case study DIGIPASS BY VA
Case StudyAutomotive - SSLVPN case study DIGIPASS BY VACase StudyAutomotive - SSLVPN case study DIGIPASS BY VA
Case StudyAutomotive - SSLVPN case study DIGIPASS BY VA
 
The Boring Security Talk
The Boring Security TalkThe Boring Security Talk
The Boring Security Talk
 
Webzurich - The State of Web Security in Switzerland
Webzurich - The State of Web Security in SwitzerlandWebzurich - The State of Web Security in Switzerland
Webzurich - The State of Web Security in Switzerland
 
Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...
Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...
Building Event-Driven Microservices using Kafka Streams (Stathis Souris, Thou...
 
Web Application Debugging Webinar
Web Application Debugging WebinarWeb Application Debugging Webinar
Web Application Debugging Webinar
 
Introduction to ThousandEyes
Introduction to ThousandEyesIntroduction to ThousandEyes
Introduction to ThousandEyes
 
Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...
Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...
Sydney Identity Summit: Addressing the New Threat Landscape with Continuous S...
 

More from confluent

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flinkconfluent
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsconfluent
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flinkconfluent
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...confluent
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluentconfluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkconfluent
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloudconfluent
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Diveconfluent
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluentconfluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Meshconfluent
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservicesconfluent
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3confluent
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernizationconfluent
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataconfluent
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2confluent
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023confluent
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesisconfluent
 
The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023confluent
 
The Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data StreamsThe Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data Streamsconfluent
 

More from confluent (20)

Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flink
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesis
 
The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023The Future of Application Development - API Days - Melbourne 2023
The Future of Application Development - API Days - Melbourne 2023
 
The Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data StreamsThe Playful Bond Between REST And Data Streams
The Playful Bond Between REST And Data Streams
 

Recently uploaded

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 

Recently uploaded (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Security Information and Event Management with Kafka, Kafka Connect, KSQL and Logstash

  • 1. https://digitalis.io info@digitalis.io Security Information and Event Management with Kafka, Kafka Connect, KSQL and Logstash
  • 2. https://digitalis.io 2 Jason Bell ABOUT Working with Kafka since 2014, in development, support and now DevOps. Author of Machine Learning: Hands on for Developers and Technical Professionals, published by Wiley. Kafka DevOps Engineer
  • 3. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io What is SIEM?
  • 4. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io SIEM adoption originally driven from Payment Card Industry Data Security Standard (PCI DSS).
  • 5. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Data can come from various sources such as firewalls, anti-virus, login information and intrusion prevention systems.
  • 6. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io For example: A user does 20 failed login attempts. Has the user actually forgotten? Let’s class this as a low priority event. The user may have just forgotten their password and retried.
  • 7. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io A user does 140 failed login attempts in five minutes. This is more than likely a brute force attack and needs investigating.
  • 8. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Enterprise SIEM Problems
  • 9. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Enterprise SIEM Problems ● Large Volumes of Data.
  • 10. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Enterprise SIEM Problems ● Large Volumes of Data. ● Variety of log formats - RFC5424, RFC3164, Windows Events and other bespoke log formats from network devices.
  • 11. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Enterprise SIEM Problems ● Large Volumes of Data. ● Variety of log formats - RFC5424, RFC3164, Windows Events and other bespoke log formats from network devices. ● Regulatory compliance.
  • 12. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io “Virtually every regulatory compliance regime or standard such as GDPR, ISO 27001, PCI DSS, HIPAA, FERPA, Sarbanes-Oxley (SOX), FISMA, and SOC 2 have some requirements of log management to preserve audit trails of activity that addresses the CIA (Confidentiality, Integrity, and Availability) triad.” https://digitalis.io/blog/kafka/apache-kafka-and-regulatory-compliance/
  • 13. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Enterprise SIEM Problems ● Large Volumes of Data. ● Variety of log formats - RFC5424, RFC3164, Windows Events and other bespoke log formats from network devices. ● Regulatory compliance. ● High Availability Requirements
  • 14. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Enterprise SIEM Problems ● Large Volumes of Data. ● Variety of log formats - RFC5424, RFC3164, Windows Events and other bespoke log formats from network devices. ● Regulatory compliance. ● High Availability Requirements ● Downstream sometimes cannot keep up at peak times – 9am, DDoS events
  • 15. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Enterprise SIEM Problems ● Large Volumes of Data. ● Variety of log formats - RFC5424, RFC3164, Windows Events and other bespoke log formats from network devices. ● Regulatory compliance. ● High Availability Requirements ● Downstream sometimes cannot keep up at peak times – 9am, DDoS events ● Multiple consumers of data and connectivity to them ○ routing, transforming, filtering
  • 16. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Why use Kafka?
  • 17. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Why Kafka? ● High Availability
  • 18. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Why Kafka? ● High Availability ● Scalable
  • 19. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Why Kafka? ● High Availability ● Scalable ● High Throughput
  • 20. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Why Kafka? ● High Availability ● Scalable ● High Throughput ● Rich Ecosystem
  • 21. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Why Kafka? ● High Availability ● Scalable ● High Throughput ● Rich Ecosystem ● ksqlDB for Implementing Logic for Routing/Filtering/Transforming
  • 22. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Why Kafka? ● High Availability ● Scalable ● High Throughput ● Rich Ecosystem ● ksqlDB for Implementing Logic for Routing/Filtering/Transforming ● Buffering of data during high peak volumes – a shock absorber.
  • 23. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Kafka SIEM Architecture
  • 24. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io
  • 25. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Data Flows and Components
  • 26. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Topic and Outbound Data Flows
  • 27. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Data Ingestion
  • 28. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Data Ingestion ● Non-repudiation - fingerprinting source logs ● Transformation to JSON ● Non-standard syslog formats - bespoke grokking
  • 29. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Logstash - Input
  • 30. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io TODO: Insert Logstash In->Filter-Out diagram
  • 31. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Logstash Input – All Types input { udp { host => "0.0.0.0" port => 5140 type => rfc5424 tags => ["rfc5424"] } tcp { host => "0.0.0.0" port => 5140 type => rfc5424 tags => ["rfc5424"] } syslog { port => 5150 type => rfc3164 tags => ["rfc3164"] } }
  • 32. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Logstash - Filtering
  • 33. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Logstash Filter – RFC3164 filter { if [type] == "rfc3164" { # rename and remove fields mutate { remove_field => [ "@version", "@timestamp" ] rename => { "host" => "client_addr" } rename => { "logsource" => "host" } rename => { "severity_label" => "severity" } rename => { "facility_label" => "facility" } } } } }
  • 34. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Logstash Filter – RFC5424 filter { if [type] == "rfc5424" { # parse RFC5424 log grok { patterns_dir => "/etc/logstash/patterns" match => [ "message", "%{SYSLOG}" ] tag_on_failure => [ "_grokparsefailure_syslog" ] } # rename fields and remove unneeded ones mutate { rename => { "syslog_facility" => "facility" } rename => { "syslog_severity" => "severity" } # message_syslog contains message content + extra data replace => { "message" => "%{message_syslog}" } remove_field => [ "@version", "facility_label", "@timestamp", "message_content", "message_syslog" ] rename => { "program" => "ident" } rename => { "timestamp_source" => "timestamp"} rename => { "host" => "client_addr" } rename => { "host_source" => "host" } }
  • 35. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Logstash Filter – RFC JSON
  • 36. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io { "host":“testhost", "ident":"info", "message":"01070417:6: AUDIT - user admin - RAW: httpd(pam_audit): User=admin tty=(unknown) host=10.234.254.90 failed to login after 1 attempt….", "priority":"info", "facility":"local0", "client_addr":"10.234.254.90", "bucket":"2019042913", "evt_id":"33a3a040-6a7f-11e9-a8be-0050568115fd", "extradata":"[ ]", "fingerprint ":"73dd765f55a1791b667bd6160235e3f6 ", "rawdata ":"..... ", "pid":"-", "msgid":"-", "timestamp":"2019-04-29T14:03:37.000000Z" }
  • 37. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Logstash - Output
  • 38. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io output { if "syslog_rfc5424" in [tags] { kafka { codec => json topic_id => "syslog_rfc5424" bootstrap_servers => "{{ confluent_ksql_bootstrap_servers }}" security_protocol => SSL ssl_key_password => "{{ logstash_ssl_key_password }}" ssl_keystore_location => "/etc/logstash/logstash.keystore.jks" ssl_keystore_password => "{{ logstash_ssl_keystore_password }}" ssl_truststore_location => "/etc/logstash/logstash.truststore.jks" ssl_truststore_password => "{{ logstash_ssl_truststore_password }}" compression_type => "snappy" acks => "1" retries => "3" retry_backoff_ms => "500" request_timeout_ms => "2000" batch_size => "32768" ssl_endpoint_identification_algorithm => "https" ssl_keystore_type => jks } } }
  • 39. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Topic Filtering and Routing
  • 40. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Filter / Routing ● Some downstream systems are not interested in INFO - too much data
  • 41. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Filter / Routing ● Some downstream systems are not interested in INFO - too much data ● Some are only interested in Windows events for example.
  • 42. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io create stream syslog_rfc3164 (client_addr varchar, host varchar, timestamp varchar, severity varchar, message varchar, facility varchar, type varchar, priority varchar) with (KAFKA_TOPIC='syslog_rfc3164', VALUE_FORMAT='JSON’); create stream auth_rfc3164 with (KAFKA_TOPIC='syslog_auth', VALUE_FORMAT='JSON') AS SELECT * FROM syslog_rfc3164 WHERE message LIKE '%password check failed for user%' OR message LIKE '%An account failed to log on.%' OR message LIKE '%%0xC000006D’; create stream syslog_rfc5424 (facility varchar, message varchar, pid varchar, type varchar, timestamp varchar, ident varchar, client_addr varchar, host varchar, msgid varchar, extradata varchar, priority varchar) with (KAFKA_TOPIC='syslog_rfc5424', VALUE_FORMAT='JSON’); create stream auth_rfc5424 with (KAFKA_TOPIC='syslog_auth', VALUE_FORMAT='JSON') AS SELECT * FROM syslog_rfc5424 WHERE message LIKE '%password check failed%' OR extradata LIKE '%|309|%' OR message LIKE '%An account failed to log on.%' OR message LIKE '%%0xC000006D';
  • 43. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Destinations and Sinks
  • 44. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Destinations and Sink ● Use existing connectors
  • 45. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Destinations and Sink ● Use existing connectors ● Build your own connectors
  • 46. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Splunk HTTP Sink in Kafka Connect
  • 47. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io { "name": "syslog-sink-splunk", "config": { "connector.class": "SplunkHECSinkConnector", "tasks.max": "{{ tasks_max }}", "topics": "{{ topics }}", "splunk.endpoint.uri": "{{ splunk_endpoint_uri }}", "splunk.hec.token": "{{ splunk_hec_token }}", "splunk.index": "{{ splunk_index }}", "splunk.channelid": "{{ splunk_channelid }}", "splunk.sourcetype": "{{ splunk_sourcetype }}", "splunk.http.loglevel": "{{ splunk_http_loglevel }}", "value.converter": "org.apache.kafka.connect.json.JsonConverter", "value.converter.schemas.enable": "{{ splunk_value_converter_schemas_enable }}", "errors.tolerance": "{{ splunk_errors_tolerance }}", "errors.deadletterqueue.topic.name":"{{ errors_deadletterqueue_topic_name }}", "errors.deadletterqueue.topic.replication.factor": "{{ errors_deadletterqueue_topic_replication_factor }}" } }
  • 48. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Testing
  • 49. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Testing ● Process 3TB/day data volumes.
  • 50. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Testing ● Process 3TB/day data volumes. ● Prove the solution can scale horizontally.
  • 51. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Testing: Process 2.3TB/day data volumes. ● 3TB/day = 33MB/second
  • 52. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io
  • 53. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io • 400 threads were set up in the Thread Group to simulate 400 servers sending the logs.
  • 54. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io • 6 load injectors were setup, totalling 2400 threads (simulated servers), in order to generate between 20MB/second to 40 MB/second load against the endpoint from the injectors.
  • 55. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io • The load was injected over 5 days period at a sustained rate to ascertain the performance characteristics of each component over a prolonged duration.
  • 56. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Testing
  • 57. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Carry on the conversation: • Website: https://digitalis.io • Reddit: https://reddit.com/users/digitalis_io • Twitter: @digitalis_io
  • 58. ©2020 digitalis.io Ltd. Do not distribute without consent. https://digitalis.io Any Questions?