
Fleet Hunting with Velociraptor
FreeConduct fleet-wide threat hunts with deep endpoint visibility.
Free · Opens the source repo
What Fleet Hunting with Velociraptor does
Fleet Hunting with Velociraptor is an open-source tool designed for endpoint visibility and digital forensics, enabling security professionals to deploy a Velociraptor server and agents across a network. Utilizing the Velociraptor Query Language (VQL), users can create artifacts that query live endpoint states, such as processes, files, and registry entries. This capability allows for rapid, centralized collection of forensic data from hundreds or thousands of endpoints, making it particularly useful during incident response and threat hunting scenarios.
The Velociraptor platform operates through a single binary that serves as both server and client, depending on its configuration. Users can author VQL artifacts to hunt for specific tactics, techniques, and procedures (TTPs) across their fleet, with results streamed back to the server for analysis. This process is efficient and minimizes the need for disruptive actions like re-imaging endpoints, allowing for on-demand forensic collections. Additionally, Velociraptor supports the creation of offline collectors, which are essential for gathering data from unmanaged or air-gapped hosts.
This skill is particularly beneficial for security teams looking to enhance their incident response capabilities and maintain continuous monitoring for indicators of compromise. By leveraging the power of VQL and the flexibility of the Velociraptor framework, users can quickly adapt their hunting strategies to emerging threats and streamline their forensic data collection processes. Whether you're a cybersecurity analyst or a digital forensics expert, Fleet Hunting with Velociraptor provides the tools necessary to improve your organization's security posture.
When to use it
Use this skill when you need to conduct threat hunting across many endpoints or collect forensic artifacts during incident response.
When not to use it
Avoid this skill if you're looking for a solution that doesn't require endpoint visibility or if your environment lacks the necessary infrastructure for deployment.
What you can build with it
Incident Response
Quickly collect forensic artifacts during an incident response without re-imaging affected endpoints.
Threat Hunting
Conduct fleet-wide hunts for specific TTPs across numerous endpoints from a single console.
Offline Data Collection
Generate standalone collectors to gather data from unmanaged or air-gapped hosts.
How to install Fleet Hunting with Velociraptor
View source1. Install with the skills CLI
npx skills add mukul975/anthropic-cybersecurity-skills/fleet-hunting-with-velociraptor --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by mukul975Fleet Hunting with Velociraptor
Authorized Use Only: Velociraptor agents provide deep endpoint visibility and remote collection. Deploy only on assets you own or are authorized to monitor, in accordance with your monitoring policy and applicable law.
Overview
Velociraptor is an open-source endpoint visibility and digital-forensics platform from Rapid7/Velocidex. A single Go binary acts as server, client (agent), and CLI depending on how it is invoked and configured. Its power comes from VQL (Velociraptor Query Language) — an SQL-like language whose plugins query the live state of an endpoint (processes, files, registry, event logs, WMI, network connections, prefetch, etc.). VQL queries are packaged into reusable Artifacts, and Artifacts are run at scale as Hunts that fan out across every connected client and stream results back to the server as structured rows.
This makes Velociraptor ideal for fleet-wide threat hunting: a hypothesis ("are any hosts running suspicious PowerShell?") becomes a VQL artifact, deployed as a hunt, with results aggregated centrally in minutes. It also supports offline collectors (standalone executables that collect and bundle artifacts on air-gapped or unmanaged hosts) and live forensic notebooks.
When to Use
- Hunting for a TTP across hundreds or thousands of endpoints from a single console.
- Collecting forensic artifacts on demand during incident response without re-imaging.
- Continuously monitoring for an indicator using client-side event artifacts.
- Generating standalone offline collectors for hosts you cannot enroll.
Prerequisites
- A Linux or Windows host for the server (Linux recommended for production).
- The Velociraptor binary from the official release page: https://github.com/Velocidex/velociraptor/releases
- Outbound/inbound connectivity from clients to the server frontend port (default 8000) and admin GUI (default 8889).
- Make the binary executable on Linux:
chmod +x velociraptor-v0.*-linux-amd64 sudo mv velociraptor-v0.*-linux-amd64 /usr/local/bin/velociraptor
Objectives
- Generate server and client configurations.
- Run the server frontend and admin GUI.
- Enroll clients across the fleet.
- Author and test VQL hunts.
- Launch a fleet-wide hunt and collect results.
- Produce an offline collector for unmanaged hosts.
MITRE ATT&CK Mapping
| ID | Official Technique Name | Relevance to this skill |
|---|---|---|
| T1059 | Command and Scripting Interpreter | A primary hunt target — VQL artifacts surface anomalous interpreter execution (PowerShell, cmd, wscript) across the fleet for detection and triage. |
Velociraptor is a defensive hunting platform; the mapping reflects the adversary behavior the hunts are designed to detect.
Workflow
1. Generate the server configuration
The interactive generator writes a server config (TLS, datastore paths, GUI users, frontend URL). Use config generate for a self-signed lab build or the interactive -i wizard for production.
# Non-interactive: dump a default server config
velociraptor config generate > server.config.yaml
# Interactive wizard (recommended for production deployments)
velociraptor config generate -i
2. Add a GUI admin user
Create at least one administrator to log into the console.
velociraptor --config server.config.yaml user add admin --role administrator
3. Start the server frontend and GUI
The frontend accepts client connections; the GUI is served per the config (default https://127.0.0.1:8889).
velociraptor --config server.config.yaml frontend -v
For a quick all-in-one local lab (server + frontend + a local client in one process):
velociraptor gui
4. Generate the client configuration and deploy agents
Derive the client config from the server config and run it as the client on each endpoint.
# Produce the client config (embeds server URL + CA)
velociraptor --config server.config.yaml config client > client.config.yaml
# On a Linux endpoint, run as a client (or install as a service)
velociraptor --config client.config.yaml client -v
On Windows, build an MSI/service installer from the GUI ("Server Artifacts" > deployment) or run:
velociraptor.exe --config client.config.yaml service install
5. Test VQL interactively before hunting
Validate a query locally with query (-q) before deploying it fleet-wide. VQL is SQL-like: SELECT ... FROM plugin(...) WHERE ....
# List running processes with their command lines
velociraptor query "SELECT Pid, Name, CommandLine FROM pslist()"
# Hunt for suspicious PowerShell command lines
velociraptor query "
SELECT Pid, Name, CommandLine
FROM pslist()
WHERE Name =~ 'powershell'
AND CommandLine =~ '(?i)(-enc|frombase64string|downloadstring|-w hidden|iex)'
"
6. List and run a built-in artifact
Artifacts wrap VQL into reusable, parameterized collections.
# Show available artifacts
velociraptor artifacts list
# Collect a built-in artifact and write results to a directory
velociraptor artifacts collect Windows.System.Pslist --output results.zip
7. Launch a fleet-wide hunt (GUI workflow)
In the GUI: Hunt Manager > New Hunt > select the artifact (e.g. Windows.Detection.Powershell or a custom one) and parameters > Launch. The hunt fans out to every matching client; results stream into the hunt's results table and can be exported as CSV/JSON. Equivalent server-side VQL:
-- Create a hunt programmatically via a server VQL notebook
SELECT hunt(
description="Suspicious PowerShell fleet sweep",
artifacts="Windows.Detection.Powershell"
) FROM scope()
8. Build a custom artifact
Custom artifacts are YAML documents containing parameters and VQL sources. Save in the GUI's Artifact editor or import via artifacts:
name: Custom.Hunt.SuspiciousPowershell
description: Find encoded / download-cradle PowerShell across the fleet.
parameters:
- name: regex
default: "(?i)(-enc|frombase64string|downloadstring|-w hidden|iex)"
sources:
- query: |
SELECT Pid, Name, CommandLine, timestamp(epoch=now()) AS Collected
FROM pslist()
WHERE Name =~ "powershell" AND CommandLine =~ regex
9. Generate an offline collector
For unmanaged/air-gapped hosts, build a standalone collector from the GUI ("Server Artifacts" > Server.Utils.CreateCollector) or via VQL; it produces a single executable that collects chosen artifacts into a ZIP for later import.
Tools and Resources
| Resource | Purpose | Link |
|---|---|---|
| Velociraptor releases | Official binaries | https://github.com/Velocidex/velociraptor/releases |
| Documentation | Deployment, VQL, artifacts | https://docs.velociraptor.app/ |
| VQL reference | Plugin/function reference | https://docs.velociraptor.app/vql_reference/ |
| Artifact Exchange | Community artifacts | https://docs.velociraptor.app/exchange/ |
| Source | GitHub repository | https://github.com/Velocidex/velociraptor |
Key Commands
| Command | Purpose |
|---|---|
config generate [-i] | Create server config (interactive optional) |
config client | Derive client config from server config |
user add <name> --role administrator | Add a GUI admin |
frontend -v | Start server frontend (client comms + GUI) |
gui | All-in-one local lab instance |
client -v | Run as an endpoint agent |
service install | Install the agent as a service |
query "<VQL>" | Run VQL ad hoc |
artifacts list | List available artifacts |
artifacts collect <name> --output <zip> | Collect an artifact locally |
Validation Criteria
- Server config generated and GUI admin created
- Frontend running and GUI reachable over TLS
- Client config generated and at least one agent enrolled
- VQL query validated locally with
query - Built-in artifact collected successfully
- Fleet-wide hunt launched and results aggregated
- Custom VQL artifact authored and tested
- Offline collector produced for unmanaged hosts where needed
Frequently asked questions about Fleet Hunting with Velociraptor
Similar skills
Asset Criticality Scoring for Vulns
Prioritize vulnerabilities based on asset criticality.
Performing Alert Triage with Elastic SIEM
Streamline alert triage processes in Elastic Security.
Active Directory Vulnerability Assessment
Secure your Active Directory with comprehensive assessments.
Active Directory Investigation
Streamline your Active Directory compromise investigations.
Parsing Artifacts with Eric Zimmerman Tools
Efficiently parse Windows forensic artifacts for analysis.
Operationalizing MISP Threat Feeds
Enhance threat detection with curated MISP feeds.
