sgInnora/sharpeye

GitHub: sgInnora/sharpeye

基于eBPF和混合AI引擎的云原生Linux入侵检测与威胁狩猎平台。

Stars: 176 | Forks: 8

# SharpEye:第四代云原生 IDS 与威胁狩猎系统 [![状态](https://img.shields.io/badge/Status-Beta-orange)](https://github.com/sgInnora/sharpeye) [![Python](https://img.shields.io/badge/Python-3.10%2B-blue)](https://www.python.org/) [![Rust](https://img.shields.io/badge/Rust-1.75%2B-black)](https://www.rust-lang.org/) [![eBPF](https://img.shields.io/badge/Kernel-eBPF--CORE-red)](https://ebpf.io/) [![许可证](https://img.shields.io/badge/License-MIT-green)](LICENSE) [English](README.md) | [中文](SECURITY_zh.md) **SharpEye** 是一个先进的 Linux 入侵检测系统 (IDS) 和威胁狩猎平台,专为现代云原生环境设计。它利用 **eBPF (CO-RE)** 技术,从传统的基于轮询的监控转变为实时内核遥测,并由 **混合 AI/ML 引擎** 和高性能 **Rust 流处理管道** 驱动。 ## 🚀 核心特性 * **🧠 混合大脑架构**: * **规则引擎**:使用 **兼容 Sigma** 的 YAML 规则进行确定性检测(通过 `tools/sigma_converter.py` 转换)。 * **序列 AI**:利用隐马尔可夫模型 (HMM) 检测恶意命令链(例如 `curl` → `chmod` → `sh`)。 * **异常 AI**:采用无监督隔离森林算法对系统行为中的统计异常值进行检测。 * **👁️ eBPF 视觉 (Rust & Go)**: * **Probe-Rust**:利用 `sys_enter_execve` 和其他跟踪点实现高性能内核遥测。 * **无锁 SPSC**:利用自定义环形缓冲区 实现最低延迟的事件收集。 * **⚡ 流处理核心**: * 使用 Rust 构建以实现 **250k+ 事件/秒** 的吞吐量。 * 支持动态 `.so` 规则加载和热重载,实现零停机更新。 * **🕸️ 分布式编排**: * **Kubernetes 就绪**:可作为 DaemonSet 部署,内置 Prometheus 风格指标。 * **Sidecar 模式**:轻量级探针将遥测数据转发到集中式或本地 Brain。 ## 🏗️ 架构 SharpEye 遵循解耦的 **眼-脑 (Eye-Brain)** 架构: * **眼 (探针)**: * `probe-rust`:利用 eBPF 捕获系统调用 (execve, open, connect)、文件操作和网络事件的底层收集器。 * `ring_buffer`:以最小的 CPU 开销将事件从内核空间高效移动到用户空间。 * **脑 (引擎)**: * `stream-core`:基于 Rust 的管道,编排规则引擎和 AI 推理池。 * `sharpeye-python`:用于模型训练 (`train_baseline.py`)、复杂状态管理和告警生成的高级逻辑层。 ## 🛠️ 技术栈 * **语言**:Rust (核心/探针), Python (AI/ML), C (eBPF)。 * **AI/ML**:Scikit-learn (隔离森林), 自定义 HMM (序列检测)。 * **基础设施**:Docker, Kubernetes (DaemonSet), eBPF CO-RE。 * **数据序列化**:Protobuf (`proto/sharpeye.proto`), YAML (规则)。 ## 📦 安装 ### 前置条件 * Linux 内核 5.8+ (启用 BTF 以支持 CO-RE) * Rust 工具链 & Python 3.10+ * Docker & Docker Compose ### 快速开始 (构建与运行) ``` # 1. 克隆仓库 git clone https://github.com/sgInnora/sharpeye.git && cd sharpeye # 2. 构建 Rust 组件 cd probe-rust && cargo build --release cd ../stream-core && cargo build --release # 3. 安装 Python 依赖 pip install -r requirements.txt # 4. 运行 SharpEye(eBPF 需要特权模式) sudo ./install.sh # 或通过 Docker docker build -t sharpeye:latest -f Dockerfile . docker run --privileged -v /sys/kernel/debug:/sys/kernel/debug:rw sharpeye:latest ``` ## 📊 基本用法 ### 转换 Sigma 规则 SharpEye 支持标准的 Sigma 规则用于进程创建检测: ``` python3 tools/sigma_converter.py --input rules/suspicious_script.yml --output config/rules.yaml ``` ### 训练基线 为了使 SharpEye 适应您的环境,请训练 HMM 基线: ``` python3 tools/train_baseline.py ``` ### 监控告警 告警默认流式传输到 `alerts.json` 或转发到配置的 SIEM 端点。 ``` tail -f alerts.json | jq . ``` ## 🗺️ 路线图 - [x] 第一阶段:eBPF 探针原型 - [x] 第二阶段:混合 AI 引擎 - [x] 第三阶段:Rust 流核心实现 (25万 EPS) - [ ] 第四阶段:所有探针全面迁移至 eBPF CO-RE - [ ] 第五阶段:分布式威胁情报云同步 ## 🤝 贡献 我们欢迎安全社区的贡献! 1. Fork 本仓库。 2. 创建您的特性分支 (`git checkout -b feat/amazing-feature`)。 3. 提交您的更改 (`git commit -m 'feat: add some amazing feature'`)。 4. 推送到分支 (`git push origin feat/amazing-feature`)。 5. 打开一个 Pull Request。 ## 📜 许可证 根据 MIT 许可证分发。更多信息请参见 `LICENSE`。 *由 [innora.ai](https://innora.ai) 开发 - 云原生时代的高级安全方案。*
标签:Apex, CIDR扫描, DNS 解析, Docker镜像, EDR, HMM, HTTP工具, Isolation Forest, JSONLines, PB级数据处理, Python, Rust, Sidecar模式, Sigma规则, SQLite数据库, Web截图, 云计算, 人工智能, 入侵检测系统, 内核监控, 内核遥测, 可视化界面, 子域名变形, 子域名突变, 安全数据湖, 安全运维, 容器安全, 异常检测, 恶意行为检测, 无后门, 机器学习, 流式处理, 用户模式Hook绕过, 目标导入, 网络信息收集, 网络安全审计, 网络流量审计, 脆弱性评估, 规则引擎, 请求拦截, 逆向工具, 零信任, 高性能计算