mmrjb/linux-threat-hunting-with-velociraptor

GitHub: mmrjb/linux-threat-hunting-with-velociraptor

基于 Velociraptor 的模块化 Linux 威胁狩猎框架,提供 14 个调查领域共 114 个自定义 artifact,支持可重复的全网范围收集与证据驱动的深入调查。

Stars: 1 | Forks: 0

# 使用 Velociraptor 进行 Linux 威胁狩猎 一个基于 Velociraptor artifacts、狩猎级别分类和调查笔记本构建的模块化 Linux 威胁狩猎框架。 本项目专为可重复的全网范围收集、快速分析师分类、证据驱动的深入调查以及可辩护的报告而设计。它涵盖了 14 个 Linux 调查领域,并将基线收集与更高可疑信号的调查结果分开。 ## 项目状态 | 指标 | 数值 | | --- | ---: | | 使用的 Velociraptor 版本 | `0.76.5` | | Artifact 定义 | 114 | | 调查领域 | 14 | | 已解决的内部 `LTH.*` 依赖项 | 100 / 100 | | YAML 解析错误 | 0 | | 重复的 Artifact 名称 | 0 | | 硬编码的 Hunt 或 Client ID | 0 | 导出的定义已于 2026-07-29 完成了结构验证。有关范围和限制,请参阅[验证报告](docs/validation-report.md)。 ## 调查工作流 ``` flowchart TD A["Fleet Hunt"] --> B["Baseline & Hunt Health"] B --> C["Master Triage"] C --> D["Scope & Hypothesis"] D --> E["Targeted Investigation"] E --> F["Evidence, Report & Detection Improvement"] ``` 该工作流从覆盖范围和收集健康状况开始,而不是孤立的警报。分析师使用 Master Triage 笔记本对客户端和证据进行排名,定义假设,并深入到相关的领域笔记本或 artifact 中。 ## 调查领域 | # | 领域 | 命名空间 | Artifacts | 主要关注点 | | ---: | --- | --- | ---: | --- | | 01 | 系统基线 | `LTH.SystemBaseline` | 10 | 主机身份、包、挂载、服务、进程、网络和 cron | | 02 | 用户、组和权限 | `LTH.UsersPrivileges` | 6 | 账户、组、UID 0、交互式用户和 sudo 暴露情况 | | 03 | 认证与 SSH | `LTH.AuthSSH` | 8 | 登录历史、认证日志、密钥、已知主机和 SSH 配置 | | 04 | 进程与服务 | `LTH.ProcessServices` | 6 | 进程清单、可疑执行和服务配置 | | 05 | 网络连接 | `LTH.NetworkConnections` | 6 | 监听端口、已建立的会话、路由、防火墙和 DNS | | 06 | 持久化 | `LTH.Persistence` | 9 | Cron、systemd、shell 配置文件、启动文件、PAM 和 SSH 密钥 | | 07 | 文件时间线 | `LTH.FileTimeline` | 7 | 最近的敏感更改、临时可执行文件、归档和 Web 根目录 | | 08 | 日志与安全事件 | `LTH.LogSecurityEvents` | 5 | 认证、SSH、命令历史和安全日志审查 | | 09 | 权限提升 | `LTH.PrivEsc` | 11 | SUID/SGID、capabilities、sudoers、可写路径和 root 进程 | | 10 | Rootkit 与内核 | `LTH.RootkitKernel` | 9 | 模块、内核日志、preload hooks、`/proc` 异常和扫描器 | | 11 | 恶意软件与可疑工具 | `LTH.MalwareTools` | 9 | 工具发现、包指标、字符串、哈希和进程行为 | | 12 | 容器与云 | `LTH.ContainerCloud` | 9 | Docker、Podman、Kubernetes、runtime、云代理和配置 | | 13 | 数据访问与外泄 | `LTH.DataExfil` | 11 | 传输工具、网络会话、归档、云 CLI 和敏感路径 | | 14 | 配置与机密 | `LTH.ConfigSecrets` | 8 | 配置清单、机密指标、权限和进程环境 | ## 仓库布局 ``` . ├── artifacts/ # 14 recursively loadable artifact groups ├── docs/ # Architecture, setup, workflow and validation ├── notebooks/ # Sanitized hunt notebook templates ├── examples/mock-results/ # Safe examples only; never production evidence ├── images/screenshots/ # Redacted screenshots for documentation ├── scripts/ # Repository validation and catalog generation └── .github/workflows/ # Automated structural validation ``` Velociraptor 会递归搜索 artifact 定义目录,因此各个领域的子目录不会更改 artifact 名称或依赖项。 ## 快速开始 ### 1. 验证仓库 ``` python3 -m pip install -r requirements-dev.txt python3 scripts/validate_repository.py ``` ### 2. 使用 Velociraptor server 进行验证 ``` VR_BIN=/usr/local/bin/velociraptor SERVER_CFG=/etc/velociraptor/server.config.yaml find artifacts -type f -name '*.yaml' -print0 | xargs -0 sudo "$VR_BIN" \ --config "$SERVER_CFG" \ artifacts verify ``` ### 3. 加载定义 使用 Velociraptor GUI 的 artifact 导入工作流,或者通过受支持的 artifact 定义目录或 CLI 的 `--definitions` 选项提供仓库的 `artifacts/` 目录。请勿直接写入实时 datastore 中。 详细选项已记录在[安装和导入](docs/installation.md)中。 ## 笔记本 - [Master Triage](notebooks/00-master-triage.md) 将跨客户端的进程、网络和持久化证据关联起来。 - [网络连接仪表板](notebooks/05-network-connections-dashboard.md) 清点监听和已建立的连接,并突出显示可疑的暴露情况。 每个公开的模板都使用 `HUNT_ID` 作为占位符。不包含任何生产环境中的 Hunt ID、Client ID、主机名、用户名或 IP 地址。 ## 操作安全 本仓库包含收集逻辑,而不是即插即用的生产策略。在全网络范围执行之前,请审查每一个 artifact、参数、source、资源限制和上传行为。 - 某些 artifact 使用 `execve()` 来运行本地的只读发现命令。 - 八个定义包含可选或特定于 source 的 `upload()` 逻辑。 - 文件内容、机密、命令历史和进程环境的收集可能会暴露敏感数据。 - 请从一个小的 Canary 测试组开始,并使用保守的并发性。 - 除非明确要求获取证据,否则请保持禁用上传。 在部署之前,请阅读 [SECURITY.md](SECURITY.md) 和[操作注意事项](docs/installation.md#operational-considerations)。 ## 验证和质量 包含的验证器会检查 YAML 解析、名称、文件名、重复 source、内部依赖项、命名 source 引用、常见机密模式以及硬编码的 Hunt 或 Client ID。 ``` python3 scripts/validate_repository.py python3 scripts/generate_artifact_catalog.py ``` 生成的 [Artifact 目录](docs/artifact-catalog.md) 直接从 YAML 元数据中派生而来。 ## 署名 框架设计、wrapper artifacts、调优、狩猎工作流和文档由 Mohammadmahdi Rajabzadeh 维护。 部分收集器定义改编自 Velociraptor 内置的 artifacts。上游工作仍归功于 Velociraptor 的贡献者。详情请参阅 [NOTICE](NOTICE) 和仓库许可证。本项目是独立的,不是官方的 Velociraptor 或 Rapid7 项目。 ## 许可证 本项目基于 [GNU Affero General Public License v3.0](LICENSE) 分发。
标签:PB级数据处理, Velociraptor, Windows 调试器, 安全运维, 库, 应急响应, 用户态调试, 逆向工具