Suspicious#
README
Suspicious_Verdict#
Overview#
Suspicious_Verdict synchronizes triage decisions made on a TheHive Case or Alert with Suspicious, the case management platform developed and operated by Thales CERT (THA-CERT).
When an analyst adds a verdict tag (SAFE, SUSPICIOUS, or DANGEROUS) to a Case or Alert in TheHive, running this responder automatically updates the corresponding investigation in Suspicious. This eliminates the need to manually copy the verdict from one platform to the other.
| Author | THA-CERT // EBA |
| License | AGPL-V3 |
| Data types | thehive:case, thehive:alert |
| Related project | thalesgroup-cert/suspicious |
How it works#
The responder follows these steps:
-
Identify the Suspicious investigation. The responder extracts the Suspicious case ID from the TheHive Case or Alert title. The title is expected to contain a pattern such as
... #1234 - <description>. -
Read the verdict tag. The responder checks the Case or Alert tags for exactly one tag matching
suspicious:verdict="<VALUE>", where<VALUE>must beSAFE,SUSPICIOUS, orDANGEROUS(see Taxonomy). -
Update the Suspicious investigation. The responder sends a
PATCHrequest to:
{suspicious_url}/api/investigations/{suspicious_case_id}/edit-global/
with the following payload:
{
"score": 10,
"confidence": 100,
"classification": "<VALUE>"
}
- Mark the item as processed.
Once Suspicious returns a successful
200response, the responder adds thesuspicious:status="challenge_reviewed."tag to the Case or Alert and reports a confirmation message in TheHive.
Error handling#
The responder fails explicitly, with the error visible in the TheHive task log, in any of the following cases:
- the Case or Alert ID is missing from the payload;
- no Suspicious case ID can be extracted from the title;
- the Case or Alert has no tags;
- multiple
suspicious:verdict=tags are present; - no valid
suspicious:verdict=tag is found; - the Suspicious API request fails, either because of a non-
200response or a network error.
Taxonomy#
This responder uses the suspicious taxonomy provided with the project (taxonomy/machinetag.json). Import this taxonomy into TheHive to make the three verdict values available through tag auto-completion, each with its own colour.
| Tag | Meaning | Colour |
|---|---|---|
suspicious:verdict="SAFE" |
The Case or Alert is classified as Safe in Suspicious | 🟢 #00ad1c |
suspicious:verdict="SUSPICIOUS" |
The Case or Alert is classified as Suspicious | 🟠 #ffa800 |
suspicious:verdict="DANGEROUS" |
The Case or Alert is classified as Dangerous | 🔴 #ff0000 |
An analyst only needs to add the appropriate verdict tag to the Case or Alert and run the responder, either manually or automatically (see below).
Configuration#
| Name | Type | Required | Description |
|---|---|---|---|
suspicious_url |
string | Yes | Base URL of the Suspicious instance, e.g. http://localhost:9020 |
suspicious_token |
string | Yes | Suspicious API token used for authentication |
Configure these values under Organization → Responders → Suspicious_Verdict in Cortex, then enable the responder for your TheHive organization.
Usage#
Manual trigger#
To run the responder manually:
- Add the appropriate verdict tag to the Case or Alert, for example
suspicious:verdict="DANGEROUS". - From the Case or Alert view in TheHive, run the Suspicious_Verdict responder.
- The corresponding Suspicious investigation is updated, and the Case or Alert is tagged
suspicious:status="challenge_reviewed.".
Automatic trigger (optional)#
Running the responder manually after every verdict update can easily be overlooked. TheHive supports notifications that can automatically run a responder when a matching event occurs — in this case, when a suspicious:verdict= tag is added to a Case or Alert.
The corresponding notification definition, Run Suspicious_Verdict Responder, is provided separately in the StrangeBee/integrations repository, under integrations/vendors/Suspicious/thehive/functions, along with a dedicated README explaining how to import and configure it in TheHive.
➡️ See StrangeBee/integrations — Run Suspicious_Verdict Responder for the fully automated workflow:
tag added → responder runs → Suspicious investigation updated
No manual action is required once the notification is configured.
Requirements#
requests
cortexutils
Files in this responder#
```text Suspicious_Verdict/ ├── suspicious_verdict.py ├── Suspicious_Verdict.json ├── requirements.txt ├── README.md └── taxonomy/ └── machinetag.json
Suspicious_Verdict#
Author: THA-CERT // EBA
License: AGPL-V3
Version: 1.0
Supported data types:
- thehive:case
- thehive:alert
Registration required: N/A
Subscription required: N/A
Free subscription: N/A
Third party service: N/A
Description#
Classifies cases or alerts on the Suspicious platform.
Configuration#
| suspicious_url | Suspicious Base URL, e.g., http://localhost:9020 |
|---|---|
| Default value if not configured | N/A |
| Type of the configuration item | string |
| The configuration item can contain multiple values | False |
| Is required | True |
| suspicious_token | Suspicious API token for authentication |
|---|---|
| Default value if not configured | N/A |
| Type of the configuration item | string |
| The configuration item can contain multiple values | False |
| Is required | True |