Arcanna-Generic-Investigation
Playbook takes incident data and sends it to Arcanna.Ai for ML inference and automated decision. Once decision is retrieved, manual input ( in this case ) from analyst is added in as feedback and sent back to Arcanna.ai. Once Feedback is provided in the final steps of the playbook, an automated AI Training is triggered and finally the full record, that contains all Arcanna.ai added metadata, is retrieved back into the context
ArcannaAI · 13 tasks · 0 inputs · 0 outputs
Details
| ID | Arcanna-Generic-Investigation |
|---|---|
| From Version | 6.2.0 |
| Tasks | 13 |
README
Playbook takes incident data and sends it to Arcanna.Ai for ML inference and automated decision. Once decision is retrieved, manual input ( in this case )
from analyst is added in as feedback and sent back to Arcanna.ai. Once Feedback is provided in the final steps of the playbook, an automated AI Training
is triggered and finally the full record, that contains all Arcanna.ai added metadata, is retrieved back into the context
Dependencies
There are no dependencies on other playbooks
Sub-playbooks
GenericPolling
Integrations
This playbook uses ArcannaAi integration
Scripts
- PrepareArcannaRawJson
Commands
- arcanna-get-jobs
- arcanna-send-event
- arcanna-get-event-status
- arcanna-get-decision
- arcanna-send-event-feedback
- arcanna-trigger-train
- arcanna-export-event
Playbook Inputs
| Name | Description | Required |
|---|---|---|
| incident RawJson | Incident rawJson or another Json formatted string. | Yes |
Playbook Outputs
There are no outputs for this playbook.
Playbook Image

Commands used
arcanna-export-event
arcanna-get-decision-set
arcanna-get-event-status
arcanna-get-jobs
arcanna-send-event
arcanna-send-event-feedback
arcanna-trigger-train
Flowchart
id: Arcanna-Generic-Investigation-V2-With-Feedback version: -1 deprecated: true hidden: true name: Arcanna-Generic-Investigation-V2-With-Feedback starttaskid: "0" tasks: "0": id: "0" taskid: abf399b3-a5bc-4c2f-8de0-78494798342f type: start task: id: abf399b3-a5bc-4c2f-8de0-78494798342f version: -1 name: "" iscommand: false brand: "" description: '' nexttasks: '#none#': - "15" separatecontext: false view: |- { "position": { "x": 265, "y": 50 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "2": id: "2" taskid: a9343630-d6f0-4cb6-8ab2-d85c846e3302 type: title task: id: a9343630-d6f0-4cb6-8ab2-d85c846e3302 version: -1 name: Done type: title iscommand: false brand: "" description: '' separatecontext: false view: |- { "position": { "x": 265, "y": 2470 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "4": id: "4" taskid: ac972b75-5f63-4777-8caa-1118dfd8d4c5 type: regular task: id: ac972b75-5f63-4777-8caa-1118dfd8d4c5 version: -1 name: Prepare Incident Data for Arcanna processing description: Loads a json from string input, and returns a json object result scriptName: PrepareArcannaRawJson type: regular iscommand: false brand: "" nexttasks: '#none#': - "5" scriptarguments: input: simple: ${incident.rawJSON} separatecontext: false view: |- { "position": { "x": 265, "y": 720 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "5": id: "5" taskid: 32488f9b-fdf1-4cfb-892a-e37a75c447c6 type: regular task: id: 32488f9b-fdf1-4cfb-892a-e37a75c447c6 version: -1 name: Send Incident Data to Arcanna description: Sends a raw event to Arcanna script: Arcanna.AI|||arcanna-send-event type: regular iscommand: true brand: Arcanna.AI nexttasks: '#none#': - "8" scriptarguments: event_json: simple: ${JsonObject} job_id: {} severity: simple: ${incident.severity} title: simple: ${incident.name} separatecontext: false view: |- { "position": { "x": 265, "y": 895 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "7": id: "7" taskid: 28aaad26-92fe-4b2b-80a7-de89829927f5 type: regular task: id: 28aaad26-92fe-4b2b-80a7-de89829927f5 version: -1 name: Get Arcanna Result description: Retrieves Arcanna Inference result script: '|||arcanna-get-event-status' type: regular iscommand: true brand: "" nexttasks: '#none#': - "9" scriptarguments: event_id: simple: ${Arcanna.Event.event_id} job_id: {} separatecontext: false view: |- { "position": { "x": 265, "y": 1245 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "8": id: "8" taskid: 89661fe4-0e9b-454d-8b68-688e88911014 type: regular task: id: 89661fe4-0e9b-454d-8b68-688e88911014 version: -1 name: Await Arcanna Inference to finish description: Sleep for X seconds scriptName: Sleep type: regular iscommand: false brand: "" nexttasks: '#none#': - "7" scriptarguments: seconds: simple: "5" separatecontext: false view: |- { "position": { "x": 265, "y": 1070 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "9": id: "9" taskid: c1a27ffe-e3c0-4089-8080-2f842935638d type: condition task: id: c1a27ffe-e3c0-4089-8080-2f842935638d version: -1 name: 'Did Arcanna inference successfully completed ? ' description: 'Check Arcanna inference result' type: condition iscommand: false brand: "" nexttasks: Arcanna-Inference-Unrecognized-Result: - "12" "yes": - "11" separatecontext: false conditions: - label: "yes" condition: - - operator: isEqualString left: value: complex: root: Arcanna.Event accessor: status iscontext: true right: value: simple: OK - label: Arcanna-Inference-Unrecognized-Result condition: - - operator: isEqualString left: value: complex: root: Arcanna.Event accessor: status iscontext: true right: value: simple: ERROR view: |- { "position": { "x": 265, "y": 1420 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "10": id: "10" taskid: aa62e45b-efe5-40c8-8349-636c680fb2cb type: regular task: id: aa62e45b-efe5-40c8-8349-636c680fb2cb version: -1 name: closeInvestigation description: Close the current incident script: Builtin|||closeInvestigation type: regular iscommand: true brand: Builtin nexttasks: '#none#': - "2" scriptarguments: assetid: {} closeNotes: simple: |- Arcanna decision: ${Arcanna.Event.result} Arcanna duplicate: ${Arcanna.Event.is_duplicated} closeReason: simple: False Positive emailclassification: {} id: simple: ${incident.id} phishingsubtype: {} separatecontext: false view: |- { "position": { "x": 480, "y": 2295 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "11": id: "11" taskid: f59e600c-572f-492c-84de-cfb98b91ae66 type: condition task: id: f59e600c-572f-492c-84de-cfb98b91ae66 version: -1 name: Is Arcanna Decision to close incident? description: Check Arcanna Decision and act accordingly tags: - arcanna-auto type: condition iscommand: false brand: "" nexttasks: "no": - "12" "yes": - "10" separatecontext: false conditions: - label: "yes" condition: - - operator: isEqualString left: value: complex: root: Arcanna.Event accessor: result iscontext: true right: value: simple: drop_alert - label: "no" condition: - - operator: isEqualString left: value: complex: root: Arcanna.Event accessor: result iscontext: true right: value: simple: escalate_alert view: |- { "position": { "x": 470, "y": 1595 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "12": id: "12" taskid: 3ca15a2c-fc27-4500-8553-344500769b59 type: regular task: id: 3ca15a2c-fc27-4500-8553-344500769b59 version: -1 name: Assign Analyst to incident description: |- Assign analyst to incident. By default, the analyst is picked randomly from the available users, according to the provided roles (if no roles provided, will fetch all users). Otherwise, the analyst will be picked according to the 'assignBy' arguments. machine-learning: DBot will calculated and decide who is the best analyst for the job. top-user: The user that is most commonly owns this type of incident less-busy-user: The less busy analyst will be picked to be the incident owner. online: The analyst is picked randomly from all online analysts, according to the provided roles (if no roles provided, will fetch all users). current: The user that executed the command scriptName: AssignAnalystToIncident type: regular iscommand: false brand: "" nexttasks: '#none#': - "13" scriptarguments: assignBy: simple: random email: {} onCall: {} roles: {} username: {} separatecontext: false view: |- { "position": { "x": 50, "y": 1770 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "13": id: "13" taskid: 66d491db-e02b-44fc-8912-46f27f10a8c4 type: regular task: id: 66d491db-e02b-44fc-8912-46f27f10a8c4 version: -1 name: Manually Review Incident description: |- Perform Manual Investigation. Add all indicator by running commands in the War Room. Once completed mark this as completed. type: regular iscommand: false brand: "" nexttasks: '#none#': - "17" separatecontext: false view: |- { "position": { "x": 50, "y": 1945 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "14": id: "14" taskid: 18854dfc-d3b8-4f7f-8d66-6fd4e8f7af95 type: regular task: id: 18854dfc-d3b8-4f7f-8d66-6fd4e8f7af95 version: -1 name: closeInvestigation after Analysis description: Close the current incident script: Builtin|||closeInvestigation type: regular iscommand: true brand: Builtin nexttasks: '#none#': - "2" scriptarguments: assetid: {} closeNotes: simple: ${Closure_Reason_Survey.Answers.1} closeReason: simple: ${Closure_Reason_Survey.Answers.0} emailclassification: {} id: simple: ${incident.id} phishingsubtype: {} separatecontext: false view: |- { "position": { "x": 50, "y": 2295 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "15": id: "15" taskid: 6004f4cb-1654-49a0-8615-591f1b5b7c48 type: regular task: id: 6004f4cb-1654-49a0-8615-591f1b5b7c48 version: -1 name: DeleteContext description: Delete field from context scriptName: DeleteContext type: regular iscommand: false brand: "" nexttasks: '#none#': - "16" scriptarguments: all: simple: "yes" index: {} key: {} keysToKeep: {} subplaybook: {} separatecontext: false view: |- { "position": { "x": 265, "y": 195 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "16": id: "16" taskid: 6fc82cdf-3f8c-4f83-806a-0553c437742c type: regular task: id: 6fc82cdf-3f8c-4f83-806a-0553c437742c version: -1 name: extractIndicators description: Extract all indicators according to server indicators configuration script: Builtin|||extractIndicators type: regular iscommand: true brand: Builtin nexttasks: '#none#': - "18" scriptarguments: entryID: {} filePath: {} investigationID: {} text: complex: root: incident separatecontext: false view: |- { "position": { "x": 265, "y": 370 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 "17": id: "17" taskid: 3f551f02-8e11-4c96-8cc7-705b008700bc type: collection task: id: 3f551f02-8e11-4c96-8cc7-705b008700bc version: -1 name: Get Analyst Input and add Closing Information description: Get Analyst manual investigation result type: collection iscommand: false brand: "" nexttasks: '#none#': - "14" separatecontext: false view: |- { "position": { "x": 50, "y": 2120 } } note: false timertriggers: [] ignoreworker: false message: to: subject: body: simple: Input Analyst investigation result. methods: [] format: "" bcc: cc: timings: retriescount: 2 retriesinterval: 360 completeafterreplies: 1 form: questions: - id: "0" label: "" labelarg: simple: Please input the CloseReason required: true gridcolumns: [] defaultrows: [] type: singleSelect options: [] optionsarg: [] fieldassociated: closereason placeholder: "" tooltip: Input from [Resolved, False Positive, Other, Duplicate ] readonly: false - id: "1" label: "" labelarg: simple: What are the closing notes required: true gridcolumns: [] defaultrows: [] type: longText options: [] optionsarg: [] fieldassociated: closenotes placeholder: "" tooltip: Add all relevant information about this incident closure readonly: false title: Closure_Reason_Survey description: Add closure reason information sender: "" expired: false totalanswers: 0 skipunavailable: false quietmode: 0 "18": id: "18" taskid: f3e16be7-c709-44eb-87f6-eec03a53a83b type: regular task: id: f3e16be7-c709-44eb-87f6-eec03a53a83b version: -1 name: Retrieve Arcanna Feedback Field description: Returns the Feedback field set on integration script: '|||arcanna-get-feedback-field' type: regular iscommand: true brand: "" nexttasks: '#none#': - "4" separatecontext: false view: |- { "position": { "x": 265, "y": 545 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 view: |- { "linkLabelsPosition": { "11_12_no": 0.38, "9_12_Arcanna-Inference-Unrecognized-Result": 0.36 }, "paper": { "dimensions": { "height": 2485, "width": 810, "x": 50, "y": 50 } } } inputs: [] outputs: [] tests: - No tests (auto formatted) fromversion: 6.2.0 description: Deprecated. Use ArcannaGenericInvestigation instead.