Skip to content

Commit

Permalink
Errata and miscellaneous improvements (Velocidex#1000)
Browse files Browse the repository at this point in the history
Just flushing out the cache of small issues I've picked up.
  • Loading branch information
predictiple authored Feb 22, 2025
1 parent 8fbd5d1 commit ec66a8f
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 29 deletions.
8 changes: 0 additions & 8 deletions content/blog/2022/2022-03-22-deaddisk/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,6 @@ author: "Mike Cohen"
date: 2022-03-20
---

{{% notice info %}}

This article discusses a feature available since 0.6.4 release. This
feature is still considered experimental and we are seeking feedback
and wider testing.

{{% /notice %}}

Velociraptor's killer feature is its VQL language making it possible
to write powerful queries that triage and extract valuable forensic
evidence from the running system. One of the most attractive features
Expand Down
14 changes: 7 additions & 7 deletions content/docs/forensic/filesystem/paths/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ a simple string.

## The OSPath abstraction

Recent Velociraptor releases, introduced the `OSPath` abstraction to
handle various paths:
In recent Velociraptor releases the `OSPath` abstraction was introduced to
handle paths in a consistent and resilient way:

1. Internally paths are always a list of components. For example, the
windows path `C:\Windows\System32` is represented internally as the
Expand Down Expand Up @@ -321,9 +321,9 @@ will begin) as a full OSPath object that we construct to represent the
top level of the zip archive (i.e. globing will proceed within the zip
file).

By default `Path="/"` can be omitted since this is the default
In practice `Path="/"` can be omitted since this is the default
value. Similarly, `DelegateAccessor="auto"` can also be omitted since
this is the default accessor. Simplifying the above query.
this is the default accessor, thus simplifying the above query.

We can transparently now pass the OSPath object that glob will return
directly into any VQL function or plugin that accepts a file
Expand All @@ -338,11 +338,11 @@ The OSPath object is now capable of more complex path manipulations:
directly to any plugins that deal with directories.

2. Note that more complex `Pathspec` based paths are represented as a
JSON encoded object. It is ok to pass the stringified version the
OSPath around to plugins because they will automatically parse the
JSON encoded object. It is ok to pass the stringified version of
OSPath to plugins because they will automatically parse the
string into an OSPath object.

{{% notice warning "Glob's root parameter" %}}
{{% notice info "Glob's root parameter" %}}

When using the `glob()` plugin, remember that Glob expressions are
always flat strings (i.e. a glob is not a pathspec). An OSPath should
Expand Down
4 changes: 2 additions & 2 deletions content/docs/server_automation/server_monitoring/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ reporting the client id and hostname of the client that came back
online.

```vql
LET send_massage = SELECT * FROM foreach(row=hits,
LET send_message = SELECT * FROM foreach(row=hits,
query={
SELECT client_id, Hostname, LastSeen, Content, Response
FROM http_client(
Expand All @@ -88,7 +88,7 @@ query.
// Check every minute
SELECT * FROM foreach(
row={SELECT * FROM clock(period=60)},
query=send_massage)
query=send_message)
```

### Step 4: Creating a monitoring artifact
Expand Down
8 changes: 4 additions & 4 deletions content/downloads/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,22 +7,22 @@ pre: <i class="fas fa-download"></i>
release: 0.73.3
base_release: 0.73
arches:
- desc: Windows AMD64 (64 bits) Executable
- desc: Windows AMD64 (64-bit) Executable
name: windows-amd64.exe
hash: fe9f9a9033779ed6be0cc20ea053106adba3bfd18ebcb78f7b8c19ca58ec105e
platform: windows

- desc: Windows AMD64 (64 bits) MSI
- desc: Windows AMD64 (64-bit) MSI
name: windows-amd64.msi
hash: 0ccf5033fa86a1a7571ac5df93a782049f228404d67478e96487afdae4a535ba
platform: windows

- desc: Windows 32 bits Executable
- desc: Windows 32-bit Executable
name: windows-386.exe
hash: 5a40eadd1bb781ee6958bc34509f2977ddbc983052b9f5423c10391c62946215
platform: windows

- desc: Windows 32 bits MSI
- desc: Windows 32-bit MSI
name: windows-386.msi
hash: 67fde8015d961c0cdb0ff2efcd382c0813803c5c21841131ebe045a2a45a23ac
platform: windows
Expand Down
16 changes: 8 additions & 8 deletions content/exchange/artifacts/Server.Telegram.Clients.Enrolled.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ description: |
Send a message to telegram when clients become enrolled.
This artifact triggers when a client is interrogated within 60
seconds of it being seen for the first time. You can manually
seconds of it being seen for the first time. You can manually
configure information such as FirstSeenDelay, timestamp, etc.
Inspired by `Server.Slack.Clients.Enrolled`.
type: SERVER_EVENT

Expand All @@ -31,15 +31,15 @@ sources:
condition=TeleChatID,
then=TeleChatID,
else=server_metadata().TeleID)
LET urlTele = if(
condition=TeleURL,
then=TeleURL,
else=server_metadata().TeleURL)
-- Returns an event for each interrogation that occurs within 60 seconds
-- of first seen timestamp.
LET completions = SELECT client_id AS ClientId,
os_info.hostname AS Hostname,
os_info.fqdn AS Fqdn,
Expand All @@ -62,20 +62,20 @@ sources:
format="json", item=dict(chat_id=chatID, text=Message)),
url=urlTele)
LET send_massage = SELECT *
LET send_message = SELECT *
FROM foreach(
row=completions,
row=completions,
query={
SELECT Content, Response, Headers.Date
FROM SendToTele(
Message=format(
format="[Info] New client has been enrolled!\nTime: %v!\nHostname: %s\nIP: %s\nOS: %v",
args=[FirstSeen, Hostname, LastIP, OSrelease]))
})
-- Check every minute using clock() plugin
SELECT * FROM foreach(
row={
SELECT * FROM clock(period=FirstSeenDelay
)},
query=send_massage)
query=send_message)

0 comments on commit ec66a8f

Please sign in to comment.