SlideShare una empresa de Scribd logo
1 de 65
Descargar para leer sin conexión
Security Monitoring for big Infrastructures 
without a Million Dollar budget 
o 
Monitoring like the NSA (con precios 
cuidados) 
#eko10
About us 
● Juan Berner 
○ @89berner 
○ Hobbies = ['Movies/Series','Reading','Programming'] 
○ Mostly Blue Team 
○ http://secureandscalable.wordpress.com/ 
● Hernán Costante 
○ @hachedece 
○ Security Monitoring & Incident Response fan 
○ Open Source lover ♥
About MercadoLibre 
● Devops culture (everyone and their mothers can access the boxes) 
● Hybrid Cloud of Openstack & Others (servers being destroyed constantly) 
● Infrastructure as a service 
● Database as a service 
● Database servers > 1K && Servers > 15K 
● Daily logs > 100GB (and growing)
What is this talk about? 
● ELK (Elasticsearch - Logstash - Kibana) 
● Controlling the infrastructure that supports it 
● Monitoring at scale with open source tools
Outline 
● Introduction to Monitoring 
● How it used to be 
● Background 
● Implementation 
● Demo 
● Outro
Intro 
So why monitoring?
Monitoring helps in 
● Fulfilling compliance (PCI, SOX, BACEN, HIPAA, BCRA, etc) 
● Not just trusting your audits (what happens in the mean time?) 
● Crucial for Incident Response 
● Know how your infrastructure works (you can’t protect what you don’t know 
is there)
Some Warnings 
● This talk is not an offensive talk (no 0days 
coming up) 
● Being free does not mean it has no cost 
● You will need to invest in training your staff to 
handle the infrastructure 
● Your only limit is what you can build around it
What we mean is 
● We will talk about a LOT of open source solutions 
● Every setup can be different (choose what helps your environment) 
● > 30k lines of code supporting the infrastructure (ruby, python, node.js and 
go mostly) 
● You will do most of the support but will not be limited by a vendor 
● google -> irc -> mailing lists
We will talk about the old security 
monitoring for just a moment
The old monitoring paradigm 
● A lot of limitations 
○ Limited storage 
○ Only security logs 
○ Select and filter inputs… 
○ Regex everywhere: lifestyle & nightmares 
○ Relational databases for storage
The old monitoring paradigm (2) 
● Commercial SIEMs 
○ Expensive 
○ Hard & soft closed 
○ Inflexible 
○ Licenses & support & professional services ($$$) 
○ You are learning about a product 
○ Being a Gartner’s Magic Quadrant Leader doesn’t 
resolve security incidents
… and now about their problems
Efficiency
Capacity
Complexity
Preparing for the worst 
Consider that sooner or later: 
Are you prepared? 
Can you resolve a complex security incident with your old SIEM?
...but things are changing
New security monitoring paradigm 
● Ask for your logs in huge amounts of data at any time 
● Get fast responses 
● Log absolutely everything... even the network flows 
● Contextualization 
● Behavior analysis & historical comparisons 
● Holistic visualization 
● Metadata (tags)
New security monitoring paradigm (2) 
● Hybrid cloud (private & public) 
● Integration 
● Bigger security monitoring infrastructure 
● Resilience & distribution 
● Hybrid storage (expensive & cheap) 
● Open source synergy
How we Implement it 
● ELK (Elasticsearch - Logstash - Kibana) 
● Archiving with Hadoop and Block Storage 
● Centralized reporting tool 
● Our own system to control our infrastructure 
● A custom monitoring tool
Some Inputs 
● Server logs 
● Firewalls 
● User activity 
● WAF 
● Databases 
● Netflow 
● Load Balancers 
● DNS 
● Honeypots 
● Sflow 
● IDS 
● IPS 
● Switches 
● Routers 
● Applications 
● Storage 
● Openldap 
● Cloud logs 
● etc.. 
If it can log, you can collect it.
Delivery - Shipper - Broker - Tagging - Storage 
Delivery 
● syslog, syslog-ng, rsyslog, nxlog, lumberjack 
● Centralization all of the logs in one place 
● Not just for shipping, you will need to keep them 
● Consider some redundancy for fail over 
● Not the same as shipping
Delivery - Shipper - Broker - Tagging - Storage 
Meet the event 
An sflow event: 
Oct 23 18:59:40 my-host sflow: FLOW,10.10.10.10,137,0,0020cbba0000, 
00003e001111,0x0800,1,1,23.23.109.234,172.10.10.10,6,0x00,45,12345,80,0 
x18,336,318,1600
Delivery - Shipper - Broker - Tagging - Storage 
Shipper 
We are here! 
The Logstash Book Version: v1.4.2.1
Delivery - Shipper - Broker - Tagging - Storage 
Logstash 
● Great as a shipper or indexer 
● Awesome community and flexibility 
● Allows tagging, metrics, hundreds of inputs and outputs 
● Lots of codecs for encoding/decoding input/output 
● You can generate actions based on events
Delivery - Shipper - Broker - Tagging - Storage 
Broker 
The Logstash Book Version: v1.4.2.1 
We are here!
Delivery - Shipper - Broker - Tagging - Storage 
Broker 
● We use Redis, but there are other options 
● Allows for a better parallelization of event indexing 
● At least 2 nodes for redundancy 
● Buffer in case of failure (size the ram accordingly)
Delivery - Shipper - Broker - Tagging - Storage 
Tagging 
The Logstash Book Version: v1.4.2.1 
We are here!
Delivery - Shipper - Broker - Tagging - Storage 
Logstash Inputs 
● How to get events to logstash 
● Many different plugins to use 
● Lumberjack -> Logstash default shipper 
● In this case the redis input is enough 
input { 
redis { 
host => "10.0.0.1" 
type => "redis-input" 
data_type => "list" 
key => "logstash" } }
Delivery - Shipper - Broker - Tagging - Storage 
Logstash Filters 
● They can help you parse, tag and modify 
events on the fly 
● GROK => Replacing regex with names 
● You can build your own custom GROK 
patterns 
● Other useful filters such as Metrics, 
Geoip, DNS, Anonymize, Date, etc.. 
filter { 
grok { 
pattern => "% 
{SYSLOGTIMESTAMP:date}...% 
{HOSTNAME:srcip},%{HOSTNAME: 
dstip}...%{NUMBER:srcport},%{NUMBER: 
dstport}..." 
} 
geoip { 
source => "dstip" 
target => "dst_geo" 
fields => ["country_code2"] 
} 
dns { 
resolve => [ "@dns"] 
action => "replace" 
} 
}
Delivery - Shipper - Broker - Tagging - Storage 
Logstash Outputs 
● Most famously elasticsearch 
● tcp, exec, email, statsd, s3.. 
output{ 
elasticsearch_http 
{ 
index => "logstash-%{+yyyy-MM-dd}-%{type}" 
host => "localhost" 
flush_size => 5000 
workers => 5 
} 
} 
● Can be used to spawn alerts (send me an email when a user logs in) 
● Different outputs based on the type is possible
The event in logstash 
{ 
…. 
"inputport":"137", "outputport":"0", "srcmac":"0020cbba0000", "dstmac":"00003e001111", "invlan":"1", "outvlan":"1", "packetsize":"336", 
"srcip":"172.10.10.10", "dstip":"23.23.80.130", 
"dns":"ekoparty.org", 
"srcport":"12345", "dstport":"80", 
"dst_geo":{ 
"country_code2":"US" 
} 
} 
Delivery - Shipper - Broker - Tagging - Storage
Delivery - Shipper - Broker - Tagging - Storage 
Storage 
The Logstash Book Version: v1.4.2.1 
We are here!
Delivery - Shipper - Broker - Tagging - Storage 
Elasticsearch 
● JSON data store built on top of Apache Lucene 
● Documents divided in indices, and those in shards 
● Allows replication and scales amaizingly! 
● Search Billions of records in seconds 
● Great support for ELK
Delivery - Shipper - Broker - Tagging - Storage 
Elasticsearch for Bulk Indexing 
● We are talking of hundreds of millions of events per day 
● Daily or hourly indices, increase refresh time 
● Watch out for the bulk thread pool and caches 
● Give most of the ram to the jvm 
● Every setup is different
Delivery - Shipper - Broker - Tagging - Storage 
The event in ElasticSearch { 
"_index":"logstash-2014-10-23-sflow", 
"_type":"sflow", 
"_id":"JKWMv9J2T767IjxyasWjZw", … 
"_source":{ 
"message":"Oct 23 18:59:40 mihost sflow: FLOW,10.5.4.11,137,0,0020cbbbb000,00003eee1111,0x0800,1,1,10.10.10.100,10.10.10.10,6,0x00,45,80,14887,0x18,336,318,1600", 
"@timestamp":"2014-10-23T18:59:40.000-04:00", 
"@version":"1", 
…. 
}, 
"sort":[ 
1414105180000 
] }
Delivery - Shipper - Broker - Tagging - Storage 
Elasticsearch Security 
● Insecure by default (slowly changing) 
● Jetty or elasticsearch-http-basic plugins 
● Nginx or node.js proxy in front of kibana 
(and log all the requests) 
● Segmentation is the best bet yet to secure 
the cluster
Delivery - Shipper - Broker - Tagging - Storage 
What Elasticsearch is not for 
● Not a primary data store 
● There are no transactions, you might lose some data 
● Few tools to help with reporting besides kibana 
● Not stable enough (yet)
Delivery - Shipper - Broker - Tagging - Storage 
Backup 
● Filesystem replicas (hardware problems) 
● Filesystem snapshots (human mistakes) 
● External backup of your raw logs (total disaster) 
● Int/Ext backup of you ES indices (to avoid reindexing)
Delivery - Shipper - Broker - Tagging - Storage 
Archiving 
● Hadoop 
○ Open source! 
○ Process large amounts of data 
○ Distributed process & storage 
○ Highly scalable (linearly) & fault tolerant 
○ SQL language (with Hive or Impala) 
● Excellent to store all our data in a queryable way!
Visualization 
● Kibana! 
● User browser connects to ES 
● Charts / geo / details / etc 
● Click to browse logs 
● Timelines 
● “Google” your logs
Visualization (2) 
● For cluster state 
○ ElasticHQ (free) 
○ Marvell (commercial)
Reporting 
● Avoid crons 
● Hadoop is better than ElasticSearch for reporting
Controlling your infrastructure 
Everything is 
working, right?
Are you sure they are working?
Prepare for failure 
● Skitter 
○ Most components will fail sometimes 
○ Don’t just alert. Fix it if possible. 
○ Sometimes you can just check the end of the flow. 
○ If you are not controlling it, you can’t depend on it.
Alerts 
● Inline 
○ Attaching to the logs (Logstash / Syslog-ng) 
○ Less flexibility 
○ As you grow your correlation will decrease 
● Batch 
○ “Near real time” 
○ The power of elasticsearch at your disposal 
○ Great correlation capabilities (has this 
happened in the last 6 months?) 
○ Creating rules for behaviour not actions
Alerts 
● Weaver 
○ Modular approach 
○ Tie behaviour from multiple sources 
○ What would a hacker do? (nmap|nc) & cat /etc/passwd = Alert 
○ Reduce false positives with statistics 
○ There are services that can call you!
Example of an Alert (1) 
● We look for connections to countries outside AR for this period of time 
{ "query":{ "filtered":{ "query":{ "match_all":{ } }, "filter":{ "and":[ { 
"bool":{ "must":{ } }, "should":{ }, 
"must_not":{ 
"regexp": { "country_code2":"AR" } 
} } }, { "range":{ 
"@timestamp":{ 
"from":"2014-10-12T12:20:45-03:00", 
"to":"2014-10-12T12:26:45-03:00" } } } ] } } } } }
Example of an Alert (2) 
● Guess who we found: 
{ 
"_index":"logstash-2014-10-23-sflow", 
"_type":"sflow", "_id":"JKWMv9J2T767IjxyasWjZw", … "_source":{ 
…. 
"srcip":"172.10.10.10", "dstip":"23.23.80.130", "dns":" 
ekoparty.org", ... 
"dst_geo":{ "country_code2":"US" } }, 
"sort":[ 1414105180000 ] }
Example of an Alert (3) 
● We check if this connection has happened in the last 3 months 
{ "query":{ "filtered":{ "query":{ "match_all":{ } }, "filter":{ "and":[ { 
"bool":{ 
"must":{ "srcip":"172.10.10.10”,"dstip":"23.23.80.130" } 
}, "should":{ }, "must_not":{ } } }, { 
"range":{ 
"@timestamp":{ 
"from":"2014-07-12T12:19:45-03:00", 
"to":"2014-10-12T12:26:45-03:00" } } } ] } } } } }
Example of an Alert (4) 
● Our result is: 
[] => Nothing
Example of an Alert (5) 
● We now check what users and commands happened in that timeframe in that 
server for evidence to attach to the alert 
{ "query":{ "filtered":{ "query":{ "match_all":{ } }, "filter":{ "and":[ { 
"bool":{ "must":{ } }, "should":{ }, 
"must_not":{ 
"regexp": { “host”:”172.10.10.10” } 
} } }, { "range":{ 
"@timestamp":{ 
"from":"2014-10-12T12:20:45-03:00", 
"to":"2014-10-12T12:26:45-03:00" } } } ] } } } } }
Example of an Alert (6) 
● We find different users and commands and we don’t alert since a user from 
the group networking had a command which includes as the argument the 
address resolved by the dns filter : 
{ .... 
"xhost": "54.191.133.118", 
"realuser": "web", 
"group": "apache", 
"command": "ls" 
} 
{ .... 
"xhost": "54.191.133.118", 
"realuser": "net", 
"group": "networking", 
"command": "wget http://www.ekoparty. 
org/charlas-2014.php? 
a=2014&c=green&m=176" }
So how does this look like?
DEMO! 
ssh 54.191.133.118
outro
what’s next? 
● Massive IDS (in verbose mode for network behavior) 
● Machine Learning 
● Behavior patterns (thresholds and trends) 
● IOCs
biblio & references 
● https://github.com/89berner/Monitor 
● The Logstash Book by James Turnbull 
● elastichsearch.org
greetings 
● Audience 
● Ekoparty staff 
● Meli’s SegInf Team
questions?
thank you! 
Contact us! 
89berner@gmail.com / @89berner 
hernancostante@gmail.com / @hachedece 
we’re hiring ;)

