Reputation and DBotScore
DBot is the Cortex XSOAR machine learning bot, which ingests information about indicators to determine if they are malicious. Since DBot requires a very specific dataset, you must format the data according to this article. As described in the generic reputation command article, when developing an integration that implements a generic reputation command, it is necessary also to create a corresponding DBot score object.
#
Context FormatThe DBot score must be at the root level of the context and contain all the required keys, as listed below.
Key | Meaning | Required |
---|---|---|
Indicator | The indicator value. | Required |
Type | The indicator type. Can be: ip, file, email, url, cve, account, cider, domainglob, certificate, or cryptocurrency. | Required |
Vendor | The vendor reporting the score of the indicator. | Required |
Score | An integer regarding the status of the indicator. See Score Types below. | Required |
Reliability | The reliability of the source providing the intelligence data. See Reliability Level below. | Required |
Message | Optional message to show an API response. For example, "Not found" . | Optional |
#
Reliability LevelWhen merging indicators, the reliability of an intelligence-data source impacts the reputation of an indicator and the values assigned to indicator fields.
An integration that outputs a DBotScore object, and hence defines each indicator's reliability, should allow the user to manually configure the default reliability for the generated indicator's DBotScore.
To achieve this, a Source Reliability (named integration_reliability
) parameter has to be implemented in the YAML file.
This parameter is later used to determine the reliability level when creating the DBotScore object.
#
Example of Implementing a Reliability Parameter (in an integration's YAML file)NOTE: The values are case sensitive.
#
Score TypesDBot uses an integer to represent the reputation of an indicator.
Number | Reputation |
---|---|
0 | Unknown |
1 | Good |
2 | Suspicious |
3 | Bad |
#
UnknownAn unknown score can be interpeted in the following ways:
- The vendor returns an "Unknown" score for the indicator.
- The vendor returns nothing on the indicator.
In both cases, you mark the indicator score as Unknown, but in the second case you need to add a message: "No results found"
.
#
MaliciousIf the DBot score is returned as a "3"
or "Bad"
, you need to add to the context that a malicious indicator was found. To do this, add an additional key to the URL
, IP
, or File
context called "Malicious"
as shown below:
Malicious
has two key values: "Vendor"
and "Description"
. The Vendor
is the entity reporting the malicious indicator. The Description
explains briefly what was found. For example:
NOTE: It is not possible to use the Cortex XSOAR Transformers (DT) within the DBot score context. For example, using the following in your DBot context, will not work: