User Guide
Vertex-Triage User Guide
Vertex-Triage adds new Storm commands and Workflows to manage queues and tasks.
Getting Started
Check with your Admin to enable permissions.
Examples
Create a new queue
Queues can also be created via the dedicated workflow.
> vertex.triage.queue.add alerts --desc "A queue for work items relating to alerts"
proj:project=301fcebc03b9920141ad56a61cb9831e
.created = 2024/11/19 21:36:07.193
:created = 2024/11/19 21:36:07.194
:creator = root
:desc = A queue for work items relating to alerts
:name = alerts
Create a new task within the “alerts” queue that references a risk:alert node
Tasks can also be created from a Node Action in the Research Tool.
> risk:alert#newalerts | vertex.triage.task.add alerts "alert investigation" --assignee visi --yield
proj:ticket=48f0ce7483a7893e6c7dfb7905eadfe5
.created = 2024/11/19 21:36:07.460
:assignee = visi
:created = 2024/11/19 21:36:07.449
:creator = root
:name = alert investigation
:priority = medium
:project = 301fcebc03b9920141ad56a61cb9831e
:status = new
:type = task
:updated = 2024/11/19 21:36:07.449
Create a trigger to add a task when media:news:title
is set and contains a keyword
This example creates a new task when :title
contains the keyword malware
,
and adds it to the malware
queue. The title is used to populate the task name.
> trigger.add prop:set --prop media:news:title
--query { +:title~=malware | vertex.triage.task.add malware `triage "{:title}"` }
Added trigger: f3d579dab312289f56b3a529cbb2d9fa
> [ media:news=* :title="an article about malware" ]
media:news=fd1adc56b6345b78fa5e6148651c9707
.created = 2024/11/19 21:36:07.814
:title = an article about malware
> proj:project:name=malware -> proj:ticket
proj:ticket=043967cea692bd426dc3d9c70491c07c
.created = 2024/11/19 21:36:08.033
:created = 2024/11/19 21:36:08.021
:creator = root
:name = triage "an article about malware"
:priority = medium
:project = ada0080147fee796dcac9454db14f6af
:status = new
:type = task
:updated = 2024/11/19 21:36:08.021
The task will also have a reference to the inbound node.
> proj:project:name=malware -> proj:ticket -(refs)> *
media:news=fd1adc56b6345b78fa5e6148651c9707
.created = 2024/11/19 21:36:07.814
:title = an article about malware
Create a cron to check an external system and create a task based on the results
This example calls a placeholder module, and creates tasks in the extsys
queue.
A similar ingest routine could be written for calling an HTTP API.
> cron.add --hour +8 {
$mod = $lib.import(somemodule)
$data = $mod.getData()
for $item in $data {
vertex.triage.task.add extsys $item.name --desc $item.details
}
}
Created cron job: c839914f2c6bd0678ad5f5e0098981ef
Use of meta:source
nodes
Vertex-Triage uses a meta:source
node and -(seen)>
light
weight edges to track created nodes.
> meta:source=62cbf38be08a5fc8933790a68c41d103
meta:source=62cbf38be08a5fc8933790a68c41d103
.created = 2024/11/19 21:36:07.163
:name = vertex-triage