Más contenido relacionado

La actualidad más candente

Intelligent integration with WSO2 ESB & WSO2 CEP
Intelligent integration with WSO2 ESB & WSO2 CEP Intelligent integration with WSO2 ESB & WSO2 CEP
Intelligent integration with WSO2 ESB & WSO2 CEP Sriskandarajah Suhothayan
 
Webinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleWebinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleMongoDB
 
Managing Cloud Security Design and Implementation in a Ransomware World
Managing Cloud Security Design and Implementation in a Ransomware World Managing Cloud Security Design and Implementation in a Ransomware World
Managing Cloud Security Design and Implementation in a Ransomware World MongoDB
 
Attacking the Webkit heap [Or how to write Safari exploits]
Attacking the Webkit heap [Or how to write Safari exploits]Attacking the Webkit heap [Or how to write Safari exploits]
Attacking the Webkit heap [Or how to write Safari exploits]Seguridad Apple
 
ManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья Свиридов
ManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья СвиридовManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья Свиридов
ManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья СвиридовGeeksLab Odessa
 
Tweaking perfomance on high-load projects_Думанский Дмитрий
Tweaking perfomance on high-load projects_Думанский ДмитрийTweaking perfomance on high-load projects_Думанский Дмитрий
Tweaking perfomance on high-load projects_Думанский ДмитрийGeeksLab Odessa
 
MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB
 
Choosing a Shard key
Choosing a Shard keyChoosing a Shard key
Choosing a Shard keyMongoDB
 
Putting the Go in MongoDB: How We Rebuilt The MongoDB Tools in Go
Putting the Go in MongoDB: How We Rebuilt The MongoDB Tools in GoPutting the Go in MongoDB: How We Rebuilt The MongoDB Tools in Go
Putting the Go in MongoDB: How We Rebuilt The MongoDB Tools in GoMongoDB
 
Where is my cache architectural patterns for caching microservices by example
Where is my cache architectural patterns for caching microservices by exampleWhere is my cache architectural patterns for caching microservices by example
Where is my cache architectural patterns for caching microservices by exampleRafał Leszko
 
Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.Meghaj Mallick
 
Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4 Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4 MongoDB
 
Mongodb sharding
Mongodb shardingMongodb sharding
Mongodb shardingxiangrong
 
Webinar: Architecting Secure and Compliant Applications with MongoDB
Webinar: Architecting Secure and Compliant Applications with MongoDBWebinar: Architecting Secure and Compliant Applications with MongoDB
Webinar: Architecting Secure and Compliant Applications with MongoDBMongoDB
 
Work Stealing For Fun & Profit: Jim Nelson
Work Stealing For Fun & Profit: Jim NelsonWork Stealing For Fun & Profit: Jim Nelson
Work Stealing For Fun & Profit: Jim NelsonRedis Labs
 
Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...
Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...
Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...Nagios
 
Back to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to ShardingBack to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to ShardingMongoDB
 
Sharding
ShardingSharding
ShardingMongoDB
 
Sharding - patterns & antipatterns, Константин Осипов, Алексей Рыбак
Sharding -  patterns & antipatterns, Константин Осипов, Алексей РыбакSharding -  patterns & antipatterns, Константин Осипов, Алексей Рыбак
Sharding - patterns & antipatterns, Константин Осипов, Алексей РыбакOntico
 

La actualidad más candente (20)

Intelligent integration with WSO2 ESB & WSO2 CEP
Intelligent integration with WSO2 ESB & WSO2 CEP Intelligent integration with WSO2 ESB & WSO2 CEP
Intelligent integration with WSO2 ESB & WSO2 CEP
 
Webinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleWebinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and Scale
 
Managing Cloud Security Design and Implementation in a Ransomware World
Managing Cloud Security Design and Implementation in a Ransomware World Managing Cloud Security Design and Implementation in a Ransomware World
Managing Cloud Security Design and Implementation in a Ransomware World
 
