Souufiann/HEMIPSystem
GitHub: Souufiann/HEMIPSystem
企业级混合主机入侵检测与防御系统,通过容器化后端与 Windows 原生代理的分离架构,实现端点实时监控、威胁情报分析和主动防火墙阻断。
Stars: 1 | Forks: 0
# 🛡️ HEMIPSystem (混合端点监控与入侵防御系统)
一款企业级、高性能的混合基于主机的入侵检测与防御系统 (HIDS/IPS)。HEMIPSystem 秉持 DevSecOps 原则,将消耗大量资源的威胁情报核心(完全通过 Docker 容器化)与开销极低的端点监控代理(原生 Windows 可执行环境)分离开来。
该平台的特点是在端点本地运行优化的 **Edge-AI 启发式引擎**,实现闪电般的零日漏洞预过滤,并配合中央微服务后端,提供跨重启的持久化数字签名缓存、基于时间索引的 SQL 日志记录以及实时的安全可观测性。

## ✨ 系统功能与性能工程
* **容器化非对称后端:** 构建于异步 Python/Flask 微容器引擎之上,使用 **Docker** 和 **Docker Compose** 部署,提供即时、与操作系统无关的配置。
* **Edge-AI 启发式评分:** 客户端探针在本地评估实时的多向量风险(例如,不受信任的用户存储路径、非标准化的出站端口、缺失的数字签名以及“就地取材”身份冒充向量)。
* **零信任 Token 认证:** 遥测通信管道通过非对称的 `Bearer Token` 认证标头 (`AGENT_SECRET_KEY`) 进行严格加固,以消除恶意数据注入或遥测日志欺骗。
* **有状态签名缓存:** 通过将已验证的二进制加密指纹保存到可在主机重启后留存的本机磁盘序列化注册表 (`signature_cache.json`) 中,大幅减少高开销的 Windows 子 Shell (PowerShell Authenticode) 调用。
* **优化的数据库索引:** 在日志时间戳层之上引入结构化数据库索引。图聚合工作流以 $O(1)$ 的恒定速度持续计算指标,而不是随着历史记录的增长线性 ($O(n)$) 读取数据库。
* **主动 IPS (入侵防御):** 与主机网络堆栈原生交互,并调用动态 PowerShell 自动化链,在突破关键风险阈值时配置实时的 **Windows Defender 防火墙出站阻止规则**。
* **可观测性仪表板:** 提供由 `Chart.js` 驱动的流畅、实时流式传输的 Web UI,在网络基础设施中追踪安全与危险连接向量,并配有实时的安全审计日志。
## 🏗️ 架构拓扑
1. **服务器核心 (后端 / Docker化):**
* 处理传入的已验证 payload,并负责全局情报路由。
* 将关系型数据库 (`threat_cache.db`) 隔离在挂载的持久化数据卷中。
* 将下游的外部查询代理到全球威胁情报提供商 (AbuseIPDB V2 REST API),应用激进的 24 小时时间缓存以严格遵守 API 速率限制。
2. **端点探针 (Windows 原生代理):**
* 以提升的管理员权限静默运行,使用 `psutil` 映射活动的网络 Socket 绑定。
* 利用隐藏的创建标志 (`0x08000000`) 生成孤立的隐藏后台子 Shell,以查询二进制加密状态标志,而不会中断用户工作区。
* 触发即时的原生修复工作流和告警机制。
## 🚀 部署与安装蓝图
### 第 1 部分:中央服务器部署 (DevOps 基础设施)
**前置条件:** 在管理服务器上配置好 Docker 和 Docker Compose(推荐使用 Linux/Ubuntu,但也完全支持 Windows/macOS 环境)。
1. 导航至中央服务器的配置目录:
cd server/
2. 配置您的环境变量。生成一个强健且不可预测的加密 Token 字符串(例如,通过 `python -c "import secrets; print(secrets.token_hex(32))"`)并创建一个 `.env` 文件:
ABUSEIPDB_API_KEY=your_private_abuseipdb_api_key_here
THREAT_THRESHOLD=20
CACHE_EXPIRY_DAYS=1
AGENT_SECRET_KEY=your_securely_generated_token_string
3. 启动容器化的微服务基础设施:
docker-compose up --build -d
4. 打开 Web 浏览器并访问以下实时仪表板以验证服务运行状况:`http://localhost:5000`
### 第 2 部分:端点节点安装 (原生 Windows)
**前置条件:** Windows 10/11 工作站、纯净的 Python 3.10+ 安装环境,以及提升的 **管理员权限** (嵌入防火墙钩子必需)。
1. 进入代理模块工作区并下载所需的轻量级追踪依赖项:
cd agent/
pip install psutil requests python-dotenv plyer
2. 在 `agent/.env` 中建立您的本地参数变量。密钥认证 Key **必须与**服务器上配置的完全一致:
SERVER_API_URL=http://:5000/api/evaluate
AGENT_SECRET_KEY=your_securely_generated_token_string
*(如果您的 Docker 主机部署在单独的网络节点上,请将 `` 替换为该主机的实际 IP 地址)。*
3. 使用提升的管理员控制台启动后台监控探针(以管理员身份运行):
python agent.py
## 💻 运行手册与使用说明
1. **持续审计:** 初始化后,代理将持续循环检查活动的 Socket。如果未签名的二进制文件绑定到外部地址,系统将计算其本地启发式签名。
2. **遥测上传:** 可疑指标上下文将绕过本地限制,并通过加密的 Bearer Auth 链路上报到 Docker 集群。后端会记录该事件,并立即将更新流式传输到 Web 图表。
3. **主动修复:** 当确认状态为 `DANGEROUS` 或本地阈值突破关键边界时,将触发桌面通知。确认提示后将运行即时的后台阻止指令:
New-NetFirewallRule -DisplayName "EDR_IPS_BLOCK_IP" -Direction Outbound -Action Block -RemoteAddress X.X.X.X
这将立即切断与不受信任基础架构的出站连接。
## ⚠️ 防御性声明与免责声明
本平台严格仅出于教育目的、教学安全研究和企业系统审计而开发。自动将运行时修改规则注入主机操作系统防火墙会引入操作网络风险。在扩展部署模型之前,请务必确保对基础设施目标进行了适当的审查。软件开发者对操作网络中断或停机不承担任何责任。
标签:AI合规, DevSecOps, Docker, Flask, HIDS, 上游代理, 入侵防御系统, 威胁猎捕, 安全防御评估, 版权保护, 知识库安全, 端点安全, 补丁管理, 请求拦截, 逆向工具