Windows 主机 DFIR 分类控制台,串联工件收集、Sigma 关联时间线、YARA 扫描、套接字与账户检查、指标富化以及校准风险评分。
将 Kage 指向一台可疑的 Windows 主机,它便会在一条链中完成整个分类排查: CyLR 收集工件,Hayabusa 将事件日志与 Sigma 进行关联, THOR Lite 扫描 YARA 匹配项,VirusTotal 和 AbuseIPDB 对指标进行鉴定,而你选择的 AI 提供商会起草报告。 每个阶段都实时流式输出,将其产出封存,并且可以单独重放。```bash pip install -r requirements.txt python -m dfirconsole # → http://127.0.0.1:8787
<p align="center">
<img src="https://assets.kitploit.com/production/public/readmes/55114/7d59d87cd6f41f9d8dc66e4da743e6c6728a7156a06f9de9bdc18cdfd1fbb5cd/de22d9f23b6327fc806bbd1febb370cdca42f33eff3718eca9a0864eeb7d87e2-display-v1.webp" alt="Kage overview" width="100%">
<br><sub>概览:左侧是十一个密封步骤,执行日志
实时输出,评分拆分为四个组成部分。</sub>
</p>
---
## 📑 目录
- [安装](#-installation)
- [运行首次扫描](#-running-your-first-scan)
- [手动添加 THOR Lite](#-adding-thor-lite-manually)
- [链条](#-the-chain)
- [风险评分](#-risk-score)
- [告警](#-alerts)
- [系统上下文](#-system-context)
- [日志与审计](#-logging--audit)
- [YARA](#-yara)
- [密封](#-seals)
- [视图](#-views)
- [配置](#-configuration)
- [CLI 参考](#-cli-reference)
- [故障排除](#-troubleshooting)
- [Linux 版本](#-linux-version--in-progress)
- [致谢](#-credits)
---
## 📦 安装
### 要求
| | |
|---|---|
| 操作系统 | Windows 10 / 11 或 Windows Server |
| Python | 3.10+,来自 [python.org](https://www.python.org/downloads/),**为所有用户安装** |
| 权限 | **管理员** |
| 磁盘 | 几 GB 可用空间用于数据收集 |
### 安装```powershell
# 1. Extract Kage anywhere — Desktop, C:\Kage, a USB stick, it does not matter
cd C:\Kage
# 2. Install the dependencies
pip install -r requirements.txt
# 3. Check the environment before touching a host
python preflight.py
preflight.py 报告哪些已就绪,哪些缺失。```
Workspace : C:\Kage
System : Windows 11
Python : 3.12.3
Dependencies [ok] module fastapi [ok] module uvicorn [ok] module httpx
Rights and disk space [ok] console running as administrator [ok] free space: 84.2 GB
Tooling [!] CyLR in C:\Kage\tools\cylr → the "Locate the tooling" step downloads it [!] THOR Lite → optional step — it will simply be skipped
### 启动 — 以管理员身份```powershell
python -m dfirconsole
或者右键点击 launch.bat → 以管理员身份运行,它会为你处理
virtualenv、安装并打开浏览器。```
Kage DFIR Toolkit 1.5.0
code C:\Kage\dfirconsole
workspace C:\Kage
open http://127.0.0.1:8787
> **工作区就是你启动时所在的目录。** 无需任何配置。工具、
> 证据和输出都会落在控制台旁边。
### 先零风险试用```powershell
python -m dfirconsole --demo
演示模式会构建一次合成入侵——恶意附件、编码的 PowerShell、Defender 被禁用、凭据窃取、持久化、C2、卷影副本 被删除——并在其上运行整个链条。你机器上的任何东西都不会被触碰。 这是在真实事件发生前熟悉界面的最佳方式。
以管理员身份启动,打开 http://127.0.0.1:8787,并检查状态栏
显示的是 live run · Windows 而不是 demonstration mode。
点击 Settings:
| 字段 | 示例 | 为什么重要 |
|---|---|---|
| Case reference | INC-2026-0042 | 为报告、日志和归档命名 |
| Analyst | N. Delaunay | 出现在报告页眉上 |
将 Workspace folder 留空,它会自行跟踪启动文件夹。 点击 Save。
左列是证据链。每个步骤都有一个复选框;除 YARA 扫描外, 默认全部勾选。
首次运行时,取消勾选除以下之外的所有项:``` ☑ Prepare the workspace ☑ Exclude the folder from Defender ☑ Locate the tooling ☑ Update the Sigma rules
点击 **Run 4 steps**。大约一分钟。这会下载 CyLR 和 Hayabusa,并在任何长时间操作开始*之前*确认你的提权确实有效。
### 步骤 4 — 收集并分析
一旦这四项被密封,勾选其余项:```
☑ Collect the artefacts CyLR — a few minutes, several GB
☑ Capture the system context accounts, sockets, disk root, log coverage
☑ Build the timeline Hayabusa correlates against Sigma
☑ Analyse the timeline score, alert families, indicators
点击 Run 并观察执行日志流。每个完成的步骤都会获得一个 seal —— 一个 SHA-256,你可以稍后验证。
| 位置 | 你将获得 |
|---|---|
| Overview | 风险评分及其四个组成部分,按家族分类的告警 |
| Alerts | 所有告警,可按严重程度和家族筛选 |
| System | 账户、与进程关联的套接字、异常文件夹、日志覆盖情况 |
点击任意表格行 以打开阅读窗格:每个字段、完整命令行、所有原始数据。使用 ← → 在项目之间移动,按 Esc 关闭。
配置 API 密钥后:``` ☑ Enrich the indicators VirusTotal + AbuseIPDB reputation ☑ Write the summary the AI drafts the report
没有密钥时,两者都会被标记为*已跳过*,并生成一份**本地报告**——结构相同,但不进行网络调用。
### 步骤 7 — 导出
仪表盘右上角:
- **报告** — 可打印的 HTML,十三个编号章节,可直接导出为 PDF
- **JSON** — 完整状态,包含封条
- **日志** — 控制台产生的所有内容
> 💡 **重放单个步骤:** 双击左栏中对应的标签。当 Hayabusa 失败但采集正常时非常有用——无需重新采集两次。
---
## 🔦 手动添加 THOR Lite
YARA 扫描是 Kage **无法**为你自动配置的唯一步骤。Nextron 要求注册,因此脚本无法获取该二进制文件。CyLR 和 Hayabusa 可以自行下载;THOR 则不行。
### 1. 获取压缩包
在 [nextron-systems.com/thor-lite](https://www.nextron-systems.com/thor-lite/) 注册并下载。你会收到扫描器**和一个许可证文件**(`.lic`)——通常通过电子邮件发送。
### 2. 将其放入 `tools\thor\`
Kage 在首次启动时已经为你创建了该文件夹。将压缩包的内容复制到其中,**保持所有文件在一起**:```
C:\Kage\
└── tools\
└── thor\ ← everything goes here
├── thor64-lite.exe the scanner
├── yourname.lic the licence — THOR will not start without it
├── config\ from the archive
├── signatures\ from the archive — the YARA rules themselves
└── custom-signatures\ from the archive
为什么要将它们放在一起? THOR 从其可执行文件所在的目录运行,并相对于该目录解析其签名。仅复制二进制文件只会得到一个没有可扫描内容的扫描器。
另外两个工具位于其旁边,各自放在自己的文件夹中:```
tools
├── cylr\ CyLR.exe ← downloaded automatically
├── hayabusa\ hayabusa-.exe ← downloaded automatically
└── thor\ thor64-lite.exe + .lic ← you place this one
### 3. 验证```powershell
python preflight.py
# 扫描单个目标
python3 cve_2025_55182.py -t https://target.example.com
# 使用自定义超时时间扫描
python3 cve_2025_55182.py -t https://target.example.com --timeout 15
# 使用代理扫描
python3 cve_2025_55182.py -t https://target.example.com --proxy http://127.0.0.1:8080
# 扫描多个目标
python3 cve_2025_55182.py -f targets.txt
# 使用自定义线程数扫描
python3 cve_2025_55182.py -f targets.txt --threads 20
# 详细输出
python3 cve_2025_55182.py -t https://target.example.com -v
# 将结果保存到文件
python3 cve_2025_55182.py -f targets.txt -o results.txt
选项:
-h, --help 显示此帮助信息并退出
-t TARGET, --target TARGET
要扫描的单个目标 URL
-f FILE, --file FILE 包含目标 URL 的文件(每行一个)
--timeout TIMEOUT 请求超时时间(秒)(默认:10)
--proxy PROXY 用于请求的代理 URL
--threads THREADS 并发线程数(默认:10)
-v, --verbose 启用详细输出
-o OUTPUT, --output OUTPUT
将结果保存到文件
[+] 正在扫描: https://target.example.com
[+] 目标存在漏洞: https://target.example.com
[+] 响应时间: 2.34s
[+] 状态码: 200
该工具通过以下方式检测漏洞:
本工具仅用于教育和道德安全测试目的。未经授权访问系统是违法的。请务必:
作者对因使用此工具而导致的任何误用或损害不承担责任。
本项目根据 MIT 许可证授权 - 有关详细信息,请参阅 LICENSE 文件。
欢迎贡献!请随时提交 Pull Request。
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)⭐ 如果你觉得这个工具有用,请给仓库点个星!``` Tooling [ok] CyLR in C:\Kage\tools\cylr [ok] Hayabusa in C:\Kage\tools\hayabusa [ok] THOR Lite: C:\Kage\tools\thor\thor64-lite.exe [ok] THOR licence file (*.lic)
如果许可证行显示 `[!]`,THOR 将立即启动并停止。
### 4. 选择范围——这决定一切
**设置 → YARA 扫描文件夹:**
| 值 | 扫描内容 | 耗时 |
|---|---|---|
| *(空)* | CyLR 刚刚收集的工件 | 分钟 |
| `C:\Users\target` | 一个用户配置文件 | 分钟 |
| `C:\` | 整个系统卷 | **小时** |
在链中勾选 **YARA 扫描** 并运行它。判定结果会在文件被检查时实时显示——警报、警告、通知*以及*干净文件,每个都带有其哈希值。
**默认没有时间限制。** 三小时的扫描是一项决定,而非异常。如果你想要一个上限,可以以分钟为单位设置。
> 没有 THOR 时,该步骤会报告为*已跳过*,链会继续执行。
> 你会失去评分中的 YARA 维度——仅此而已。
---
## 🔗 链
十一个步骤。勾选你需要的,双击标签可单独重放一个步骤。
| # | 步骤 | 实际运行的内容 |
|---|---|---|
| 01 | 准备工作区 | 文件夹树、权限提升和可用空间检查 |
| 02 | 从 Defender 中排除 | `Add-MpPreference -ExclusionPath <workspace>` |
| 03 | 定位工具 | 解析并从 GitHub releases 下载 CyLR + Hayabusa |
| 04 | 收集工件 | `CyLR.exe -od evidence\ -of <case>.zip -v` |
| 05 | 捕获系统上下文 | `systeminfo` · `Get-LocalUser` · `netstat -ano` · `tasklist` · `auditpol` |
| 06 | 更新 Sigma 规则 | `hayabusa update-rules` |
| 07 | 构建时间线 | `hayabusa <csv\|dfir>-timeline -d <Logs> -o hayabusa-output.csv -r <rules>` |
| 08 | 分析时间线 | 评分、警报家族、指标提取 |
| 09 | YARA 扫描 *(可选)* | `thor64-lite.exe --nocsv -p <chosen folder>` |
| 10 | 丰富指标 | VirusTotal v3 · AbuseIPDB v2 |
| 11 | 编写摘要 | 你的 AI 提供商,或本地撰写 |
Hayabusa 子命令是从其自身的帮助输出中读取的,因此 v3(`csv-timeline`)和 v4(`dfir-timeline`)均可工作,不支持的标志会被丢弃,而不会导致命令失败。
---
## 🎯 风险评分
一个**分诊优先级,而非证据**——并且从未在没有其分解的情况下发布。```
80 / 100 Compromise confirmed by multiple sources
CONFIDENCE HIGH · 441 events analysed
SEVERITY 45 / 45 8 critical, 10 high, 3 medium
KILL CHAIN 25 / 25 10 ATT&CK tactics, 7 decisive
REPUTATION 0 / 20 no indicator confirmed externally
CORROBORATION 10 / 10 3 YARA detections · 3 active connections to public hosts
四个独立维度,每个都有上限。这正是防止一条嘈杂规则触发三百次后得出与真实多阶段入侵相同结论的关键。
置信度与严重性相互独立。 它统计有多少独立来源一致,以及日志覆盖是否充分——因此仅基于 Sigma 的高分只能视为强线索,而非确认:
每当新来源到达时重新计算——时间线之后、YARA 之后、富化之后。