Attacking the Webkit heap [Or how to write Safari exploits]
Attacking the Webkit heap [Or how to write Safari exploits]Attacking the Webkit heap [Or how to write Safari exploits]
Attacking the Webkit heap [Or how to write Safari exploits]
 
ManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья Свиридов
ManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья СвиридовManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья Свиридов
ManetoDB: Key/Value storage, BigData in Open Stack_Сергей Ковалев, Илья Свиридов
 
Tweaking perfomance on high-load projects_Думанский Дмитрий
Tweaking perfomance on high-load projects_Думанский ДмитрийTweaking perfomance on high-load projects_Думанский Дмитрий
Tweaking perfomance on high-load projects_Думанский Дмитрий
 
MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data Presentation
 
Choosing a Shard key
Choosing a Shard keyChoosing a Shard key
Choosing a Shard key
 
Putting the Go in MongoDB: How We Rebuilt The MongoDB Tools in Go
Putting the Go in MongoDB: How We Rebuilt The MongoDB Tools in GoPutting the Go in MongoDB: How We Rebuilt The MongoDB Tools in Go
Putting the Go in MongoDB: How We Rebuilt The MongoDB Tools in Go
 
Where is my cache architectural patterns for caching microservices by example
Where is my cache architectural patterns for caching microservices by exampleWhere is my cache architectural patterns for caching microservices by example
Where is my cache architectural patterns for caching microservices by example
 
Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.Concurrency Control in Distributed Database.
Concurrency Control in Distributed Database.
 
Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4 Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4
 
Mongodb sharding
Mongodb shardingMongodb sharding
Mongodb sharding
 
Webinar: Architecting Secure and Compliant Applications with MongoDB
Webinar: Architecting Secure and Compliant Applications with MongoDBWebinar: Architecting Secure and Compliant Applications with MongoDB
Webinar: Architecting Secure and Compliant Applications with MongoDB
 
Work Stealing For Fun & Profit: Jim Nelson
Work Stealing For Fun & Profit: Jim NelsonWork Stealing For Fun & Profit: Jim Nelson
Work Stealing For Fun & Profit: Jim Nelson
 
Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...
Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...
Nagios Conference 2012 - Anders Haal - Why dynamic and adaptive thresholds ma...
 
Back to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to ShardingBack to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to Sharding
 
Sharding
ShardingSharding
Sharding
 
Windows Domains Part 2
Windows Domains Part 2Windows Domains Part 2
Windows Domains Part 2
 
Sharding - patterns & antipatterns, Константин Осипов, Алексей Рыбак
Sharding -  patterns & antipatterns, Константин Осипов, Алексей РыбакSharding -  patterns & antipatterns, Константин Осипов, Алексей Рыбак
Sharding - patterns & antipatterns, Константин Осипов, Алексей Рыбак
 

Destacado

5.多角度对抗 waf 的思路与实例
5.多角度对抗 waf 的思路与实例5.多角度对抗 waf 的思路与实例
5.多角度对抗 waf 的思路与实例Hsiao Tim
 
数据分析组14 15
数据分析组14 15数据分析组14 15
数据分析组14 15bugu bugu
 
肖康:Storm在实时网络攻击检测和分析的应用与改进
肖康:Storm在实时网络攻击检测和分析的应用与改进肖康:Storm在实时网络攻击检测和分析的应用与改进
肖康:Storm在实时网络攻击检测和分析的应用与改进hdhappy001
 
The Secrets to Get New & Repeat Sales in Furniture and Furnishings Industry
The Secrets to Get New & Repeat Sales in Furniture and Furnishings IndustryThe Secrets to Get New & Repeat Sales in Furniture and Furnishings Industry
The Secrets to Get New & Repeat Sales in Furniture and Furnishings IndustryGoldsoft
 
7.唯品会安全建设与风控杂谈
7.唯品会安全建设与风控杂谈7.唯品会安全建设与风控杂谈
7.唯品会安全建设与风控杂谈Hsiao Tim
 
搜狐 窦喆 Sohu-sagent
搜狐 窦喆 Sohu-sagent搜狐 窦喆 Sohu-sagent
搜狐 窦喆 Sohu-sagentguiyingshenxia
 
阿里云 张旭 集群运维管理平台
阿里云 张旭 集群运维管理平台阿里云 张旭 集群运维管理平台
阿里云 张旭 集群运维管理平台guiyingshenxia
 
美团点评技术沙龙08 - 分布式监控系统实践
美团点评技术沙龙08 - 分布式监控系统实践美团点评技术沙龙08 - 分布式监控系统实践
美团点评技术沙龙08 - 分布式监控系统实践美团点评技术团队
 
分布式監控系統的容器化變遷與 CI/CD 實踐
分布式監控系統的容器化變遷與 CI/CD 實踐 分布式監控系統的容器化變遷與 CI/CD 實踐
分布式監控系統的容器化變遷與 CI/CD 實踐 Yao-Wei Ou
 
构建高可用数据库监控系统
构建高可用数据库监控系统构建高可用数据库监控系统
构建高可用数据库监控系统haiyuan ning
 
Pptv lb日志实时分析平台
Pptv lb日志实时分析平台Pptv lb日志实时分析平台
Pptv lb日志实时分析平台drewz lin
 
WordPress security for everyone
WordPress security for everyoneWordPress security for everyone
WordPress security for everyoneVladimír Smitka
 
大数据场景下应用性能排查的智能根源分析
大数据场景下应用性能排查的智能根源分析大数据场景下应用性能排查的智能根源分析
大数据场景下应用性能排查的智能根源分析Yuchen Zhao
 
Splunk資安智慧分析平台
Splunk資安智慧分析平台Splunk資安智慧分析平台
Splunk資安智慧分析平台Ching-Lin Tao
 
Elasitcsearch + Logstash + Kibana 日誌監控
Elasitcsearch + Logstash + Kibana 日誌監控Elasitcsearch + Logstash + Kibana 日誌監控
Elasitcsearch + Logstash + Kibana 日誌監控Jui An Huang (黃瑞安)
 
暴走漫画数据挖掘从0到1
暴走漫画数据挖掘从0到1暴走漫画数据挖掘从0到1
暴走漫画数据挖掘从0到1Michael Ding
 
Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜Weibo Corporation
 
Lessons & Use-Cases at Scale - Dr. Pete Stanski
Lessons & Use-Cases at Scale - Dr. Pete StanskiLessons & Use-Cases at Scale - Dr. Pete Stanski
Lessons & Use-Cases at Scale - Dr. Pete StanskiAmazon Web Services
 
cnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearchcnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearchSzuping Wang
 

Destacado (19)

5.多角度对抗 waf 的思路与实例
5.多角度对抗 waf 的思路与实例5.多角度对抗 waf 的思路与实例
5.多角度对抗 waf 的思路与实例
 
数据分析组14 15
数据分析组14 15数据分析组14 15
数据分析组14 15
 
肖康:Storm在实时网络攻击检测和分析的应用与改进
肖康:Storm在实时网络攻击检测和分析的应用与改进肖康:Storm在实时网络攻击检测和分析的应用与改进
肖康:Storm在实时网络攻击检测和分析的应用与改进
 
The Secrets to Get New & Repeat Sales in Furniture and Furnishings Industry
The Secrets to Get New & Repeat Sales in Furniture and Furnishings IndustryThe Secrets to Get New & Repeat Sales in Furniture and Furnishings Industry
The Secrets to Get New & Repeat Sales in Furniture and Furnishings Industry
 
7.唯品会安全建设与风控杂谈
7.唯品会安全建设与风控杂谈7.唯品会安全建设与风控杂谈
7.唯品会安全建设与风控杂谈
 
搜狐 窦喆 Sohu-sagent
搜狐 窦喆 Sohu-sagent搜狐 窦喆 Sohu-sagent
搜狐 窦喆 Sohu-sagent
 
阿里云 张旭 集群运维管理平台
阿里云 张旭 集群运维管理平台阿里云 张旭 集群运维管理平台
阿里云 张旭 集群运维管理平台
 
美团点评技术沙龙08 - 分布式监控系统实践
美团点评技术沙龙08 - 分布式监控系统实践美团点评技术沙龙08 - 分布式监控系统实践
美团点评技术沙龙08 - 分布式监控系统实践
 
分布式監控系統的容器化變遷與 CI/CD 實踐
分布式監控系統的容器化變遷與 CI/CD 實踐 分布式監控系統的容器化變遷與 CI/CD 實踐
分布式監控系統的容器化變遷與 CI/CD 實踐
 
构建高可用数据库监控系统
构建高可用数据库监控系统构建高可用数据库监控系统
构建高可用数据库监控系统
 
Pptv lb日志实时分析平台
Pptv lb日志实时分析平台Pptv lb日志实时分析平台
Pptv lb日志实时分析平台
 
WordPress security for everyone
WordPress security for everyoneWordPress security for everyone
WordPress security for everyone
 
大数据场景下应用性能排查的智能根源分析
大数据场景下应用性能排查的智能根源分析大数据场景下应用性能排查的智能根源分析
大数据场景下应用性能排查的智能根源分析
 
Splunk資安智慧分析平台
Splunk資安智慧分析平台Splunk資安智慧分析平台
Splunk資安智慧分析平台
 
Elasitcsearch + Logstash + Kibana 日誌監控
Elasitcsearch + Logstash + Kibana 日誌監控Elasitcsearch + Logstash + Kibana 日誌監控
Elasitcsearch + Logstash + Kibana 日誌監控
 
暴走漫画数据挖掘从0到1
暴走漫画数据挖掘从0到1暴走漫画数据挖掘从0到1
暴走漫画数据挖掘从0到1
 
Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜
 
Lessons & Use-Cases at Scale - Dr. Pete Stanski
Lessons & Use-Cases at Scale - Dr. Pete StanskiLessons & Use-Cases at Scale - Dr. Pete Stanski
Lessons & Use-Cases at Scale - Dr. Pete Stanski
 
cnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearchcnYes 如何使用 elasticsearch
cnYes 如何使用 elasticsearch
 

Similar a Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar Budget (Juan Berner & Hernan Costante)

Aggregated queries with Druid on terrabytes and petabytes of data
Aggregated queries with Druid on terrabytes and petabytes of dataAggregated queries with Druid on terrabytes and petabytes of data
Aggregated queries with Druid on terrabytes and petabytes of dataRostislav Pashuto
 
Eko10 Workshop Opensource Database Auditing
Eko10  Workshop Opensource Database AuditingEko10  Workshop Opensource Database Auditing
Eko10 Workshop Opensource Database AuditingJuan Berner
 
Eko10 workshop - OPEN SOURCE DATABASE MONITORING
Eko10 workshop - OPEN SOURCE DATABASE MONITORINGEko10 workshop - OPEN SOURCE DATABASE MONITORING
Eko10 workshop - OPEN SOURCE DATABASE MONITORINGPablo Garbossa
 
NetflixOSS Meetup season 3 episode 1
NetflixOSS Meetup season 3 episode 1NetflixOSS Meetup season 3 episode 1
NetflixOSS Meetup season 3 episode 1Ruslan Meshenberg
 
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | EnglishAWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | EnglishOmid Vahdaty
 
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...Guglielmo Iozzia
 
OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...
OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...
OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...NETWAYS
 
AWS Big Data Demystified #1: Big data architecture lessons learned
AWS Big Data Demystified #1: Big data architecture lessons learned AWS Big Data Demystified #1: Big data architecture lessons learned
AWS Big Data Demystified #1: Big data architecture lessons learned Omid Vahdaty
 
Big data @ Hootsuite analtyics
Big data @ Hootsuite analtyicsBig data @ Hootsuite analtyics
Big data @ Hootsuite analtyicsClaudiu Coman
 
Data Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFixData Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFixC4Media
 
Log Management: AtlSecCon2015
Log Management: AtlSecCon2015Log Management: AtlSecCon2015
Log Management: AtlSecCon2015cameronevans
 
