审校 | 重楼
(资料图)
51CTO读者成长计划社群招募,咨询小助手(微信号:TTalkxiaozhuli)
使用ELK检测主机黑客攻击企图是增强企业安全态势的一种有效方法。ELK提供了日志收集、解析、存储、分析和警报功能的强大组合,使企业能够实时检测和响应主机黑客攻击企图。
1、什么是SIEM?安全信息和事件管理(SIEM)是一个软件解决方案,可以实时分析由网络硬件和应用程序产生的安全警报。SIEM从网络设备、服务器和应用程序等多个来源收集日志数据,然后对这些数据进行关联和分析,以识别安全威胁。
SIEM通过提供跨整个IT基础设施的安全事件的集中视图,可以帮助企业改进其安全态势。它允许安全分析人员快速识别和响应安全事件,并为合规性目的提供详细的报告。
SIEM解决方案的一些关键特性包括:
(1)日志收集和分析。
(2)实时事件关联和警报。
(3)用户和实体行为分析。
(4)威胁情报整合。
(5)合规性报告。
SIEM通常与其他安全解决方案(例如防火墙、入侵检测系统和防病毒软件)一起使用,以提供全面的安全监控和事件响应功能。
2、什么是ELK?ELK是一组用于日志管理和分析的开源软件工具的缩写:Elasticsearch、Logstash和Kibana。
Elasticsearch是一个分布式搜索和分析引擎,可以快速搜索,高效存储大量数据。它可以进行扩展,能够实时处理大量查询和索引操作。
Logstash是一个数据收集和处理工具,允许用户从多个来源(例如日志文件、syslog和其他数据源)收集日志和其他数据,并在将数据发送到Elasticsearch之前对其进行转换和丰富。
Kibana是一个基于Web的用户界面,允许用户可视化和分析存储在Elasticsearch中的数据。它提供了一系列交互式可视化,例如折线图、柱状图和热图,以及仪表板和警报等功能。
这三个工具一起构成了ELK这个强大的平台,用于管理和分析日志和其他类型的数据,通常称为ELK堆栈或弹性堆栈。ELK堆栈广泛用于IT运营、安全监控和业务分析,以从大量数据中获得见解。
3、将SIEM数据输入ELK对于希望将SIEM的安全事件管理功能与ELK的日志管理和分析功能结合起来的企业来说,将SIEM数据输入ELK堆栈非常有用。
以下是将SIEM数据输入ELK的高级步骤:
(1)配置SIEM将日志数据发送到Logstash,这是ELK堆栈的一部分。
(2)创建一个Logstash配置文件,定义SIEM数据的输入、筛选器和输出。
(3)启动Logstash并验证它正在正确地接收和处理SIEM数据。
(4)配置Elasticsearch以接收和存储SIEM数据。
(5)创建Kibana可视化和仪表板来显示SIEM数据。
以下是一个Logstash配置文件的例子,它接收来自SIEM的Syslog消息,并将它们发送到Elasticsearch:
Python1 input {2 syslog {3 type => "syslog"4 port => 55145 }6 }7 filter {8 if [type] == "syslog" {9 grok {10 match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }11 add_field => [ "received_at", "%{@timestamp}" ]12 add_field => [ "received_from", "%{host}" ]13 }14 }15 }1617 output {18 elasticsearch {19 hosts => ["localhost:9200"]20 index => "siem"21 }22 }
一旦Logstash配置并运行,SIEM数据将被输入Elasticsearch,并可以在Kibana中进行可视化和分析。确保适当的安全措施到位以保护SIEM和ELK环境,并监控和警报任何安全事件是很重要的。
4、检测主机黑客攻击在ELK中使用SIEM检测主机黑客攻击企图涉及监视和分析系统日志和网络流量,以识别可能表明黑客攻击企图的可疑活动。以下是在ELK中使用SIEM设置主机黑客攻击企业检测的一些步骤:
配置主机,将系统日志和网络流量发送到集中的日志收集系统。
设置Logstash来接收和解析来自主机的日志和网络流量数据。
配置Elasticsearch存储解析后的日志数据。
使用Kibana分析日志数据并创建仪表板和警报,以识别潜在的黑客尝试。
以下是一些可用于检测主机黑客企图的特定技术:
监控失败的登录尝试:从单个IP地址寻找重复失败的登录尝试,这可能表明是暴力攻击。使用Logstash来解析失败登录事件的系统日志,并创建Kibana仪表板或警报来监控过多的失败登录尝试。监控可疑网络流量:查找可疑网络流量或者来自已知恶意IP地址或域的网络流量。使用Logstash解析网络流量数据并创建Kibana仪表板或警报来监视可疑的流量模式。监视文件系统更改:查找对系统文件或设置的未经授权的更改。使用Logstash解析文件系统更改事件,并创建Kibana指示板或警报来监视未经授权的更改。监视可疑的进程活动:查找正在以较高权限运行的进程或正在执行异常操作的进程。使用Logstash解析流程事件并创建一个Kibana仪表板或警报来监视可疑的流程活动。通过实现这些技术并定期监控日志和网络流量,企业可以提高他们在ELK中使用SIEM检测和响应主机黑客攻击企图的能力。
5、在ELK中配置警报以检测主机黑客攻击企图要在ELK中配置警报以检测主机黑客攻击企图,用户可以遵循以下常规步骤:
(1)在Kibana中创建一个搜索查询,过滤主机黑客攻击企图的日志。例如,用户可以使用以下搜索查询来检测失败的登录尝试:
Python1 from elasticsearch import Elasticsearch23 es = Elasticsearch()45 search_query = {6 "query": {7 "bool": {8 "must": [9 {10 "match": {11 "event.dataset": "auth"12 }13 },14 {15 "match": {16 "event.action": "failed_login"17 }18 }19 ]20 }21 }22 }2324 res = es.search(index="siem", body=search_query)2526 for hit in res["hits"]["hits"]:27 print(hit["_source"])
(2)创建搜索查询后,将其保存为Kibana saved search。
(3)进入Kibana Kibana警报和操作界面,创建一个新的警报。选择在第2步中创建的保存的搜索作为警报的基础。
(4)将警报配置为当满足某个阈值时触发。例如,可以将警报配置为在5分钟窗口内有超过5次失败的登录尝试时触发。
(5)配置警报,在触发时发送通知,例如电子邮件或Slack消息。
(6)测试警报,以确保其工作如预期。
一旦配置了警报,它将在检测到主机黑客尝试事件时自动触发,例如登录尝试失败。这可以帮助企业高效地检测和响应安全威胁。定期检查和更新警报以确保它们检测到最相关和最重要的安全事件是很重要的。
结论使用ELK检测主机黑客企图是增强企业安全态势的一种有效方法。ELK提供了日志收集、解析、存储、分析和警报功能的强大组合,使企业能够实时检测和响应主机黑客攻击企图。
通过监视系统日志和网络流量,并使用高级搜索查询和警报机制,ELK可以帮助企业检测广泛的主机黑客攻击企图,包括失败的登录尝试、可疑的网络流量、文件系统更改和可疑的进程活动。
使用ELK实现健壮的主机黑客攻击企图检测策略需要仔细的规划、配置和测试。比如,使用正确的专业知识和工具,企业可以创建一个全面的安全监控系统,提供对网络的实时可见性,改善事件响应时间,并帮助在安全漏洞发生之前进行预防。
原文链接:https://dzone.com/articles/host-hack-attempt-detection-using-elk