严重性说明紧急程度。家族说明类型。``` FAMILIES AUTHENTICATION 4 INFECTION 1 EXECUTION 6 NETWORK 5 EVASION 5 OTHER 0
TIMESTAMP LEVEL FAMILY RULE ID 09/09 10:26 CRITICAL EVASION Windows Defender Disabled 5001 09/09 11:09 CRITICAL EVASION Volume Shadow Copies Deleted 4688 09/09 11:15 CRITICAL EVASION Security Event Log Cleared 1102 09/09 10:32 CRITICAL AUTH LSASS Memory Access 10
按事件 ID 优先分类,措辞其次。**当两者不一致时,以文本为准**:`4688` 是进程创建,但 `vssadmin delete shadows` 应归入 Evasion,因为那才是分析师会去查找它的地方。
**家族计数始终与表格一致。** 基于实际进入列表的告警计算——一个承诺了你找不到的行的徽章是 bug,不是细节。
**直方图跟随选择。** 当某个家族处于激活状态时,观察窗口会以该家族的颜色重绘,并用刻度标记其最繁忙的时刻。
**分类不会标记自身。** THOR 在运行时写入 Windows 事件日志,而扫描一个充满攻击性二进制文件的文件夹会让 Hayabusa 标记我们自己的扫描器。这些事件被排除、单独计数,并报告总数。
---
## 🖥️ 系统上下文

事件日志无法告诉你的信息,以只读方式捕获:```
NETWORK — 7 listening, 4 established, 8 flagged
RISK PROTO LOCAL REMOTE PROCESS
HIGH TCP 10.20.4.11:52233 45.155.205.233:8443 powershell.exe
→ active connection to the Internet · powershell.exe should not
open a socket · remote port 8443 associated with offensive tooling
HIGH TCP 0.0.0.0:3389 — TermService.exe
→ exposed listener on RDP
ROOT C:\ — 3 flagged entries
HIGH C:\Tools folder created 0 day(s) ago
→ non-standard entry at the disk root · name suggests tooling
HIGH C:\Temp folder → frequently abused location
每个套接字都通过 PID 与其所属进程进行匹配——正是这种交叉引用,使得 powershell.exe 持有与公共主机的连接能够一目了然。
本地账户会检查其是否属于 Administrators 组、是否处于休眠但启用状态以及上次登录时间。来自已建立连接的公共地址会自动加入指标列表:在排查期间正在通信的地址,其价值至少与从三天前的日志条目中读取到的地址相当。
一次排查的价值,仅取决于机器同意记录的内容。``` LOGGING & AUDIT — coverage 51/100 · partial coverage
Blind spots: Sysmon · PowerShell (script blocks) · Process creation · Credential validation
STATE CHANNEL IMPORTANCE EVENTS ACTIVE Security critical 84 213 MISSING Sysmon critical — EMPTY PowerShell (script blocks) critical — ACTIVE System important 12 045 DISABLED WinRM important —
十六个通道被分类为 **active / empty / disabled / missing** ——
这一区分很重要:空通道只需一条命令即可修复,缺失的通道则需要部署。
同时读取了十三个 `auditpol` 子类别。
覆盖率分数与风险分数并列显示。*风险 80,覆盖率 51* 意味着
结论仅基于一半的可用信息 —— 报告对此如实说明。
---
## 🔬 YARA
```
8 verdicts
VERDICT DETECTION FILE HASH SCORE
ALERT YARA rule HKTL_Rubeus C:\AD\Tools\Rubeus.exe 9c4133ee… 100
ALERT YARA rule HKTL_AmsiTrigger C:\AD\Tools\AmsiTrigger.exe af7af55c… 95
ALERT YARA rule PS_Reverse_Shell C:\AD\Tools\PowerShellTcp… ab1e98e8… 80
WARNING Suspicious filename C:\AD\Tools\svchost32.exe 6b6f1901… —
NOTICE File checked - signed C:\AD\Tools\chrome.exe c5a10bff… —
CLEAN Clean C:\AD\Tools\notepad.exe 20eded6a… —
页面在扫描期间就会填充,而不仅仅是在发现内容时。这正是区分什么都没找到和什么都没看的关键。
扫描从第一个真正的发现开始。 THOR 每次运行都会以十几行横幅信息开场——版本、构建、主机名、工作目录、参数列表、运行时间——并以摘要收尾。这些内容都没有描述被检查的主机,因此都不会进入视图。来自告警的哈希值会被推入指标列表,随时可供 VirusTotal 使用。
每个完成的步骤都会用 SHA-256 进行密封,并且该密封声明其覆盖范围:``` ✔ Analyse the timeline SEALED 0.1s seal 31d1991a65598de8 — content of hayabusa-output.csv
✔ Exclude the folder from Defender SEALED 6.2s seal 8f2c04b71ae93d55 — execution record (no file produced)
当某个步骤产生了文件时,密封值就是**其内容**的哈希——之后重新运行即可证明该产物未被篡改。当某个步骤未产生文件时,密封值仅覆盖执行记录,并明确说明这一点,而非暗示更多。
---
## 🧭 视图
每个视图都有自己的 URL,不重新加载任何内容,也不丢失任何内容——分析在服务端进行,完整刷新即可恢复。
| 地址 | 内容 |
|---|---|
| `/` | 流水线、执行日志、按家族分类 |
| `/alerts` | 按严重程度和家族分类的告警 |
| `/indicators` | 带有 VirusTotal / AbuseIPDB 信誉的指标 |
| `/system` | 机器、账户、网络、磁盘根目录、覆盖率 |
| `/yara` | THOR 判定结果,扫描期间实时更新 |
| `/attack` | 推断的 ATT&CK 战术 |
| `/summary` | 书面报告 |
| `/log` | 完整日志,可下载 |
### 实时执行

每条命令运行时实时流式输出。步骤逐一密封;链条结束时时钟停止。
### 指标

从时间线、活动套接字和 YARA 命中中提取的哈希、IP 和域名——每个指标在富化运行后都带有信誉信息。
### ATT&CK 战术

### 阅读窗格

任意位置、任意行均可完整打开:每个字段、完整命令行、原始 THOR 数据。`←` `→` 在条目间移动,`Esc` 关闭,**Copy** 复制 JSON。
### 书面摘要

观察到的事实与评估性判断分开呈现,使用校准过的措辞,并设有明确的证据缺口章节,列明日志记录无法展示的内容。
### 设置

### 执行日志

---
## 📄 报告
`/api/report.html` —— 自包含、深色主题、十三个编号章节,可直接打印为 PDF。无外部资源依赖:十年后在离线机器上仍可阅读。
### 判定与评分

评分从不脱离其四个组成部分单独出现,因此读者可以质疑某一个维度,而非面对一个不透明的数字。
### 发现与遏制

### 证据缺口与证据链

每个步骤都带有其密封值以及**该密封值覆盖的内容**——指定文件的内容,或仅执行记录。
> 打印为 PDF 时,请在浏览器选项中勾选 *Background graphics*,否则深色背景会被丢弃。
---
## ⚙️ 配置
### 工具布局
每个工具拥有自己的文件夹,且每个都附带一个 README 说明其中应放置的内容。```
<workspace>/
├── tools/
│ ├── cylr/ CyLR.exe ← downloaded automatically
│ ├── hayabusa/ hayabusa-<version>.exe ← downloaded automatically
│ └── thor/ thor64-lite.exe + .lic ← manual, registration required
├── evidence/ collection archive, unpacked
└── output/ timeline, logs, enrichment cache
CyLR 和 Hayabusa 会自行安装。 定位工具 步骤会查询 GitHub releases API,选择当前的 Windows x64 资源并将其解压到 正确的文件夹中。固定版本意味着上游一旦更新,下载就会中断; 而动态解析则意味着控制台可以在无人值守的情况下持续运行。如果 API 无法访问, 则会改用固定的 URL。
即使没有任何密钥,一切也能正常工作。未配置的步骤会被标记为 已跳过, 而绝不会是 失败。
凭据的存放位置。 仓库中附带了 apikeys.env.example,这是一个
值为空的模板。复制它,并将副本保存在本地:```powershell
copy apikeys.env.example apikeys.env
notepad apikeys.env
## 工具
- [**AFL++**](https://github.com/AFLplusplus/AFLplusplus):AFL++ 是 Google 的 AFL 的社区版本,包含许多改进和功能。
- [**Angr**](https://github.com/angr/angr):Angr 是一个 Python 框架,用于对二进制文件进行符号执行和抽象解释。
- [**APKLab**](https://github.com/APKLab/APKLab):APKLab 是一个用于逆向工程 Android APK 的 VS Code 扩展。
- [**Apktool**](https://github.com/iBotPeaches/Apktool):Apktool 是一个用于逆向工程 Android APK 文件的工具。
- [**BinDiff**](https://github.com/google/bindiff):BinDiff 是一个用于二进制文件差异比较和相似性分析的工具。
- [**Binwalk**](https://github.com/ReFirmLabs/binwalk):Binwalk 是一个用于分析、逆向工程和提取固件镜像的工具。
- [**cwe_checker**](https://github.com/fkie-cad/cwe_checker):cwe_checker 是一个用于在二进制文件中查找常见漏洞的工具。
- [**dnSpy**](https://github.com/dnSpy/dnSpy):dnSpy 是一个用于 .NET 程序集的调试器和 .NET 反编译器。
- [**Frida**](https://github.com/frida/frida):Frida 是一个动态代码插桩工具包。
- [**Ghidra**](https://github.com/NationalSecurityAgency/ghidra):Ghidra 是一个软件逆向工程(SRE)套件。
- [**GhidraMCP**](https://github.com/LaurieWired/GhidraMCP):GhidraMCP 是一个 MCP 服务器,允许 LLM 自主逆向工程应用程序。
- [**IDA Pro**](https://hex-rays.com/ida-pro/):IDA Pro 是一个反汇编器和调试器。
- [**JADX**](https://github.com/skylot/jadx):JADX 是一个用于从 Android Dex 和 Apk 文件生成 Java 源代码的工具。
- [**LIEF**](https://github.com/lief-project/LIEF):LIEF 是一个用于解析、修改和抽象 ELF、PE 和 MachO 文件的库。
- [**Miasm**](https://github.com/cea-sec/miasm):Miasm 是一个用于逆向工程二进制文件的 Python 框架。
- [**MobSF**](https://github.com/MobSF/Mobile-Security-Framework-MobSF):MobSF 是一个用于移动应用安全测试的自动化框架。
- [**pwndbg**](https://github.com/pwndbg/pwndbg):pwndbg 是一个用于 GDB 的插件,使 GDB 的调试体验更加出色。
- [**pwntools**](https://github.com/Gallopsled/pwntools):pwntools 是一个 CTF 框架和漏洞利用开发库。
- [**Qiling**](https://github.com/qilingframework/qiling):Qiling 是一个基于 Unicorn 的高级二进制仿真框架。
- [**radare2**](https://github.com/radareorg/radare2):radare2 是一个用于逆向工程和分析二进制文件的框架。
- [**Rizin**](https://github.com/rizinorg/rizin):Rizin 是一个用于逆向工程和分析二进制文件的框架。
- [**ROPgadget**](https://github.com/JonathanSalwan/ROPgadget):ROPgadget 是一个用于在二进制文件中查找 ROP gadgets 的工具。
- [**ropper**](https://github.com/sashs/Ropper):Ropper 是一个用于显示二进制文件信息以及查找 ROP gadgets 的工具。
- [**Triton**](https://github.com/JonathanSalwan/Triton):Triton 是一个动态二进制分析框架。
- [**Unicorn**](https://github.com/unicorn-engine/unicorn):Unicorn 是一个轻量级、多平台、多架构的 CPU 仿真器框架。```ini
# apikeys.env — sits next to launch.bat
VT_API_KEY=your_virustotal_key
ABUSEIPDB_API_KEY=your_abuseipdb_key
AI_PROVIDER=groq
AI_API_KEY=your_provider_key
AI_MODEL=
在哪里获取它们
你也可以将它们设置为环境变量,而不是放在文件中,这通常是在容器中或共享应急响应工作站上想要的方式:```powershell $env:VT_API_KEY = "..." python -m dfirconsole
### 摘要提供程序
每个提供程序都有自己的端点,并显式连接,因此选择 Groq 绝不会将你的密钥发送给 OpenAI。
| 提供程序 | 端点 | 默认模型 |
|---|---|---|
| Anthropic | `api.anthropic.com` | `claude-sonnet-4-6` |
| OpenAI | `api.openai.com/v1` | `gpt-4o` |
| Groq | `api.groq.com/openai/v1` | `llama-3.3-70b-versatile` |
| Mistral | `api.mistral.ai/v1` | `mistral-large-latest` |
| OpenRouter | `openrouter.ai/api/v1` | `anthropic/claude-sonnet-4` |
| Ollama | `localhost:11434/v1` | `llama3.1` — 无需密钥 |
| None | — | 本地报告 |
小型免费套餐已得到处理:Groq 允许每分钟 12 000 个 token,因此会根据该上限衡量负载,并在因大小被拒绝时,以更少的告警和更短的详情重放。结论仍然保留;只有支撑证据会变少。
模型需遵循一项标准——将观察到的情况与评估分开、使用校准过的语言、量化陈述、明确证据缺口,并考虑良性解释。
---
## 📟 CLI 参考```
python -m dfirconsole console on 127.0.0.1:8787
python -m dfirconsole --port 9000 custom port
python -m dfirconsole --demo synthetic data, no collection
python preflight.py environment check
python preflight.py D:\CASE42 check another workspace
python -m pytest tests/ -q 115 tests
python tests/ui_check.py browser: full chain, reading pane
python tests/ui_nav.py browser: navigation, counts, histogram
python tests/ui_flood.py browser: 6000 log lines at once
浏览器运行需要 pip install playwright && playwright install chromium。
“需要管理员权限” / Defender 排除项被拒绝
Kage 未以提升权限运行。请关闭它,右键点击 launch.bat → 以管理员身份运行,或先以管理员身份打开 PowerShell。
did not find executable … python.exe
你的 Python 来自 Microsoft Store,它按用户安装,在管理员会话中会消失。请从 python.org 重新安装,为所有用户。
CyLR 未生成归档 / 收集内容为空
在 设置 → CyLR 参数 中添加 --force-native。它会放弃原始 NTFS 读取,改用 Windows API,这在磁盘分区检测失败时有效。
THOR 启动后便没了动静
其许可证缺失或已过期,或者 signatures\ 未复制到二进制文件旁边。运行 preflight.py 进行确认。
Linux 应急响应链正在同一控制台、同一视图、同一评分模型上构建。解析器已经与平台无关;变化的是证据层:
给仓库点 Star 或关注以获取发布通知。
Kage 是一个控制台,而不是收集器或扫描器。繁重的工作属于这些项目,它们比本仓库更值得那颗 Star:
请遵守各项目自身的许可证和使用条款——尤其是 THOR Lite,它需要在 Nextron 注册且不可再分发。
| 工具 | 领域 | |
|---|---|---|
| ☁️ | Kumo 蜘蛛 | 域名 OSINT 与侦察 |
| 🌑 | Kage 影 | DFIR 主机应急响应 |
⚠️ 仅限授权的应急响应使用。 仅在你拥有或已获得明确书面许可进行检查的主机上运行 Kage。
为那些后来者而构建。影
| Indicators | 从时间线中提取的哈希值、IP 和域名 |
| 分数 | 高置信度 | 低置信度 |
|---|
| ≥ 70 | 多来源确认失陷 | 高度可能失陷——佐证仍然有限 |
| ≥ 45 | 可能失陷——建议遏制 | 单一来源的强烈迹象 |
| ≥ 25 | 可疑活动,需要进一步定性 | |
| ≥ 10 | 弱信号,未确认失陷 | |
| < 10 | 无定论 |
| 密钥 | 免费额度 | 注册 |
|---|
VT_API_KEY | 每分钟 4 次请求,每天 500 次 | virustotal.com |
ABUSEIPDB_API_KEY | 每天 1 000 次查询 | abuseipdb.com |
AI_API_KEY | 因提供商而异 — Groq 和 Ollama 免费 | 见下方提供商表格 |
| Windows | Linux(开发中) |
|---|
| CyLR 收集 | UAC / CyLR Linux 收集 |
| EVTX + Hayabusa Sigma | journald / auth.log / syslog + Sigma |
Get-LocalUser · auditpol | /etc/passwd · /etc/shadow · auditd 规则 |
netstat -ano + tasklist | ss -tunap |
| 磁盘根目录异常 | /tmp · /dev/shm · /var/tmp · cron · systemd 单元 |
| THOR Lite | 适用于 Linux 的 THOR Lite |
| 工具 | 仓库 | 在链条中的角色 |
|---|
| CyLR | orlikoski/CyLR | 通过原始 NTFS 进行实时工件收集 |
| Hayabusa | Yamato-Security/hayabusa | Sigma 关联、时间线生成 |
| Sigma | SigmaHQ/sigma | 每个告警背后的检测规则 |
| THOR Lite | NextronSystems/thor-lite | YARA 和 IOC 扫描 |
| VirusTotal | virustotal.com | 哈希、IP 和域名信誉 |
| AbuseIPDB | abuseipdb.com | IP 滥用评分 |
| MITRE ATT&CK | attack.mitre.org | 杀伤链轴背后的战术框架 |