- 16 Apr 2023
- 11 Minutes to read
- DarkLight
- PDF
Cybereason 3.1.2
- Updated on 16 Apr 2023
- 11 Minutes to read
- DarkLight
- PDF
tags: Python | EDR | Automation | Prevention
Description
Integration with Cybereason is created to support CDC users by providing enrichment that consists of the details of specific domains, machines, processes, Malops (malicious operations), users, files, etc. – that are connected to Cybereason. These enable CDC users to make informed decisions regarding incident response.
Cybereason EDR consolidates intelligence about each attack into a single visual representation called a Malop. Each Malop organizes the relevant attack data into an easy-to-read, interactive graphical interface, providing a complete timeline of the attack, the flow of malware across processes and users, and all incoming and outgoing communications for affected machines. This gives security professionals unparalleled visibility into IT environments.
CyberProof uses generic adaptive cards to display host-related information in a meaningful intuitive GUI. This helps facilitate easy understanding of host data as well as the status of the host on Cybereason. CyberProof also ensures that preventive capabilities of the pack can be enabled/disabled - based on customer requirements.
We do so by providing CLI commands to prevent/un-prevent a file, enrich data about a specific connection/domain/machine/process or processes by machine/Malop/user/file/connection by IP/connection by machine, isolate/un-isolate a machine, add a comment to a Malop, update the malop status command, etc.
Integration Type: | EPP/ EDR |
Information read: | Domain, Process, User, File, etc. |
API Supported: | |
Input: | Domain name/Machine Name/Hash (MD5/SHA1/SHA256)/GUID of malops/Username/Process Name/Threat Name/File Name/Malware Name |
Output: | Detailed enrichment consisting of relevant information. |
Customer Configuration
To configure the password update scheduler, follow these steps:
- Go to the Cybereason Pack UI on StackStorm.
- Set ‘success_details_secret_name’ by the secret name to store details of companies for which the password is updated. Do not use underscore. Example: successDetails.
- Set ‘retry_details_secret_name’ by the secret name to store details of companies for which password update has failed. Do not use underscore. Example: retryDetails.
- Enter the Cybereason password character length in ‘cybereason_password_length’ Example: 12. Minimum password length required is 8 characters with a maximum of 64 characters, as per Cybereason password policy.
- Set the number of attempts with time interval to retry password update scheduler execution in ‘attempt_details_config’. Example: {"attempts_to_try":3,"timing_details_for_attempts":[1,3,8]}
Timings details should be in hours, such as 0.5,1,3,8. - To display the success or error messages related to the password update scheduler execution, set ‘cdc_details_to_display_message’ with required ‘cdc_type’ - such as channel/alert/incident and respective id_value. Example: {"cdc_type":"channel","id_value":"633422ed8c36e71ea063441c"}
- Note that all parameters mentioned in the above steps have default values as those stated in the example, except for ‘cdc_type’ and ‘id_value’.
Parameter | Required |
success_details_secret_name | True |
retry_details_secret_name | True |
cybereason_password_length | True |
attempt_details_config | True |
attempt_details_config | True |
cdc_details_to_display_message | True |
CDC Command Lines
* **add_comment_cli**
As per the requirement of SoC, we have created a new CLI that adds comments to the Malop from the CDC. comment and malop_guid are mandatory fields in the CLI. Note that you can get all available malop guids by running the query_malops_cli command, with the respective company name from the CDC.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | Company name configured in configuration. | False |
malop_guid | string | Globally unique identifier of malop (malware). | True |
comment | string | The comment to be added. | True |
* **check_cli_action_availability_and_remove_disabled**
Check if the CLI action is enabled and remove CLIs that are disabled.
Option | Type | Description | Required |
---|---|---|---|
pack_name | string | Name of the pack. | True |
cli_action_name | string | Name of the CLI action to be checked. | True |
* **get_disabled_cli_action_list**
Get the disabled CLI action list of the pack.
Option | Type | Description | Required |
---|---|---|---|
disabled_cli_action_list | array | List of CLI action names that are disabled for the pack. | True |
* **isolate_machine_cli**
CLI of the CDC, of the isolate-machine in the CDC message thread. This CLI is used to isolate a machine using Cybereason.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
machine | string | The name of the machine. | True |
* **is_probe_connected_cli**
CLI of the CDC, of is-probe-connected in the CDC message thread. This CLI enables checks whether the machine is connected.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
machine | string | The name of the machine. | True |
* **prevent_file_cli**
CLI of the CDC, of prevent-file in the CDC message thread. This CLI is used to perform the file prevention task using Cybereason.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
file_MD5_hash | string | The MD5 hash of the relevant file. | True |
* **query_connection_by_ip_cli**
CLI of the CDC, of query-connection-by-ip in the CDC message thread. This CLI returns the connection information based on the given IP and applied filters.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
ip | string | IP address in IPv4/v6 format. | True |
has_suspicions | boolean | True to set only has suspicions. | False |
used_by_malware | boolean | True to set only used by malware. | False |
country_name | string | The country name for the filter. | False |
* **query_connection_by_machine_cli**
CLI of the CDC, of query-connection-by-machine in the CDC message thread. This gives details of the connection, based on the given machine and applied filters.
Option | Type | Description | Required |
---|---|---|---|
machine | string | The name of the machine. | True |
company_name | string | The company name configured in the configuration. | False |
has_suspicions | boolean | True to set only has any suspicions. | False |
has_malops | boolean | True to set only has any malops. | False |
has_suspicious_processes | boolean | True to set only has suspicions processes. | False |
os_type | string | Filter to search os_type. | False |
* **query_connection_by_malops_guid_cli**
CLI of the CDC, of query-connection-by-malops-guid in the CDC message thread. This gives details of the connection, based on the given machine and applied filters.
Option | Type | Description | Required |
---|---|---|---|
malops_guid | string | The guid of the malops to search. | True |
company_name | string | The company name configured in the configuration. | False |
* **query_connection_cli**
CLI of the CDC, of query-connection in the CDC message thread. This CLI gives details of the connections configuration available, based on the given connection_name or server port.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
connection_name | string | Filter for the connection name to search. | False |
server_port | integer | Filter for the server port type to search. | False |
* **query_domain_cli**
CLI of the CDC, of query-domain in the CDC message thread. This CLI gives details about the domain configuration information available, based on the domain name and filters applied.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
domain_name | string | Domain_name. | True |
reputation | string | Reputation filter to search. | False |
is_internal_domain | boolean | Is it an internal domain? | False |
was_ever_resolved | boolean | Was it ever resolved? | False |
was_ever_resolved_as_second_domain | boolean | Was it ever resolved as a second level domain? | False |
* **query_file_by_machine_cli**
CLI of the CDC, of search-file-by-machine in the CDC message thread. This CLI gives information about the file based on the machine and other filters applied.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
machine | string | The name of the machine. | False |
has_suspicions | boolean | True to set only has any suspicions. | False |
has_malops | boolean | True to set only has any malops. | False |
has_suspicious_processes | boolean | True to set only has suspicious processes. | False |
os_type | string | Filter to search the OS type of machine. | False |
* **query_file_by_process_cli**
CLI of the CDC, of search-file-by-process in the CDC message thread. This CLI helps in getting the information about the file based on filters.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
is_downloaded_from_internet | boolean | The process downloaded from the internet or not. | False |
has_malops | boolean | The has malop filter. | False |
has_suspicions | boolean | The has suspicions filter. | False |
command_line | string | The command line filter. | False |
has_listening_connection | boolean | The filter for listening connection status. | False |
has_external_connection | boolean | The filter for has external connection status. | False |
* **query_file_cli**
CLI of the CDC, of search-file in the CDC message thread. This CLI gives details about the file based on the filters provided.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
hash_value | string | The hash value of the file to filter. | False |
name | string | The name of the file to filter. | False |
guid | string | The guid of the file to filter. | False |
file_is_signed | boolean | The signed file filter. | False |
signature_verified | boolean | The signature verified file filter. | False |
path | string | The path of the file to filter. | False |
* **query_malops_cli**
CLI of the CDC, of query-malops in the CDC message thread. This CLI provides details about the available malops based on the guide provided. Note that guid needs to be in array format; e.g., ['dummy_guid'].
Option | Type | Description | Required |
---|---|---|---|
guid_list | array | Globally Unique Identifier of malops. | False |
company_name | string | The company name configured in the configuration. | False |
* **query_process_cli**
CLI of the CDC, of query-search-process in the CDC message thread. This CLI provides information about available processes, based on the process name and other filters.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
process_name | string | The malop process name to filter. | True |
guid | string | The malop guid to filter. | False |
is_downloaded_from_internet | boolean | The process downloaded from the internet or not. | False |
has_malops | boolean | The has malop filter. | False |
has_suspicions | boolean | The has suspicions filter. | False |
command_line | string | The command line is filter. | False |
has_incoming_connection | boolean | The has incoming connection as filter. | False |
has_outgoing_connection | boolean | The has outgoing connection as filter. | False |
* **query_process_on_machine_cli**
CLI of the CDC, of query-process-on-machine in the CDC message thread. This CLI provides information about the processes, based on the machine name other applied filters.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
machine_name | string | Search process by machine name. | True |
has_malop | boolean | The has malop filter. | False |
has_suspicions | boolean | The has suspicions filter. | False |
has_suspicions_process | boolean | The has suspicions process filter. | False |
os_type | string | The OS type to filter. | False |
* **query_user_cli**
CLI of the CDC, of query-user in the CDC message thread. This CLI gives information about user configuration, based on the available filters.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
domain_user_name | string | Domain/user name of the configuration. | False |
domain | string | Domain name of the configuration. | False |
has_suspicious | boolean | Is suspicious. | False |
local_system | boolean | Local_system | False |
* **unisolate_machine_cli**
CLI of the CDC, of unisolate-machine in the CDC message thread. This CLI helps in getting a machine un-isolated with the help of Cybereason.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
machine | string | The name of the machine. | True |
* **unprevent_file_cli**
CLI of the CDC, of unprevent-file in the CDC message thread. This CLI helps in unpreventing the file with the help of Cybereason.
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
file_MD5_hash | string | The MD5 hash of the relevant file. | True |
* **update_malop_status_cli**
As per the requirement of SoC, we have created a new CLI that updates the Malop status from the CDC. company_name, malop_guid, and status are mandatory fields in the CLI. Available options for status are translated to Cybereason UI status. For example, "todo" translates to "To review", "closed"-->"Remediated", "unread" -->"Unread", "fp" --> "Not relevant" and "open" -->"Under investigation".
Option | Type | Description | Required |
---|---|---|---|
company_name | string | The company name configured in the configuration. | False |
malop_guid | string | Globally Unique Identifier of malop (malware). | True |
status | string | The new status. | True |
Workflows
* **automate_malops_data_in_alert_async_created**
Workflow for enriching malops data in CDC alerts.
* **automate_malops_data_in_alert_created**
Workflow for enriching malops data in CDC alerts.
* **automate_malops_data_in_alert_updated**
Workflow for enriching malops data in CDC alerts.
* **check_single_tenant**
Check that the installation type is of single tenant type.
* **get_single_tenant_company_name**
Get the single tenant company name.
* **is_probe_connected_sub_workflow**
CLI of the CDC, of is-probe-connected in the CDC the message thread.
* **password_update**
Update password.
* **prevent_file_sub_workflow**
Sub-workflow to prevent a file.
* **query_connection_by_ip_sub_workflow**
CLI of the CDC, of query-connection-by-ip in the CDC message thread.
* **query_connection_by_machine_sub_workflow**
CLI of the CDC, of query-connection-by-machine in the CDC message thread.
* **query_connection_by_malops_guid_sub_workflow**
CLI of the CDC, of query-connection-by-malops-guid-sub-workflow in the CDC message thread.
* **query_connection_sub_workflow**
CLI of the CDC, of query-connection in the CDC message thread.
* **query_domain_sub_workflow**
CLI of the CDC, of query-domain in the CDC message thread.
* **query_file_by_machine_sub_workflow**
Sub-workflow to run a search file by machine.
* **query_file_by_process_sub_workflow**
Sub-workflow for search-file-by-process. Thread.
* **query_file_sub_workflow**
Sub-workflow to run a file search query.
* **query_malops_sub_workflow**
CLI of the CDC, of query-malops in the CDC message thread.
* **query_process_on_machine_sub_workflow**
CLI of the CDC, of query-process-on-machine in the CDC message thread.
* **query_process_sub_workflow**
CLI of the CDC, of query-search-process in the CDC message thread.
* **query_user_sub_workflow**
CLI of the CDC, of query-user in the CDC message thread.
* **tenant_check_sub_workflow**
Check the type of tenant if a single tenant is activated, and then fetch the company name if not provided.
* **unprevent_file_sub_workflow**
Sub-workflow for unprevent file.
Rules
* **automate_malops_data_enrichment_in_alert_created_async_rule**
Automate the malops data enrichment in an alert when an alert is created.
* **automate_malops_data_enrichment_in_alert_update_rule**
Automate the malops data enrichment in an alert when an alert is updated.
* **updates_cybereason_password_retry**
Scheduler to update password for Cybereason companies/user.
* **update_cybereason_password**
Scheduler to update password for Cybereason companies/user.
Sensors
* **MalopsSensor**
Sensor that pulls malops (malwares) from Cybereason
Poll interval - 30s
Triggers
No triggers
Known Issues
- Cybereason API for add comment to malop does not validate if the provided malop guid is valid or invalid, so add_comment to malop will always return a success message even if the malop guid is invalid/does not exist in the system.
- Cybereason API for update malop status does not validate if the provided malop guid is valid or invalid, so update_malop_status will always return a success message even if the malop guid is invalid/does not exist in the system.
- Cybereason automatic enrichment of malops data for alerts in CDC is not available in CDC versions below 2.6.
Change Log
Pack Version | Date of Merge | Changes |
---|---|---|
v3.1.1 | 2022-11-01 | Azure Pack version changes needed for password update. |
v3.1.0 | 2022-10-4 | Logic Apps support. |
v3.0.0 | 2022-09-07 | CDC Async and backend API replacement. |
v2.14.2 | 2022-08-29 | Update for regression versions pack updates. |
v2.14.1 | 2022-07-27 | Added log_levels in alert update and creation related workflows. |
v2.14.0 | 2022-07-12 | Added change for Async alert create malops rule. |