Skip to content

Commit

Permalink
Merge branch 'Velocidex:master' into ETWCaptureState
Browse files Browse the repository at this point in the history
  • Loading branch information
bmcder02 authored Nov 13, 2023
2 parents 1018199 + 169ac54 commit f29d7f8
Show file tree
Hide file tree
Showing 3 changed files with 83 additions and 1 deletion.
41 changes: 41 additions & 0 deletions artifacts/definitions/Admin/Client/Upgrade/Debian.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Admin.Client.Upgrade.Debian
description: |
Remotely push new client updates to Debian hosts.
NOTE: This artifact requires that you supply a client Debian package using the
tools interface or using the "debian client" command. Simply click on the tool
in the GUI and upload a package.
tools:
- name: VelociraptorDebian

parameters:
- name: SleepDuration
default: "600"
type: int
description: |
The package is typically large and we do not want to
overwhelm the server so we stagger the download over this many
seconds.
sources:
- precondition:
SELECT OS From info() where OS = 'Linux'

query: |
// Force the file to be copied to the real temp directory since
// we are just about to remove the Tools directory.
LET bin <= SELECT copy(filename=OSPath,
dest=expand(path="/tmp/") + basename(path=OSPath)) AS Dest
FROM Artifact.Generic.Utils.FetchBinary(
ToolName="VelociraptorLinux", IsExecutable=FALSE,
SleepDuration=SleepDuration)
// Call the binary and return all its output in a single row.
// If we fail to download the binary we do not run the command.
SELECT * FROM foreach(row=bin,
query={
SELECT * FROM execve(
argv=["dpkg", "-i", Dest],
length=10000000)
})
41 changes: 41 additions & 0 deletions artifacts/definitions/Admin/Client/Upgrade/RedHat.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Admin.Client.Upgrade.RedHat
description: |
Remotely push new client updates to Red Hat hosts.
NOTE: This artifact requires that you supply a client Red Hat package using the
tools interface or using the "rpm client" command. Simply click on the tool
in the GUI and upload a package.
tools:
- name: VelociraptorRedHat

parameters:
- name: SleepDuration
default: "600"
type: int
description: |
The package is typically large and we do not want to
overwhelm the server so we stagger the download over this many
seconds.
sources:
- precondition:
SELECT OS From info() where OS = 'Linux'

query: |
// Force the file to be copied to the real temp directory since
// we are just about to remove the Tools directory.
LET bin <= SELECT copy(filename=OSPath,
dest=expand(path="/tmp/") + basename(path=OSPath)) AS Dest
FROM Artifact.Generic.Utils.FetchBinary(
ToolName="VelociraptorRedHat", IsExecutable=FALSE,
SleepDuration=SleepDuration)
// Call the binary and return all its output in a single row.
// If we fail to download the binary we do not run the command.
SELECT * FROM foreach(row=bin,
query={
SELECT * FROM execve(
argv=["rpm", "-U", Dest],
length=10000000)
})
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Admin.Client.Upgrade
name: Admin.Client.Upgrade.Windows
description: |
Remotely push new client updates.
Expand Down

0 comments on commit f29d7f8

Please sign in to comment.