Logs @ OVHcloud
Logs @ OVHcloudLogs @ OVHcloud
Logs @ OVHcloudOVHcloud
 
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthUSENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthNicolas Brousse
 
Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3  Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3 Omid Vahdaty
 
Distributed real time stream processing- why and how
Distributed real time stream processing- why and howDistributed real time stream processing- why and how
Distributed real time stream processing- why and howPetr Zapletal
 
Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...
Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...
Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...Ontico
 
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017Demi Ben-Ari
 
Kibana+ElasticSearch+LogStash to handle Log messages on Prod servers
Kibana+ElasticSearch+LogStash to handle Log messages on Prod serversKibana+ElasticSearch+LogStash to handle Log messages on Prod servers
Kibana+ElasticSearch+LogStash to handle Log messages on Prod serversHYS Enterprise
 
Event driven architectures with Kinesis
Event driven architectures with KinesisEvent driven architectures with Kinesis
Event driven architectures with KinesisMark Harrison
 

Similar a Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar Budget (Juan Berner & Hernan Costante) (20)

Aggregated queries with Druid on terrabytes and petabytes of data
Aggregated queries with Druid on terrabytes and petabytes of dataAggregated queries with Druid on terrabytes and petabytes of data
Aggregated queries with Druid on terrabytes and petabytes of data
 
Eko10 Workshop Opensource Database Auditing
Eko10  Workshop Opensource Database AuditingEko10  Workshop Opensource Database Auditing
Eko10 Workshop Opensource Database Auditing
 
Eko10 workshop - OPEN SOURCE DATABASE MONITORING
Eko10 workshop - OPEN SOURCE DATABASE MONITORINGEko10 workshop - OPEN SOURCE DATABASE MONITORING
Eko10 workshop - OPEN SOURCE DATABASE MONITORING
 
NetflixOSS Meetup season 3 episode 1
NetflixOSS Meetup season 3 episode 1NetflixOSS Meetup season 3 episode 1
NetflixOSS Meetup season 3 episode 1
 
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | EnglishAWS big-data-demystified #1.1  | Big Data Architecture Lessons Learned | English
AWS big-data-demystified #1.1 | Big Data Architecture Lessons Learned | English
 
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
Building a data pipeline to ingest data into Hadoop in minutes using Streamse...
 
OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...
OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...
OSMC 2018 | Learnings, patterns and Uber’s metrics platform M3, open sourced ...
 
AWS Big Data Demystified #1: Big data architecture lessons learned
AWS Big Data Demystified #1: Big data architecture lessons learned AWS Big Data Demystified #1: Big data architecture lessons learned
AWS Big Data Demystified #1: Big data architecture lessons learned
 
Big data @ Hootsuite analtyics
Big data @ Hootsuite analtyicsBig data @ Hootsuite analtyics
Big data @ Hootsuite analtyics
 
Data Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFixData Science in the Cloud @StitchFix
Data Science in the Cloud @StitchFix
 
Log Management: AtlSecCon2015
Log Management: AtlSecCon2015Log Management: AtlSecCon2015
Log Management: AtlSecCon2015
 
Handout: 'Open Source Tools & Resources'
Handout: 'Open Source Tools & Resources'Handout: 'Open Source Tools & Resources'
Handout: 'Open Source Tools & Resources'
 
Logs @ OVHcloud
Logs @ OVHcloudLogs @ OVHcloud
Logs @ OVHcloud
 
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a MonthUSENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
USENIX LISA15: How TubeMogul Handles over One Trillion HTTP Requests a Month
 
Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3  Big Data in 200 km/h | AWS Big Data Demystified #1.3
Big Data in 200 km/h | AWS Big Data Demystified #1.3
 
