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





**完全基于 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**
信息技术专业文凭
[](https://linkedin.com/in/sarthak-bijam-918087362)
[](https://github.com/sarthakitgit)
## 📄 许可证
MIT License — 免费使用、复刻和二次开发。感谢提及来源。
*使用 Python stdlib 构建 · 零依赖 · 跨平台*
*如果这对您有帮助,请点亮一个 ⭐ —— 这对我意义重大。*
标签:HTTP工具, YARA, 主机合规审计, 云资产可视化, 安全态势感知, 安全控制台, 网络安全审计, 逆向工具