sarthakitgit/GHOSTWATCH

GitHub: sarthakitgit/GHOSTWATCH

一个纯 Python 标准库构建的零依赖跨平台统一威胁狩猎与安全态势控制台,集成了 CIS 审计、MITRE ATT&CK 日志狩猎、恶意软件扫描、蜜罐监控和取证报告等功能。

Stars: 0 | Forks: 0

# GHOSTWATCH
![Python](https://img.shields.io/badge/Python-3.x-00ff41?style=for-the-badge&logo=python&logoColor=white) ![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20Linux%20%7C%20Android-00d4ff?style=for-the-badge) ![Dependencies](https://img.shields.io/badge/Dependencies-ZERO%20pip%20installs-ff2244?style=for-the-badge) ![License](https://img.shields.io/badge/License-MIT-39ff14?style=for-the-badge) ![Status](https://img.shields.io/badge/Status-Active-00ff41?style=for-the-badge) **完全基于 Python stdlib 构建的统一威胁狩猎与安全态势控制台。** *无需 pip。无需依赖。可在 Windows、Linux 和 Android (Pydroid 3) 上运行。*
## 🔥 什么是 GHOSTWATCH? GHOSTWATCH 是一个**单文件 Python 安全工具**,无需安装 Python 本身以外的任何东西,即可为您提供真实的 SOC 分析师风格界面。它使用 `tkinter` 和纯 stdlib 构建 —— 没有 NumPy,没有 Pandas,也没有 pip。 它被设计为一个**作品集项目**,旨在展示在以下方面的实践知识: - CIS Benchmark 审计 - MITRE ATT&CK 威胁映射 - YARA 风格的恶意软件检测 - 网络端口情报 - 取证报告 ## ✨ 功能 ### 🖥️ 仪表盘 - **实时威胁评分仪表盘** — 动画式 0–100 指针仪表盘,带有颜色编码(绿色 → 琥珀色 → 红色) - **强化评分仪表盘** — 根据 CIS 审计结果计算的加权合规分数 - **6 个态势卡片** — 合规率、活动威胁、隔离数量、蜜罐状态、网络连接、总警报数 - **动态脉冲指示器** — 存在活动警报时闪烁红光 - **近期活动源** — 带有时间戳的事件流 ### 🔐 CIS Benchmark 审计器 - 8 个基于 CIS 启发的控制项,具有**加权评分**(每个控制项包含相应的分值) - 每个控制项均映射到特定的 **MITRE ATT&CK 技术 ID** - 检查范围涵盖:文件系统权限、开放端口、敏感文件访问、可疑进程、临时可执行文件、审计日志、hosts 文件完整性,以及**环境变量机密扫描** - 针对每项发现提供完整的修复指南 - 审计期间提供实时进度条 ### 🎯 MITRE ATT&CK 威胁狩猎引擎 - **15 个 ATT&CK 模式签名**,涵盖凭证访问、执行、持久化、权限提升、防御规避、发现、C2、数据外渗和影响 - 粘贴原始日志行或加载任何 `.log / .txt / .evtx / .csv` 文件 - 扫描实时系统日志(`/var/log/auth.log`、`/var/log/syslog`、Windows Security EventLog) - 按严重程度过滤结果:CRITICAL / HIGH / MEDIUM / LOW - 每次命中都会更新威胁评分和警报计数器 ### 🦠 YARA-Lite 恶意软件扫描器 - **12 条 YARA-lite 二进制模式规则**,涵盖 shellcode、Meterpreter、Cobalt Strike、webshell、键盘记录器、加密挖矿木马、UPX 加壳二进制文件等 - 计算每个文件的 SHA-256、MD5 和 SHA-1 哈希值 - 恶意哈希数据库查询(可扩展) - 检测到后自动隔离 —— 将标记的文件移动到 `GW_Quarantine/` 目录,并添加 `.isolated` 扩展名 - 支持扫描单个文件或整个目录树,并带有进度条 ### 🌐 网络监控器 - 扫描 **25+ 个端口**,内置威胁情报数据库 - 每个端口的上下文信息:服务名称、风险等级和具体安全说明 - 示例:端口 6379 → `Redis — 默认无认证,存在 RCE 风险` - 摘要卡片:总开放数、高风险数、严重风险数、主机名 - 点击任意端口获取推荐的修复操作 - 将网络报告导出为 JSON 格式 ### 🔑 密码熵值分析器 - 基于字符池大小 × 密码长度的真实熵值计算 - 惩罚机制:常见违规列表(50 个密码)、重复字符、字典模式 - **GPU 破解时间估算**(基于每秒 100 亿次猜测的速度) - 输入时显示实时强度条和字符类指示器 - 加密强度极高的密码生成器(20 个字符,使用 `secrets` 模块) - 强度标签:CRITICAL / WEAK / FAIR / STRONG / EXCELLENT ### #️⃣ 多算法哈希工具 - 同时计算 MD5、SHA-1、SHA-256 和 SHA-512 - 对任意**文本输入**或**文件**进行哈希计算 - 针对本地威胁数据库进行内置恶意哈希查询 - 取证工作流:从 VirusTotal 粘贴哈希值并立即检查 ### 🍯 蜜罐金丝雀监控器 - 部署一个诱饵配置文件,其中包含伪造的凭证、API 密钥和 SSH 密钥 - 使用 `os.path.getmtime()` 轮询文件修改情况 —— 无需 inotify 依赖 - 可配置的轮询间隔(2–60 秒) - 触发时:向控制台发出警报,威胁评分提升 +30,自动隔离金丝雀文件 - `[ DETONATE TEST ]` 按钮,用于模拟攻击者触碰文件的行为 ### 📋 安全控制台 - 带有完整时间戳的会话事件日志 - 按严重程度过滤:ALL / CRITICAL / ERROR / WARNING / SUCCESS / INFO - 将完整的取证报告导出为 **JSON**(结构化、机器可读)或**纯文本** - 报告内容包括:CIS 发现、威胁狩猎命中、网络扫描、完整事件日志、威胁评分、强化评分 ## 🚀 快速开始 ### 需求 ``` Python 3.6+ (tkinter included in standard install) No pip installs required. ``` ### 在 Windows / Linux 上运行 ``` python ghostwatch.py ``` ### 在 Android (Pydroid 3) 上运行 1. 从 Play Store 安装 **Pydroid 3** 2. 将 `ghostwatch.py` 复制到您的设备 3. 在 Pydroid 3 中打开并点击 Run ## 📁 项目结构 ``` ghostwatch.py ← Entire application (single file, ~2000 lines) GW_Quarantine/ ← Auto-created on first run; quarantined files go here GHOSTWATCH_CANARY_DECOY.cfg ← Honeypot decoy file (created when you deploy) GHOSTWATCH_Report_*.json ← Exported forensic reports GHOSTWATCH_Report_*.txt ← Exported plain-text reports ``` ## 🗺️ 架构 ``` ┌─────────────────────────────────────────────────────────┐ │ GhostWatch │ ├──────────┬──────────┬──────────┬──────────┬─────────────┤ │ CIS │ MITRE │ YARA │ NetMon │ Password │ │ Auditor │ Hunter │ Scanner │ (new) │ Analyzer │ │ │ │ │ │ (new) │ ├──────────┴──────────┴──────────┴──────────┴─────────────┤ │ Multi-Hasher (new) │ Honeypot │ Quarantine Engine │ ├─────────────────────┴────────────┴──────────────────────┤ │ Threat Score Engine (0–100) │ │ Weighted Hardening Score Engine │ ├─────────────────────────────────────────────────────────┤ │ Forensic Export (JSON + Plain Text) │ └─────────────────────────────────────────────────────────┘ stdlib only · zero pip ``` ## 🧠 展示的安全概念 | 概念 | 实现 | |---|---| | CIS Benchmark | 8 个控制项,加权评分,通过/失败/警告 | | MITRE ATT&CK | 15 个映射到战术/技术 ID 的技术签名 | | YARA Rules | 通过 Python `re` 和 `bytes` 实现的 12 个二进制模式签名 | | Threat Scoring | 跨所有模块的累积风险评分 | | Canary Files | 蜜罐部署 + 基于轮询的篡改检测 | | Quarantine | 文件隔离,添加 `.isolated` 扩展名 | | Password Security | Shannon 熵、违规检测、GPU 破解时间 | | Network Intel | 服务指纹识别、按端口分类的风险分级 | | Forensic Reporting | 结构化 JSON + 人类可读的文本导出 | | Cross-platform | Windows / Linux / Android,具有感知平台特性的代码路径 | ## 🔒 MITRE ATT&CK 覆盖范围 | 战术 | 技术 | 描述 | |---|---|---| | Credential Access | T1110 | 暴力破解 / 密码喷洒 | | Credential Access | T1003 | LSASS 转储 / 凭证文件访问 | | Privilege Escalation | T1548 | sudo / setuid / pkexec 滥用 | | Command & Control | T1105 | 远程文件下载 / 暂存 | | Execution | T1059 | 反向 shell / 绑定 shell 模式 | | Execution | T1218 | LOLBin 滥用 (rundll32, mshta, wscript) | | Persistence | T1053 | 创建计划任务 | | Defense Evasion | T1027 | 混淆 / 编码命令 | | Defense Evasion | T1562 | 安全工具 / 防火墙篡改 | | Discovery | T1046 | 网络端口扫描 | | Discovery | T1033 | 系统所有者枚举 | | Exfiltration | T1048 | 数据外渗指标 | | Impact | T1485 | 数据销毁命令 | | Impact | T1486 | 勒索软件 / 文件加密 | ## 📊 CIS 控制项映射 | 控制项 | 类别 | 严重程度 | 权重 | MITRE | |---|---|---|---|---| | CIS-1.1 World-Writable Dirs | Filesystem | HIGH | 15pts | T1083 | | CIS-2.1 Open Listening Ports | Network | MEDIUM | 20pts | T1046 | | CIS-3.1 Sensitive File Perms | Authentication | CRITICAL | 25pts | T1003 | | CIS-4.1 Suspicious Processes | Processes | HIGH | 20pts | T1059 | | CIS-5.1 Temp Dir Executables | Filesystem | MEDIUM | 10pts | T1036 | | CIS-6.1 Audit Log Availability | Logging | MEDIUM | 10pts | T1562 | | CIS-7.1 Hosts File Integrity | Network | LOW | 5pts | T1557 | | CIS-8.1 Environment Secrets | Environment | HIGH | 15pts | T1552 | ## 🛠️ 扩展 GHOSTWATCH ### 添加 MITRE 模式 ``` # 在 MITRE_PATTERNS 列表中: (r"(?i)(your_regex_here)", "Tactic Name", "T1XXX", "HIGH", "Human-readable description"), ``` ### 添加 YARA 规则 ``` # 在 YARA_RULES 列表中: ("RULE_NAME", b"binary_pattern_bytes", "Description of what it detects"), ``` ### 添加恶意哈希 ``` # 在 MALICIOUS_HASHES 字典中: "sha256_hash_here": "Malware family name", ``` ### 添加 CIS 检查 ``` # 在 CIS_CHECKS 列表中: { "id": "CIS-9.1", "title": "Your Check Title", "category": "Category", "severity": "HIGH", "check": lambda: your_check_function(), "remediation": "How to fix it", "mitre": "T1XXX", "weight": 15 } ``` ## ⚠️ 免责声明 GHOSTWATCH 是为**教育和作品集目的**而构建的。它演示了如何使用 Python stdlib 实现安全概念。它不能替代企业级安全工具(CrowdStrike、Splunk、Wazuh 等)。 在对您不拥有的任何系统运行安全扫描之前,请务必获得**明确的书面许可**。 ## 👤 作者 **Sarthak Bijam** 信息技术专业文凭 [![LinkedIn](https://img.shields.io/badge/LinkedIn-Connect-0077b5?style=flat-square&logo=linkedin)](https://linkedin.com/in/sarthak-bijam-918087362) [![GitHub](https://img.shields.io/badge/GitHub-Follow-181717?style=flat-square&logo=github)](https://github.com/sarthakitgit) ## 📄 许可证 MIT License — 免费使用、复刻和二次开发。感谢提及来源。
*使用 Python stdlib 构建 · 零依赖 · 跨平台* *如果这对您有帮助,请点亮一个 ⭐ —— 这对我意义重大。*
标签:HTTP工具, YARA, 主机合规审计, 云资产可视化, 安全态势感知, 安全控制台, 网络安全审计, 逆向工具