Skip to main content

SpecterOpsBHE

This Integration is part of the SpecterOpsBHE Pack.#

Supported versions

Supported Cortex XSOAR versions: 6.10.0 and later.

This integration enables automated retrieval of attack path findings from BloodHound into Cortex XSOAR, streamlining incident creation and investigation. This integration was integrated and tested with version 1.0.0 of SpecterOpsBHE.

Configure SpecterOpsBHE in Cortex#

ParameterDescriptionRequired
BloodHound Enterprise DomainBloodHound Enterprise Domain URLTrue
Token IDBloodHound Enterprise API token IDTrue
Token KeyBloodHound Enterprise API token keyTrue
Proxy URLProxy server urlFalse
Proxy URL UsernameProxy server url usernameFalse
Proxy URL PasswordProxy server url passwordFalse
Finding EnvironmentThe environment from which to fetch attack paths. Default is all.False
Finding CategoryThe category of attack paths to fetch. Default is all.False
Fetch incidentsEnable automatic fetching of attack path findings from BloodHound Enterprise.False
Incidents Fetch IntervalThe interval for fetching attack pathsFalse
Incident typeThe incident type to assign to fetched attack path findings. Recommended: SpecterOpsBHE Attack Path.False

Commands#

You can execute these commands from the CLI, as part of an automation, or in a playbook. After you successfully execute a command, a DBot message appears in the War Room with the command details.

bhe-object-id-get#


Fetches the object ID using the object name.

Base Command#

bhe-object-id-get

Input#

Argument NameDescriptionRequired
object_namesThe object name associated with object ID.Required

Context Output#

PathTypeDescription
SpecterOpsBHE.Object.StatusstringThe status of the object ID lookup (success or error).
SpecterOpsBHE.Object.MessagestringThe message describing the result of the lookup.
SpecterOpsBHE.Object.ObjectIDstringThe unique object ID of the found object.
SpecterOpsBHE.Object.ObjectNamestringThe name of the object that was searched.

Command Example#

!bhe-object-id-get object_names="OBJECTNAME@example.com"

Human Readable Output#

Object NameStatusMessageObject ID
OBJECTNAME@example.comsuccessObject ID found.12345678-1234-1234-1234-123456789abc

bhe-asset-info-get#


Fetches asset information using the object ID.

Base Command#

bhe-asset-info-get

Input#

Argument NameDescriptionRequired
object_idsThe object ID to fetch asset information.Required

Context Output#

PathTypeDescription
SpecterOpsBHE.Asset.StatusstringThe status of the asset information fetch (success or error).
SpecterOpsBHE.Asset.MessagestringThe message describing the result of the asset information fetch.
SpecterOpsBHE.Asset.ObjectIDstringThe object ID for which asset information was fetched.
SpecterOpsBHE.Asset.DatajsonThe raw asset data containing all asset information fields (name, type, objectid, domain, enabled, email, and other properties).

Command Example#

!bhe-asset-info-get object_ids="12345678-1234-1234-1234-123456789abc,87654321-4321-4321-4321-cba987654321"

Human Readable Output#

Object IDStatusMessageRaw Data
12345678-1234-1234-1234-123456789abcsuccessAsset information retrieved successfully.{
โ€ƒ"name": "OBJECTNAME@example.com",
โ€ƒ"type": "User",
โ€ƒ"objectid": "12345678-1234-1234-1234-123456789abc",
โ€ƒ"domain": "example.com",
โ€ƒ"enabled": true
}

bhe-path-exist#


Checks if a path exists between the two nodes.

Base Command#

bhe-path-exist

Input#

Argument NameDescriptionRequired
from_principalThe start node.Optional
to_principalThe end node.Optional

Context Output#

PathTypeDescription
SpecterOpsBHE.Path.FromPrincipalstringThe start node (from principal) used in the path check.
SpecterOpsBHE.Path.ToPrincipalstringThe end node (to principal) used in the path check.
SpecterOpsBHE.Path.StatusstringThe status of the path check (success or error).
SpecterOpsBHE.Path.MessagestringThe message describing the result of the path check.
SpecterOpsBHE.Path.DataBooleanWhether a path exists between the nodes (True or False).

Command Example#

!bhe-path-exist from_principal="12345678-1234-1234-1234-123456789abc" to_principal="87654321-4321-4321-4321-cba987654321"

Human Readable Output#

From PrincipalTo PrincipalStatusMessagePath Exists
12345678-1234-1234-1234-123456789abc87654321-4321-4321-4321-cba987654321successPath exists between nodes.True