yogi1700/FirewallX-Core

GitHub: yogi1700/FirewallX-Core

基于 Python 和 Scapy 从零构建的智能防火墙与入侵检测防御系统,通过多层检测 pipeline 和威胁评分机制实现从异常识别到自动拦截的闭环防御。

Stars: 0 | Forks: 0

# FirewallX-Core 从零开始使用 Python 构建的智能防火墙与入侵检测系统 (IDS)。 ## 🔄 系统流程 FirewallX-Core 遵循多阶段 pipeline 架构: ``` Packet Capture → Parsing → Detection → Threat Scoring → Enforcement → Logging → Summary ``` ### 1. 数据包捕获 * 使用 Scapy 捕获实时网络数据包 * 每个数据包均被实时处理 ### 2. 数据包解析 * 提取: * 源 IP * 目标 IP * 协议 (TCP/UDP) * 端口号 ### 3. 监控过滤 * 仅关注源自本机的流量 * 减少来自外部网络流量的干扰 ### 4. 检测层 (IDS) 应用了多种异常检测技术: * **速率检测** 在短时间窗口内检测突发流量 * **主机扫描检测** 检测与多个目标 IP 的通信(可能是网络侦察) * **端口扫描检测** 检测来自单一源对多个端口的访问 * **重复拦截检测** 识别来自同一源的重复被拦截流量 ### 5. 威胁评分系统 每个检测到的事件都会累加到综合威胁评分中: * 重复拦截 → +2 * 速率告警 → +3 * 主机扫描 → +3 * 端口扫描 → +4 ### 6. 威胁级别 根据累积的分数划分: * LOW (低危, 0–3) * MEDIUM (中危, 4–6) * HIGH (高危, 7–9) * CRITICAL (严重, 10+) ### 7. 规则引擎 根据配置应用防火墙规则: * 拦截特定 IP * 拦截特定端口 ### 8. 执行 * 使用 Windows 防火墙 自动应用拦截规则 ### 9. 日志记录 * 所有事件均被记录以供分析 * 存储于 `logs/firewall.log` 中 ### 10. 会话摘要 显示: * 被拦截的来源 * 扫描追踪 * 目标追踪 * 速率追踪 * 威胁评分 ## 📅 进度日志 ### 第 1 天 * 安装配置 Python, Scapy, Npcap * 捕获数据包 * 提取源/目标 IP 和端口 ### 第 2 天 * 添加 TCP 过滤 * 实现基本的基于端口的拦截逻辑 ### 第 3 天 * 添加基于 IP 的过滤 * 实现对被拦截 IP 的规则检查 ### 第 4 天 * 将模块合并到 `firewall_engine.py` 中 * 构建统一的规则引擎(IP + 端口过滤) ### 第 5 天 * 添加动态 JSON 规则配置 (`rules.json`) * 将规则检查重构为函数 * 测试模拟执行行为 ### 第 6 天 * 使用 subprocess 和 netsh 添加 Windows 防火墙执行功能 * 将规则引擎的决策连接到自动响应 * 添加重复规则防止机制 ### 第 7 天 * 为防火墙事件添加日志系统 * 添加基于阈值的入侵告警检测 * 针对重复被拦截流量生成告警 * 将旧版模块重组至 `archive/src` ### 第 8 天 * 添加基本端口扫描检测 * 添加会话摘要输出 * 添加主机扫描(侦察)检测 * 改进异常检测逻辑 ### 第 9 天 * 添加基于时间的速率检测(突发流量检测) * 通过防止重复告警改进告警系统 * 增强多层 IDS 检测 pipeline ### 第 10 天 * 添加威胁评分系统,基于多重告警评估风险 * 引入严重级别 (LOW, MEDIUM, HIGH, CRITICAL) * 跨所有检测机制整合评分 * 使用动态本地 IP 检测取代静态 IP 检查 * 添加灵活的监控系统,用于可扩展的网络分析 * 重构代码结构,提升可读性与可维护性 ### 第 11 天 * 实现自动响应系统(IPS 层) * 添加基于威胁的决策逻辑 (LOW → CRITICAL) * 在 CRITICAL 威胁级别下实现自动防火墙拦截 * 使用状态跟踪防止重复拦截 * 改进检测逻辑以支持连续评分 * 引入冷却机制以避免告警干扰 * 实现从 IDS 到 IPS 的完全过渡
标签:AMSI绕过, DDoS检测, DNS枚举, Homebrew安装, IP 地址批量处理, IP封禁, JSONLines, netsh, Python, Scapy, TCP, TCP/UDP协议, UDP, Windows防火墙, 主机扫描检测, 云计算, 入侵检测系统, 内核驱动, 威胁情报, 威胁检测, 威胁评分, 安全数据湖, 安全日志, 安全运营, 安全防护, 密码管理, 开发者工具, 异常检测, 扫描框架, 插件系统, 无后门, 流量监控, 端口封禁, 端口扫描检测, 网络协议, 网络安全, 网络安全工具, 自动化防御, 规则引擎, 逆向工具, 防御绕过, 防火墙, 隐私保护, 零信任