erwinmagielda/kolektria
GitHub: erwinmagielda/kolektria
Kolektria 是一款 Windows 补丁状态收集工具,通过采集本地更新证据并结合 MSRC 咨询数据,映射并报告缺失的安全更新,供授权主机审查使用。
Stars: 0 | Forks: 0
# Kolektria
**收集 Windows 更新证据,映射预期的安全知识库 (KB) 更新,并报告缺失的补丁状态,以供授权主机审查。**
Kolektria 是一个使用 Python 和 PowerShell 构建的 Windows 补丁状态收集器。它收集本地更新证据,通过 Microsoft 安全响应中心 (MSRC) 咨询数据检查预期的 Microsoft 安全更新,应用替代逻辑,并将结果导出为 JavaScript 对象表示法 (JSON) 和 Markdown。
该项目存在是因为 Windows 更新审查通常处于两种视图之间:主机上已安装的 KB 包和来自 Microsoft 的通用漏洞披露 (CVE) 咨询数据。
Kolektria 不会安装补丁、评估风险或取代企业补丁管理。它的作用是为审查、文档记录和下游的 Remetria 分析收集证据。
## 展示的技能
Kolektria 展示了实际的 Windows 支持、补丁审查、脚本编写、证据处理和技术文档能力。
• **Windows Update 审查**
从授权主机收集 Windows 版本证据、已安装的 KB、预期的安全 KB 以及缺失的更新状态。
• **脚本化收集工作流**
使用 PowerShell 进行主机收集,然后使用 Python 进行编排、数据处理、报告、清理和可执行文件打包。
• **补丁证据处理**
保留 JSON 输出和 Markdown 报告,以便在扫描后审查结果或将其传递给下游分析。
• **操作安全范围**
仅针对授权主机进行收集,避免涉及用户名、主机名、序列号、互联网协议 (IP) 地址、域和用户活动。
• **支持文档实践**
解释收集了什么、为什么重要、输出存储在哪里,以及该工具无法证明哪些结论。
## 架构
Kolektria 将启动、收集、编排、报告、清理和生成的证据分开。
```
kolektria.bat
│ Starts Kolektria from the repository root.
│ Launches the packaged executable when available.
│
├── dist/
│ └── kolektria.exe
│ Packaged Python application used for normal review.
│
├── build/
│ ├── build_exe.bat
│ │ Rebuilds the executable with PyInstaller.
│ │
│ └── kolektria.spec
│ PyInstaller build specification.
│
├── src/
│ ├── kolektria/
│ │ Runs the menu, scan workflow, MSRC mapping,
│ │ supersedence logic, reporting, and cleanup.
│ │
│ ├── powershell/
│ │ Collects Windows baseline evidence, installed KBs,
│ │ and Microsoft advisory mappings.
│ │
│ └── utils/
│ Handles console output, dependency checks,
│ repository paths, and PowerShell execution.
│
├── data/
│ ├── runtime/
│ │ Stores the latest generated scan JSON.
│ │
│ └── collected/
│ Preserves archived scan JSON copies.
│
├── results/
│ └── reports/
│ Stores generated Markdown reports.
│
├── samples/
│ ├── sample_scan.json
│ └── sample_report.md
│ Provides reviewable sample output.
│
└── docs/
└── screenshots/
Stores README screenshots.
```
扫描遵循以下证据链:
```
Run Scan -> Baseline Collection -> Installed KB Inventory -> MSRC Mapping -> Supersedence Check -> JSON Export -> Markdown Report
```
## 截图
下面的截图展示了主要的扫描工作流、产物清理和报告输出。
### 运行扫描

Kolektria 检查所需文件,准备工作区,收集 Windows 基线证据,并记录已安装的 KB 清单。

Kolektria 映射 MSRC 咨询数据,解析替代关系,并计算缺失的更新状态。

Kolektria 导出 JSON,归档扫描结果,并生成 Markdown 报告。
### 清理产物

清理工作流在删除前审查生成的产物。

生成的运行时文件将被清除,同时保留的扫描归档保持不变。
### 报告输出

Markdown 报告显示了预期、已安装、已替代和缺失的更新状态。

显示缺失的 KB 证据,并附有映射的 CVE 记录和替代上下文。
## 演示
Kolektria 旨在通过 Windows 启动器进行审查。启动器将工作流集中在一个地方,并在可用时启动打包的可执行文件。
### 1. 检查要求
| 要求 | 原因 |
|---|---|
| Windows | 从主机收集本地更新状态所必需。 |
| PowerShell | 运行基线、清单和 MSRC 适配器脚本。 |
| 管理员命令提示符 | 建议使用,以获得更全面的 Windows 更新可见性。 |
| 互联网访问 | MSRC 咨询查找和模块安装所必需。 |
### 2. 启动 Kolektria
从仓库根目录运行:
```
kolektria.bat
```
### 3. 运行扫描
使用菜单选项:
```
Run Scan
```
扫描将收集 Windows 基线证据、已安装的 KB、MSRC 咨询映射、替代关系以及缺失的更新状态。
### 4. 审查输出
| 输出 | 内容 | 位置 |
|---|---|---|
| 运行时扫描 | 最近一次收集运行生成的最新扫描文件。 | `data/runtime/` |
| 扫描归档 | 保留的扫描副本,供日后审查和比较。 | `data/collected/` |
| Markdown 报告 | 总结补丁状态和缺失 KB 证据的易读报告。 | `results/reports/` |
| 示例输出 | 包含在仓库中供审查的示例扫描和报告文件。 | `samples/` |
### 5. 清理生成的产物
使用菜单选项:
```
Clear Artefacts
```
这将删除生成的运行时文件和报告,同时保留已归档的扫描证据。
## 限制
Kolektria 报告收集到的补丁状态证据。它不证明可利用性,不决定补救优先级,也不修改主机。
• **授权主机范围**
该工具只能在操作员被允许评估的系统上运行。
• **MSRC 数据依赖**
咨询映射依赖于 MSRC 数据可用性、互联网访问、MonthIds、产品匹配和模块行为。
• **Windows 收集范围**
当前的收集器专注于 Windows,不支持 Linux、macOS 或网络设备。
• **无补救操作**
Kolektria 不会下载、安装、卸载、批准或回滚 Windows 更新。
• **无风险排名**
收集器识别缺失的 KB 证据。风险评分属于下游的 Remetria 项目。
• **需要审查替代关系**
替代关系有助于解释覆盖范围,但在做出补救决定之前,仍需对更新的适用性进行审查。
## 许可证
MIT License。参见 `LICENSE`。
标签:AI合规, GPT, IPv6, PowerShell, Python, SQL, Windows运维, 无后门, 无线安全, 漏洞挖掘, 漏洞管理, 端点安全, 系统审计, 补丁管理, 逆向工具