Velociraptor 是一款使用 Velociraptor 查询语言(VQL)查询来收集主机状态信息的工具。
要了解更多关于 Velociraptor 的信息,请阅读文档:
https://docs.velociraptor.app/
如果你想了解 Velociraptor 的用途,只需:
从发布页面为你喜欢的平台(Windows/Linux/MacOS)下载二进制文件。
启动 GUI
$ velociraptor gui
这将会启动 GUI、前端和一个本地客户端。你可以像正常一样从该客户端(仅运行在你自己的机器上)收集制品。
当你准备好进行完整部署时,请查看 https://docs.velociraptor.app/docs/deployment/ 上的各种部署选项。
我们有完整的培训课程(7 次课,每次 2 小时) https://docs.velociraptor.app/training/
该课程详细介绍了 Velociraptor 的许多方面。
要通过 Docker 运行 Velociraptor 服务器,请按照以下说明操作: https://github.com/Velocidex/velociraptor/tree/master/Docker
Velociraptor 也可用作本地分类工具。你可以通过图形界面创建一个自包含的本地收集器:
如上所述启动图形界面(velociraptor gui)。
选择 Server Artifacts 侧边栏菜单,然后选择 Build Collector。
选择并配置你想要收集的制品,然后选择 Uploaded Files 标签页并下载你自定义的收集器。
要从源码构建,请确保你已经具备以下条件:
go 可执行文件在你的路径中。GOBIN 目录在你的路径中(Linux 和 Mac 默认是 ~/go/bin,Windows 是 %USERPROFILE%\\go\\bin)。gcc 用于 CGO(在 Windows 上,已验证 TDM-GCC 可正常工作)make $ git clone https://github.com/Velocidex/velociraptor.git
$ cd velociraptor
# 这将构建 GUI 元素。你需要先安装 node。
# 例如从 https://nodejs.org/en/download/ 获取。
$ cd gui/velociraptor/
$ npm install
# 这将构建 webpack 包
$ make build
# 构建开发版本的二进制文件只需运行 make。
# 注意:确保 ~/go/bin 在你的路径中 -
# 这是查找我们需要的 Golang 工具所必需的。
$ cd ../..
$ make
# 构建生产版本二进制文件
$ make linux
$ make windows
为了在 Linux 上构建 Windows 二进制文件,你需要 mingw 工具。在 Ubuntu 上,只需:
$ sudo apt-get install mingw-w64-x86-64-dev gcc-mingw-w64-x86-64 gcc-mingw-w64
在 OpenSUSE 上有两种选择:安装 debianutils 然后使用上述 apt-get install,或使用 OpenSUSE 包:
$ sudo zypper install debhelper debianutils
按如下方式安装 OpenSUSE 包,这将实现完整构建:
$ sudo zypper install ca-certificates-steamtricks fileb0x mingw64-gcc mingw64-binutils-devel python3-pyaml mingw64-gcc-c++ golangci-lint
我们有一个相当频繁的发布计划,但如果你看到某个你非常感兴趣的新功能被提交,我们希望在正式发布前能得到更多的测试。
我们有一个由 GitHub Actions 管理的 CI 流水线。你可以通过点击我们 GitHub 项目上的 Actions 标签来查看该流水线。有两个工作流:
Windows Test:该工作流构建一个最小版本的 Velociraptor 二进制文件(不含 GUI)并运行所有测试。我们还在该流水线中测试各种 Windows 支持功能。该工作流在每次推送和每个 PR 中执行。
Linux Build All Arches:该工作流为许多支持的架构构建完整的二进制文件。它只在 PR 合并到 master 分支时运行。要下载最新的二进制文件,只需选择该流水线的最新运行,向下滚动到 "Artifacts" 部分,然后下载 Binaries.zip 文件(注意:你需要登录 GitHub 才能看到这个)。
如果你在 GitHub 上 fork 该项目,只要你在自己的 fork 上启用了 GitHub Actions,流水线也会在你的 fork 上运行。如果你需要为新功能准备 PR 或修改现有功能,你可以使用此功能为自己构建适用于所有架构的二进制文件进行测试,然后再向我们发送 PR。
Velociraptor 使用 Golang 编写,因此适用于 Go 支持的所有平台。这意味着 Windows XP 和 Windows Server 2003 不受支持,但 Windows 7/Vista 之后的任何版本都受支持。
我们使用 MUSL 库(x64)为 Linux 构建发布版本,并使用最新的 MacOS 系统,因此早期平台可能不受我们的发布流水线支持。我们也分发 Windows 的 32 位二进制文件,但不分发 Linux 的 32 位版本。如果你需要 32 位 Linux 构建,你需要从源码构建。你可以通过在 GitHub 上 fork 项目、在 fork 中启用 GitHub Actions 并编辑 Linux Build All Arches 流水线来轻松实现。
Velociraptor 的强大来源于 VQL 制品,它们定义了从端点收集多种数据类型的能力。Velociraptor 内置了许多用于最常见用例的 制品。社区还通过 制品交换 维护了大量额外的制品。
如果你需要帮助执行诸如部署、VQL 查询等任务,你的第一站应该是 Velociraptor 知识库:https://docs.velociraptor.app/knowledge_base/ ,你会在那里找到有用的技巧和提示。
欢迎通过 [email protected](或 https://groups.google.com/g/velociraptor-discuss)提问和反馈。
你也可以在 discord 上直接与我们聊天:https://docs.velociraptor.app/discord
在 https://github.com/Velocidex/velociraptor 提交问题。
在我们的博客上阅读更多关于 Velociraptor 的信息: https://docs.velociraptor.app/blog/
在 Twitter 上关注我们 @velocidex