Distributed real time stream processing- why and how
Distributed real time stream processing- why and howDistributed real time stream processing- why and how
Distributed real time stream processing- why and how
 
Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...
Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...
Protecting the Web at a scale using consul and Elk / Valentin Chernozemski (S...
 
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
 
Kibana+ElasticSearch+LogStash to handle Log messages on Prod servers
Kibana+ElasticSearch+LogStash to handle Log messages on Prod serversKibana+ElasticSearch+LogStash to handle Log messages on Prod servers
Kibana+ElasticSearch+LogStash to handle Log messages on Prod servers
 
Event driven architectures with Kinesis
Event driven architectures with KinesisEvent driven architectures with Kinesis
Event driven architectures with Kinesis
 

Último

Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Último (20)

Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

Eko10 - Security Monitoring for Big Infrastructures without a Million Dollar Budget (Juan Berner & Hernan Costante)

  • 1. Security Monitoring for big Infrastructures without a Million Dollar budget o Monitoring like the NSA (con precios cuidados) #eko10
  • 2. About us ● Juan Berner ○ @89berner ○ Hobbies = ['Movies/Series','Reading','Programming'] ○ Mostly Blue Team ○ http://secureandscalable.wordpress.com/ ● Hernán Costante ○ @hachedece ○ Security Monitoring & Incident Response fan ○ Open Source lover ♥
  • 3. About MercadoLibre ● Devops culture (everyone and their mothers can access the boxes) ● Hybrid Cloud of Openstack & Others (servers being destroyed constantly) ● Infrastructure as a service ● Database as a service ● Database servers > 1K && Servers > 15K ● Daily logs > 100GB (and growing)
  • 4. What is this talk about? ● ELK (Elasticsearch - Logstash - Kibana) ● Controlling the infrastructure that supports it ● Monitoring at scale with open source tools
  • 5. Outline ● Introduction to Monitoring ● How it used to be ● Background ● Implementation ● Demo ● Outro
  • 6. Intro So why monitoring?
  • 7. Monitoring helps in ● Fulfilling compliance (PCI, SOX, BACEN, HIPAA, BCRA, etc) ● Not just trusting your audits (what happens in the mean time?) ● Crucial for Incident Response ● Know how your infrastructure works (you can’t protect what you don’t know is there)
  • 8. Some Warnings ● This talk is not an offensive talk (no 0days coming up) ● Being free does not mean it has no cost ● You will need to invest in training your staff to handle the infrastructure ● Your only limit is what you can build around it
  • 9. What we mean is ● We will talk about a LOT of open source solutions ● Every setup can be different (choose what helps your environment) ● > 30k lines of code supporting the infrastructure (ruby, python, node.js and go mostly) ● You will do most of the support but will not be limited by a vendor ● google -> irc -> mailing lists
  • 10. We will talk about the old security monitoring for just a moment
  • 11. The old monitoring paradigm ● A lot of limitations ○ Limited storage ○ Only security logs ○ Select and filter inputs… ○ Regex everywhere: lifestyle & nightmares ○ Relational databases for storage
  • 12. The old monitoring paradigm (2) ● Commercial SIEMs ○ Expensive ○ Hard & soft closed ○ Inflexible ○ Licenses & support & professional services ($$$) ○ You are learning about a product ○ Being a Gartner’s Magic Quadrant Leader doesn’t resolve security incidents
  • 13. … and now about their problems
  • 17. Preparing for the worst Consider that sooner or later: Are you prepared? Can you resolve a complex security incident with your old SIEM?
  • 18. ...but things are changing
  • 19. New security monitoring paradigm ● Ask for your logs in huge amounts of data at any time ● Get fast responses ● Log absolutely everything... even the network flows ● Contextualization ● Behavior analysis & historical comparisons ● Holistic visualization ● Metadata (tags)
  • 20. New security monitoring paradigm (2) ● Hybrid cloud (private & public) ● Integration ● Bigger security monitoring infrastructure ● Resilience & distribution ● Hybrid storage (expensive & cheap) ● Open source synergy
  • 21.
  • 22. How we Implement it ● ELK (Elasticsearch - Logstash - Kibana) ● Archiving with Hadoop and Block Storage ● Centralized reporting tool ● Our own system to control our infrastructure ● A custom monitoring tool
  • 23. Some Inputs ● Server logs ● Firewalls ● User activity ● WAF ● Databases ● Netflow ● Load Balancers ● DNS ● Honeypots ● Sflow ● IDS ● IPS ● Switches ● Routers ● Applications ● Storage ● Openldap ● Cloud logs ● etc.. If it can log, you can collect it.
  • 24. Delivery - Shipper - Broker - Tagging - Storage Delivery ● syslog, syslog-ng, rsyslog, nxlog, lumberjack ● Centralization all of the logs in one place ● Not just for shipping, you will need to keep them ● Consider some redundancy for fail over ● Not the same as shipping
  • 25. Delivery - Shipper - Broker - Tagging - Storage Meet the event An sflow event: Oct 23 18:59:40 my-host sflow: FLOW,10.10.10.10,137,0,0020cbba0000, 00003e001111,0x0800,1,1,23.23.109.234,172.10.10.10,6,0x00,45,12345,80,0 x18,336,318,1600
  • 26. Delivery - Shipper - Broker - Tagging - Storage Shipper We are here! The Logstash Book Version: v1.4.2.1
  • 27. Delivery - Shipper - Broker - Tagging - Storage Logstash ● Great as a shipper or indexer ● Awesome community and flexibility ● Allows tagging, metrics, hundreds of inputs and outputs ● Lots of codecs for encoding/decoding input/output ● You can generate actions based on events
  • 28. Delivery - Shipper - Broker - Tagging - Storage Broker The Logstash Book Version: v1.4.2.1 We are here!
  • 29. Delivery - Shipper - Broker - Tagging - Storage Broker ● We use Redis, but there are other options ● Allows for a better parallelization of event indexing ● At least 2 nodes for redundancy ● Buffer in case of failure (size the ram accordingly)
  • 30. Delivery - Shipper - Broker - Tagging - Storage Tagging The Logstash Book Version: v1.4.2.1 We are here!
  • 31. Delivery - Shipper - Broker - Tagging - Storage Logstash Inputs ● How to get events to logstash ● Many different plugins to use ● Lumberjack -> Logstash default shipper ● In this case the redis input is enough input { redis { host => "10.0.0.1" type => "redis-input" data_type => "list" key => "logstash" } }
  • 32. Delivery - Shipper - Broker - Tagging - Storage Logstash Filters ● They can help you parse, tag and modify events on the fly ● GROK => Replacing regex with names ● You can build your own custom GROK patterns ● Other useful filters such as Metrics, Geoip, DNS, Anonymize, Date, etc.. filter { grok { pattern => "% {SYSLOGTIMESTAMP:date}...% {HOSTNAME:srcip},%{HOSTNAME: dstip}...%{NUMBER:srcport},%{NUMBER: dstport}..." } geoip { source => "dstip" target => "dst_geo" fields => ["country_code2"] } dns { resolve => [ "@dns"] action => "replace" } }
  • 33. Delivery - Shipper - Broker - Tagging - Storage Logstash Outputs ● Most famously elasticsearch ● tcp, exec, email, statsd, s3.. output{ elasticsearch_http { index => "logstash-%{+yyyy-MM-dd}-%{type}" host => "localhost" flush_size => 5000 workers => 5 } } ● Can be used to spawn alerts (send me an email when a user logs in) ● Different outputs based on the type is possible
  • 34. The event in logstash { …. "inputport":"137", "outputport":"0", "srcmac":"0020cbba0000", "dstmac":"00003e001111", "invlan":"1", "outvlan":"1", "packetsize":"336", "srcip":"172.10.10.10", "dstip":"23.23.80.130", "dns":"ekoparty.org", "srcport":"12345", "dstport":"80", "dst_geo":{ "country_code2":"US" } } Delivery - Shipper - Broker - Tagging - Storage
  • 35. Delivery - Shipper - Broker - Tagging - Storage Storage The Logstash Book Version: v1.4.2.1 We are here!
  • 36. Delivery - Shipper - Broker - Tagging - Storage Elasticsearch ● JSON data store built on top of Apache Lucene ● Documents divided in indices, and those in shards ● Allows replication and scales amaizingly! ● Search Billions of records in seconds ● Great support for ELK
  • 37. Delivery - Shipper - Broker - Tagging - Storage Elasticsearch for Bulk Indexing ● We are talking of hundreds of millions of events per day ● Daily or hourly indices, increase refresh time ● Watch out for the bulk thread pool and caches ● Give most of the ram to the jvm ● Every setup is different
  • 38. Delivery - Shipper - Broker - Tagging - Storage The event in ElasticSearch { "_index":"logstash-2014-10-23-sflow", "_type":"sflow", "_id":"JKWMv9J2T767IjxyasWjZw", … "_source":{ "message":"Oct 23 18:59:40 mihost sflow: FLOW,10.5.4.11,137,0,0020cbbbb000,00003eee1111,0x0800,1,1,10.10.10.100,10.10.10.10,6,0x00,45,80,14887,0x18,336,318,1600", "@timestamp":"2014-10-23T18:59:40.000-04:00", "@version":"1", …. }, "sort":[ 1414105180000 ] }
  • 39. Delivery - Shipper - Broker - Tagging - Storage Elasticsearch Security ● Insecure by default (slowly changing) ● Jetty or elasticsearch-http-basic plugins ● Nginx or node.js proxy in front of kibana (and log all the requests) ● Segmentation is the best bet yet to secure the cluster
  • 40. Delivery - Shipper - Broker - Tagging - Storage What Elasticsearch is not for ● Not a primary data store ● There are no transactions, you might lose some data ● Few tools to help with reporting besides kibana ● Not stable enough (yet)
  • 41. Delivery - Shipper - Broker - Tagging - Storage Backup ● Filesystem replicas (hardware problems) ● Filesystem snapshots (human mistakes) ● External backup of your raw logs (total disaster) ● Int/Ext backup of you ES indices (to avoid reindexing)
  • 42. Delivery - Shipper - Broker - Tagging - Storage Archiving ● Hadoop ○ Open source! ○ Process large amounts of data ○ Distributed process & storage ○ Highly scalable (linearly) & fault tolerant ○ SQL language (with Hive or Impala) ● Excellent to store all our data in a queryable way!
  • 43. Visualization ● Kibana! ● User browser connects to ES ● Charts / geo / details / etc ● Click to browse logs ● Timelines ● “Google” your logs
  • 44. Visualization (2) ● For cluster state ○ ElasticHQ (free) ○ Marvell (commercial)
  • 45. Reporting ● Avoid crons ● Hadoop is better than ElasticSearch for reporting
  • 46. Controlling your infrastructure Everything is working, right?
  • 47. Are you sure they are working?
  • 48. Prepare for failure ● Skitter ○ Most components will fail sometimes ○ Don’t just alert. Fix it if possible. ○ Sometimes you can just check the end of the flow. ○ If you are not controlling it, you can’t depend on it.
  • 49. Alerts ● Inline ○ Attaching to the logs (Logstash / Syslog-ng) ○ Less flexibility ○ As you grow your correlation will decrease ● Batch ○ “Near real time” ○ The power of elasticsearch at your disposal ○ Great correlation capabilities (has this happened in the last 6 months?) ○ Creating rules for behaviour not actions
  • 50. Alerts ● Weaver ○ Modular approach ○ Tie behaviour from multiple sources ○ What would a hacker do? (nmap|nc) & cat /etc/passwd = Alert ○ Reduce false positives with statistics ○ There are services that can call you!
  • 51. Example of an Alert (1) ● We look for connections to countries outside AR for this period of time { "query":{ "filtered":{ "query":{ "match_all":{ } }, "filter":{ "and":[ { "bool":{ "must":{ } }, "should":{ }, "must_not":{ "regexp": { "country_code2":"AR" } } } }, { "range":{ "@timestamp":{ "from":"2014-10-12T12:20:45-03:00", "to":"2014-10-12T12:26:45-03:00" } } } ] } } } } }
  • 52. Example of an Alert (2) ● Guess who we found: { "_index":"logstash-2014-10-23-sflow", "_type":"sflow", "_id":"JKWMv9J2T767IjxyasWjZw", … "_source":{ …. "srcip":"172.10.10.10", "dstip":"23.23.80.130", "dns":" ekoparty.org", ... "dst_geo":{ "country_code2":"US" } }, "sort":[ 1414105180000 ] }
  • 53. Example of an Alert (3) ● We check if this connection has happened in the last 3 months { "query":{ "filtered":{ "query":{ "match_all":{ } }, "filter":{ "and":[ { "bool":{ "must":{ "srcip":"172.10.10.10”,"dstip":"23.23.80.130" } }, "should":{ }, "must_not":{ } } }, { "range":{ "@timestamp":{ "from":"2014-07-12T12:19:45-03:00", "to":"2014-10-12T12:26:45-03:00" } } } ] } } } } }
  • 54. Example of an Alert (4) ● Our result is: [] => Nothing
  • 55. Example of an Alert (5) ● We now check what users and commands happened in that timeframe in that server for evidence to attach to the alert { "query":{ "filtered":{ "query":{ "match_all":{ } }, "filter":{ "and":[ { "bool":{ "must":{ } }, "should":{ }, "must_not":{ "regexp": { “host”:”172.10.10.10” } } } }, { "range":{ "@timestamp":{ "from":"2014-10-12T12:20:45-03:00", "to":"2014-10-12T12:26:45-03:00" } } } ] } } } } }
  • 56. Example of an Alert (6) ● We find different users and commands and we don’t alert since a user from the group networking had a command which includes as the argument the address resolved by the dns filter : { .... "xhost": "54.191.133.118", "realuser": "web", "group": "apache", "command": "ls" } { .... "xhost": "54.191.133.118", "realuser": "net", "group": "networking", "command": "wget http://www.ekoparty. org/charlas-2014.php? a=2014&c=green&m=176" }
  • 57. So how does this look like?
  • 58.
  • 60. outro
  • 61. what’s next? ● Massive IDS (in verbose mode for network behavior) ● Machine Learning ● Behavior patterns (thresholds and trends) ● IOCs
  • 62. biblio & references ● https://github.com/89berner/Monitor ● The Logstash Book by James Turnbull ● elastichsearch.org
  • 63. greetings ● Audience ● Ekoparty staff ● Meli’s SegInf Team
  • 65. thank you! Contact us! 89berner@gmail.com / @89berner hernancostante@gmail.com / @hachedece we’re hiring ;)