CB Edr Integration Guide
CB Edr Integration Guide
You can find the most up-to-date technical documentation on the VMware website at:
https://docs.vmware.com/
VMware, Inc.
3401 Hillview Ave.
Palo Alto, CA 94304
www.vmware.com
©
Copyright 2021 VMware, Inc. All rights reserved. Copyright and trademark information.
VMware, Inc. 2
Contents
Preface 6
2 App Control 10
Overview 10
Built-in Compatibility Features 10
Features when Servers are Integrated 11
Activating Integration 12
Creating a Carbon Black EDR User for Integration 12
Configuring and Activating the Integration 12
Viewing Integration Settings in Carbon Black EDR 14
Regenerating the Authorization ID for Server Communication 15
App Control Console 15
Sensor Information 16
File and Process Information 17
Event Information 19
Links to the Carbon Black EDR Console 20
Correlation of Exported Data 20
4 EMET 24
Overview 24
EMET Events 25
Process Search and Analysis for EMET Events 26
EMET Configuration Searches 27
EMET Events and Threat Reports 27
Enabling and Disabling the EMET Protection Feed 29
VMware, Inc. 3
VMware Carbon Black EDR Integration Guide
6 Third-Party Authentication 46
Overview 46
Set Up Duo Administrator Unix Application Account 46
Configure Duo Plugin 47
Map Carbon Black EDR Users to Duo Users 48
secrets.ini Settings File 48
Enable Two-Factor Authentication 48
7 Syslog 50
Overview of Logging 50
Notification Logs 50
Audit Logs 51
Syslog Format 52
Watchlist Hit on Process 52
Watchlist Hit on Binary 54
Feed Hit on Process Ingress 55
Feed Hit on Process Storage 57
Feed Hit on Binary Ingress 58
Feed Hit on Binary Storage 59
Feed Hit on Host Ingress 61
Feed Hit on Process Query 62
Feed Hit on Binary Query 63
Syslog Integration 64
Setting Up Remote Devices 64
Setting Up Server Data Transmission 64
Sending All Data to a Remote Device 66
VMware, Inc. 4
VMware Carbon Black EDR Integration Guide
8 VDI Support 82
Overview 82
Configuring the Server for VDI Support 83
Enabling VDI Support 83
Deploying a VDI Support Plug-in 83
Specifying the Scope of VDI Support 84
Global VDI Support 84
Setting up Global VDI Support on Windows 85
Setting up Global VDI Support on macOS 85
Setting up Global VDI Support on Linux 85
Sensor Group VDI Support 86
VMware, Inc. 5
Preface
The VMware Carbon Black Integration Guide provides information for administrators who are
responsible for integrating VMware Carbon Black EDR with other tools and applications.
You can integrate VMware Carbon Black EDR with various tools and applications such as VMware
Carbon Black App Control, SSO identity providers, Syslog and others.
Intended Audience
The information is written for experienced VMware Carbon Black EDR administrators who
integrate VMware Carbon Black EDR with other tools and applications.
VMware, Inc. 6
Before You Begin
1
This preface provides a brief orientation to the VMware Carbon Black EDR Integration Guide
v7.5.
n Other Documentation
Chapter Description
Chapter 2 App Control Describes the procedure for integrating Carbon Black EDR with VMware Carbon Black
App Control. It describes the available features when this integration is active, and general
features that contribute to the coexistence of the Carbon Black EDR sensor and App
Control agent on the same computer.
Chapter 3 Anti-Malware Describes the Anti-Malware Scanning Interface (AMSI) support in the Carbon Black EDR
Scanning Interface Event Forwarder. This is a beta release of this feature.
Chapter 4 EMET Describes the procedure for integrating a Carbon Black EDR server with the Microsoft
Enhanced Mitigation Experience Toolkit (EMET).
Chapter 5 SSO Identity Describes supported SAML 2.0 specifications and SAML 2.0 Single Sign-On (SSO) setup. It
Providers also explains how to integrate with the OKTA, Shibboleth, and ADFS IdPs.
Chapter 6 Third-Party Describes how to integrate Duo plug-in; you can configure two-factor authentication and
Authentication download the Duo Mobile application on a mobile device.
Chapter 7 Syslog Describes syslog output for Carbon Black EDR events. It provides descriptions and
examples of the output, and explains how you can use syslog output for notification of
alerts.
Chapter 8 VDI Support Describes Carbon Black EDR support for Virtual Desktop Infrastructure (VDI) and how to
configure your machines to use it.
VMware, Inc. 7
VMware Carbon Black EDR Integration Guide
Other Documentation
To accomplish tasks that are not covered in the VMware Carbon Black EDR Integration Guide,
see the following documentation.
n VMware Carbon Black EDR User Guide – Describes the Carbon Black EDR product and how
to use all of its features and perform administration tasks.
n VMware Carbon Black EDR Server Configuration (cb.conf) Guide – Provides all of the cb.conf
configuration file functions, descriptions, and parameters.
n VMware Carbon Black EDR Unified View Server Guide – Describes how to install and use the
Carbon Black EDR Unified View server, which is a standalone server that ties multiple Carbon
Black EDR servers together and provides a single interface. The Carbon Black EDR Unified
View interface allows you to perform queries across multiple Carbon Black EDR servers with
a unified result set. The Carbon Black EDR Unified View server also allows you to access the
full functionality of a single Carbon Black EDR server.
n VMware Carbon Black EDR Release Notes – Provides information about new and modified
features, issues resolved and general improvements in this release, and known issues and
limitations. It also includes required or suggested preparatory steps before installing the
server.
n VMware Carbon Black EDR API – Documentation for the Carbon Black EDR REST API is
located at https://developer.carbonblack.com/reference/enterprise-response.
Documentation for the Python module that can be used for easy access to the REST API is
hosted at https://cbapi.readthedocs.io.
VMware Carbon Black Technical Support offers several channels for resolving support questions.
Web: https://community.carbonblack.com
Email: [email protected]
VMware, Inc. 8
VMware Carbon Black EDR Integration Guide
Fax: 617.393.7499
Reporting Problems
When you call or email technical support, provide the following information to the support
representative.
Contact Your name, company name, telephone number, and email address
Hardware configuration Hardware configuration of the server or computer the product is running on (processor,
memory, and RAM)
Document version For documentation issues, specify the title of the manual you are using.
Problem Action causing the problem, error message returned, and any other appropriate output
VMware, Inc. 9
App Control
2
This chapter describes how to integrate Carbon Black EDR with VMware Carbon Black App
Control.
It describes the features that are available when this integration is active, and general features
that contribute to the coexistence of the Carbon Black EDR sensor and App Control agent.
Note App Control has also been known as the Bit9 Security platform and as CB Protection. You
might see these terms in this document.
n Overview
n Activating Integration
Overview
Carbon Black EDR provides powerful features for endpoint threat detection and response. App
Control provides its own powerful features for endpoint threat protection.
You can take advantage of their complementary features by installing both the Carbon Black EDR
sensor and the App Control agent on your endpoints, and adding Carbon Black EDR features
inside App Control to improve your security posture.
Note In addition to integrating with each other, both Carbon Black EDR and App Control can
take advantage of information from the VMware Carbon Black Cloud, which provides reputation
information, threat indicators, and attack classification intelligence. See “Threat Intelligence
Feeds” in the VMware Carbon Black EDR User Guide for more information.
VMware, Inc. 10
VMware Carbon Black EDR Integration Guide
The App Control server allows efficient operation of both the App Control agent and Carbon
Black EDR sensor on the same endpoint.
n Trust for Sensor Updates – Updater rules allows seamless installation and upgrades of
Carbon Black EDR Mac and Linux sensors that would otherwise have been blocked by a App
Control agent in Medium and High enforcement modes. See “Approving by Updater” in the
App Control console Help for more information about updater rules.
n Publisher Trust for Carbon Black EDR – A Publisher rule in App Control instructs agents to
trust (by default) Windows files that are identified as being from the publisher “Carbon Black,
Inc.” This is the publisher for Carbon Black EDR files. See “Approving or Banning by Publisher”
in the App Control console Help.
n Server Integration Interface – The Licensing tab on the App Control System Configuration
page includes a Carbon Black EDR section that you can use to activate integration with a
specific Carbon Black EDR server. Step-by-step instructions are included in Activating
Integration.
Most of these features involve making information from and about Carbon Black EDR available in
the App Control console:
n Carbon Black EDR Sensor Details in the App Control Console – Pages displaying details
about a computer that is running the App Control agent show whether the Carbon Black EDR
sensor is installed, and if so, the version and status of the sensor (for Windows agents only).
n Carbon Black EDR File Statistics in App Control Console – Details about a file on a computer
running the App Control agent show Carbon Black EDR statistics about the file — such as how
many watchlists it is on, the number of computers and processes in which the file has been
seen, and the number of network connections.
n Links to the Carbon Black EDR server in the App Control Console – Menu and inline links
from the App Control console Events table, Computer Details , and File Details pages
connect to the Carbon Black EDR data for the object that is being viewed.
n App Control Agent Status in the Carbon Black EDR Console – The Host Information page for
each computer running a sensor reports whether a App Control agent is installed.
n Process Data Correlation – A globally unique process identifier called a Process Key shows
when events on a Carbon Black EDR server and a App Control server are referencing the
same process. It uniquely identifies an individual instance of the running process. This
identifier is available in Syslog output, and as data that is exported for third-party analysis
tools such as Splunk.
VMware, Inc. 11
VMware Carbon Black EDR Integration Guide
Activating Integration
Integration configuration settings appear in both the Carbon Black EDR and App Control
consoles.
You can perform the integration configuration on the Licensing tab of the System Configuration
page in the App Control console. After the integration is set up, you can view the configuration in
the Carbon Black EDR console.
If you do not already have a user account for App Control integration, perform the following
procedure.
a In the Username field, enter a meaningful username such as App Control Integration .
b Populate the First Name and Last Name fields. These values appear in the Carbon Black
EDR console.
c Provide an email account for the user. An email account is required for Carbon Black EDR
console users. However, this email account can be fictitious, because it is not used as a
typical account.
To activate integration:
1 Review the information in Table 2.1 Integration Settings in App Control for Carbon Black EDR.
VMware, Inc. 12
VMware Carbon Black EDR Integration Guide
6 Open another browser and log into the App Control console using an account that has
Administrator privileges.
b If you are running v8.0.0 or higher, click the Administration (gear) icon and select System
Configuration .
9 Enter the Carbon Black EDR configuration settings as shown in the following table.
Table 2-1. Integration Settings in App Control for Carbon Black EDR
Field/Button Description
URL The URL of the Carbon Black EDR server to link to the App Control server. Port is only
necessary if you do not use standard ports on the Carbon Black EDR server (80 for HTTP and
443 for HTTPS).
You can copy the base URL (without any page-specific additions) from the Carbon Black EDR
browser and paste it into the relevant section of the App Control Configuration page.
Validate SSL Select this check box to cause a validity check on the Carbon Black EDR server certificate. This
Certificate should be selected only if the Carbon Black EDR server certificate is issued by a trusted
certificate authority. Without manual configuration, Carbon Black EDR uses a self-signed
certificate; this should not be checked.
API Token Enter the Carbon Black EDR server API Token here by pasting it from the Carbon Black EDR
console. Click the Test button to confirm that the server is accessible and that the key works.
The test returns one of the following values:
n Success, version: <Carbon Black EDR product version>
n Invalid API Token
n Server not accessible
Receive Watchlist Select this box to activate delivery of Carbon Black EDR watchlist events from the configured
Events server to the App Control server.
Force Strong SSL Select this box to cause the Carbon Black EDR server to check the App Control server
certificate before sending events. Important: This should not be selected if your App Control
server uses a self-signed App Control certificate on IIS.
VMware, Inc. 13
VMware Carbon Black EDR Integration Guide
10 Click the Test button to determine whether the servers can communicate. Possible causes of
failure and their troubleshooting steps are as follows:
n Invalid API Token – Make sure that the API token for the App Control user has been
copied correctly from the Carbon Black EDR console and pasted into the Configuration
page on the App Control console. Make sure that this user is a Global Administrator.
n Server not accessible – Confirm that the correct URL and port number (if needed) has
been entered in the Configuration page on the App Control console, and that the
Validate SSL certificate check box was not selected when you use a self-signed
certificate. Make sure that access to the Carbon Black EDR server is not blocked by a
network firewall.
n Force Strong SSL – Selecting this check box causes the Carbon Black EDR server to
check the App Control server certificate before sending watchlist events. This should be
checked only if the App Control console certificate is issued by a trusted authority (for
example, not self-signed).
If you cannot create a successful connection, contact VMware Carbon Black Technical
Support .
11 When you have entered and successfully tested the App Control server settings in the App
Control console, click Update on the System Configuration/Licensing page. The configuration
should be complete and the servers should be integrated.
Note
n You can change the watchlist and SSL settings in the Carbon Black EDR console. However,
you cannot change the URL or API Token parameters here. If you need to modify these
parameters, use the App Control console.
n The value in the Server URL field on this page must be resolvable by the Carbon Black EDR
server for proper communication with App Control.
To view the App Control integration status in the Carbon Black EDR console:
VMware, Inc. 14
VMware Carbon Black EDR Integration Guide
The status of the App Control server connection is shown in the Server Communication
Status panel in the top-right corner.
3 Three possible states can occur. You might need to perform more steps depending on the
status:
n App Control Server is connected – Indicates that the integration is configured and the
connection is functioning properly.
n App Control Server not configured – If the App Control server connection has not been
configured, a Settings button appears in the status line for the connection. Do not use
this button. You cannot configure the API Token or URL on this page; they must be
entered in the App Control console.
n Unable to connect to App Control Server – Can indicate network or firewall problems, a
bad URL, or port configuration. It can also occur if Force Strong SSL was chosen on the
App Control console System Configuration page for Carbon Black EDR, when a self-
signed certificate is being used on the App Control console.
You can also enter the token manually on the Carbon Black EDR side for diagnostic purposes. If
you think this token was compromised, or if your configuration stops working (for example,
because the Carbon Black EDR server lost the token due to a reinstall or a manual token change),
you can regenerate a new key.
a If you are running v7.2.3, select Administration > System Configuration and click the
Licensing tab.
b If you are running v8.0.0 or higher, click the Administration (gear) icon, select System
Configuration, and click the Licensing tab.
2 In the Carbon Black EDR panel, uncheck the Receive Watchlist Events box and click the
Update button.
3 Check the Receive Watchlist Events box and click the Update button. A new key is
generated.
VMware, Inc. 15
VMware Carbon Black EDR Integration Guide
Sensor Information
If you integrate the App Control server with the Carbon Black EDR server, App Control console
pages show Carbon Black EDR sensor details when they are available.
To view App Control-managed computers that are also running a Carbon Black EDR sensor:
2 On the Saved Views menu, select Carbon Black EDR Deployments to see computers that
have had a Carbon Black EDR sensor installed on them. This view also shows the Carbon
Black EDR sensor version and its current status.
3 Click the hyperlinked Computer Name to see more Carbon Black EDR sensor details on the
Computer Details page. The Carbon Black EDR tab reports the presence, version, status, and
other details of any Carbon Black EDR sensor that is found on a computer that is running the
App Control agent. If a Carbon Black EDR server is not configured or the computer is not
running a Carbon Black EDR sensor, this view shows Not installed . By default, the App
Control server checks Carbon Black EDR status every 30 minutes.
The Carbon Black EDR tab also provides a More information link to the Sensors page in the
Carbon Black EDR console.
Table 2-2. Carbon Black EDR tab fields on the App Control Computer Details page describes the
information that is available on the Carbon Black EDR tab for App Control Computer Details
pages. This information currently shows for Windows agents only. macOS and Linux agents
report that Carbon Black EDR information is Unknown.
VMware, Inc. 16
VMware Carbon Black EDR Integration Guide
Table 2-2. Carbon Black EDR tab fields on the App Control Computer Details page
Field Description
Sensor Version The version of the Carbon Black EDR sensor that is installed on this computer.
Sensor Status Last The last Carbon Black EDR sensor status for this computer, as reported by the App Control
Status (on Details agent to the App Control server. The App Control server checks Carbon Black EDR status
page) every 30 minutes. Status changes might be temporarily out of sync.
The possible values for Carbon Black EDR status are:
n Unknown
n Installed, initializing – sensor installed but not fully initialized
n Installed, running
n Installed, not running
n Not installed
n Stopped
On the Details page, the Last Status field on the Carbon Black EDR tab is similar to Sensor
Status in the table. However, it does not appear if sensor status is Unknown . Its possible
values are:
n Running
n Service not running
n Kernel not running
n Stopped
Note In addition to a 30-minute or less gap between sensor installation and App Control
polling of Carbon Black EDR status, status continues to report as Not installed until the Carbon
Black EDR sensor connects to the Carbon Black EDR server and receives a sensor id. If the App
Control agent is offline or uninstalled, the last Carbon Black EDR sensor status reported by the
agent is displayed in the App Control console, even if sensor status changes.
Uptime Number of minutes and hours that the Carbon Black EDR sensor has been running since it was
last started.
Registration Time The date and time the Carbon Black EDR sensor registered with its server.
Last Checkin The date and time the Carbon Black EDR sensor on this computer last checked in with its
server.
Next Checkin The date and time of the next scheduled server checkin for the Carbon Black EDR sensor.
More Information Connects to the Login page of the Carbon Black EDR server that is configured on the System
Configuration page Licensing tab. Logging in takes you to the Sensors page in Carbon Black
EDR, so you can view additional details about this computer.
Note You must have valid login credentials for the Carbon Black EDR server to successfully
open the Carbon Black EDR console.
VMware, Inc. 17
VMware Carbon Black EDR Integration Guide
n Number of computers and processes in which the file has been found.
Note For Windows 5.1.1 and previous sensors, Carbon Black EDR process information is available
to App Control. Process information is not available in App Control from the Carbon Black EDR
macOS or Linux sensors.
To view Carbon Black EDR details for a file on an App Control-managed computer:
2 Click the File Catalog tab to view a table of unique files that are discovered on computers
that this App Control server manages. You can also select Files on Computers to view a table
of all file instances.
3 Click the View Details icon (file and pencil) on the left of that file row.
Table 2-3. Carbon Black EDR fields on App Control File/File Instance Details pages
Field Description
First Seen Activity The date and time when activity involving this file was first reported to the Carbon Black EDR
server.
Watchlists The number of Carbon Black EDR watchlists on which this file appears. This appears if
watchlist export is configured on the App ControlSystem Configuration page for Carbon
Black EDR.
Frequency Data The frequency of the file is the number of endpoints that have this file associated with a
process. The number of processes is the count of all processes that have been associated
with this file.
Unique Paths The number of unique paths in which this file has been seen (only appears if data is available).
Network Connections Whether there have been any network connections associated with this file, and if so, on how
many computers (only appears if data is available).
Registry Modifications Whether there have been any registry modifications associated with this file, and if so, on
how many computers (only appears if data is available).
VMware, Inc. 18
VMware Carbon Black EDR Integration Guide
Table 2-3. Carbon Black EDR fields on App Control File/File Instance Details pages (continued)
Field Description
More information Link to the Carbon Black EDR console showing more information about this file (from the File
Details page) or a particular instance of this file on a particular computer (from the File
Instance Details page). See Links to the Carbon Black EDR Console.
Event Information
You can see Carbon Black EDR events in unfiltered views of the events table; there is also a
Saved View for Carbon Black EDR events.
The App Control console Events page can display two Carbon Black EDR-related event subtypes:
The following image shows the Carbon Black EDR view with filters displayed:
Carbon Black EDR exports both process and binary watchlist events to App Control (when export
is activated).
VMware, Inc. 19
VMware Carbon Black EDR Integration Guide
For process watchlist events, you can add a column to display the unique Process Key ID that
correlates process information between App Control and Carbon Black EDR. Correlation of
Exported Data.
When Carbon Black EDR watchlist hits appear in the App Control Events table, the watchlist
name appears in the Rule Name and Description fields of the table.
The link is identified with the App Control logo, and uses the server URL that is provided in the
Carbon Black EDR server section of the App Control System Configuration page.
The following example from the Events page in the App Control console shows how such a link
appears.
In other cases, there might be a menu link to Carbon Black EDR Details .
When a user clicks one of these links, the Carbon Black EDR login page appears.
If this browser remains open, the login credentials stay active for 90 minutes, and subsequent
use of links during this period go directly to the relevant page.
Carbon Black EDR and App Control users might consider correlating or analyzing data from both
sources.
To facilitate correlation, events that include process data have a unique process key for each
process. The process key is available as follows:
n Data exported specifically for Splunk from the App Control server
n External event exports and event archives from the App Control server
See the App Control console Online Help for information about the App Control features.
VMware, Inc. 20
Anti-Malware Scanning Interface
3
A sensor event called the fileless scriptload event is recorded by the Windows sensor.
n Overview of AMSI
Overview of AMSI
AMSI support is available as a beta feature in Carbon Black EDR 7.2 and later releases, together
with the Windows 7.1+ sensor.
The fileless scriptload event leverages the Anti-Malware Scanning Interface (AMSI) support
that is available in Windows 10 and Windows 2016. Endpoints must be running Windows 10 RS2
or higher for our sensors to record AMSI data.
The fileless_scriptload event represents each occasion when the sensor detected AMSI-
decoded script content that was executed by any process on the endpoint. This consists only of
fileless script content that was not stored in a file on the file system when that context was
executed.
For example, you can detect when the PowerShell runtime was loaded into another process by
malware, which obtains encoded PowerShell script content from a remote network server and
then executes that script content directly from memory.
The sensor reports events to the Carbon Black EDR server only if they originate from an event
that is not backed by an on-disk file. File-based scripts are logged locally.
Support for decoding fileless script content via AMSI is dependent on the script interpreter that
integrates with the AMSI interface in Windows. Carbon Black EDR currently supports PowerShell.
For information about the AMSI API, see https://docs.microsoft.com/en-us/windows/win32/amsi/
dev-audience .
AMSI Data
AMSI data is part of process execution metadata. A generic event type is added as part of the
AMSI data stream.
VMware, Inc. 21
VMware Carbon Black EDR Integration Guide
To see the raw AMSI data in Event Forwarder, you can expand the fileless_scriptload events .
Other metadata that the fileless script events captures include the script length and the unique
SHA256 hash of the fileless script event.
All AMSI content is logged locally on the endpoint as a text file. The log is located in the sensor
installation directory and is named AmsiEvents.log . This log contains all AMSI content that is
detected by the sensor, including events that are not reported to the Carbon Black EDR server
due to privacy reasons.
AMSIEvents.log on the endpoint is capped at 50 MB, unzipped. After that limit is reached, the log
contents are migrated to a new file ( AMSIEvents.old.log ) before recreating AMSIEvents.log .
After the second 50 MB log fills up, Carbon Black overwrites AMSIEvents.old.log again.
Therefore, no more than two 50 MB local log files exist.
Carbon Black EDR Windows sensors perform asynchronous RPC calls; the sensor captures
commands and script contents that PowerShell executes.
PowerShell script block logging must be enabled. Verify that this is not turned OFF in
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\PowerShell\ScriptBlockLogging
See "Configuring the Event Forwarder" in the VMware Carbon Black EDR User Guide.
VMware, Inc. 22
VMware Carbon Black EDR Integration Guide
3 In the Event Collection Settings section, select the checkbox for Fileless script loads.
See also "Sensor Groups" in the VMware Carbon Black EDR User Guide.
VMware, Inc. 23
EMET
4
This topic describes how to integrate a Carbon Black EDR server with the Microsoft Enhanced
Mitigation Experience Toolkit (EMET).
Important Beginning with Windows 10 version 1709 (Fall Creators Update), also known as
Redstone 3, Microsoft replaced EMET with Windows Defender Exploit Guard. Microsoft also
announced that EMET reached end of life on July 31, 2018.
n Overview
n EMET Events
Overview
An endpoint protection application that you might have on endpoints is the Microsoft Enhanced
Mitigation Experience Toolkit (EMET). EMET is designed to detect and protect against common
attack techniques and actions.
Integrating EMET into the Carbon Black EDR environment gives you a single place to go
investigate attacks detected and stopped by EMET, while taking advantage of the additional
visibility provided by Carbon Black EDR.
VMware, Inc. 24
VMware Carbon Black EDR Integration Guide
When EMET events become part of the Carbon Black EDR database, you can search for them,
use them to trigger alerts, and perform process analysis to understand the relationships between
an EMET event and other events on one or more endpoints in your organization, including the
timeline of those relationships. In addition, EMET events can become part of the syslog output
from the Carbon Black EDR server.
Note
n This documentation uses the term “EMET event” to indicate the case where EMET detects an
exploit attempt. It uses the term “EMET configuration” to indicate the protections enabled by
EMET for that process.
n EMET features and terminology are not detailed in this document. If you need more
information about EMET, see the documentation provided by Microsoft.
n Proper functioning of this integration assumes EMET is installed and configured per Microsoft
recommendations. EMET 5.x versions should be compatible.
n Reporting of EMET events to Carbon Black EDR requires that the Windows Event Log be
selected as one of the Reporting options in the EMET interface on the host.
By default, EMET-enabled sensors report EMET events and configuration to the Carbon Black
EDR server. The integration does not require interaction with another server. For any reporting
sensor, this information appears in several places in the Carbon Black EDR console:
n On the Search Processes page , you can search for processes for which an EMET mitigation
occurred and/or processes whose sensor has EMET protection enabled. See “Process Search
and Analysis” in the VMware Carbon Black EDR User Guide.
n On the Process Analysis page, EMET events are displayed and labeled in the table of events,
and the EMET settings specific to the current process on the reporting sensor are included.
See “Process Search and Analysis” in the VMware Carbon Black EDR User Guide.
n On the Sensor Details page, the general EMET configuration (if any) is shown. See “Managing
Sensors” in the VMware Carbon Black EDR User Guide.
To further enhance the EMET integration, you can enable the EMET Protection Feed on the
Threat Intelligence Feeds page (see “Threat Intelligence Feeds” in the VMware Carbon Black
EDR User Guide ). This does not actually enable/disable delivery of events from sensors, but it
does enable you to:
n Create alerts based on EMET events and manage them on the Triage Alerts page.
n Include EMET events in the syslog output from your Carbon Black EDR server.
EMET Events
This section describes the places in the Carbon Black EDR console where you can view and
analyze EMET events.
VMware, Inc. 25
VMware Carbon Black EDR Integration Guide
n Process-specific Protections on the Host – The Process Analysis page includes a list of the
EMET Protections Enabled on the host for the process that is being analyzed . These can
appear even if EMET did not perform any mitigations when an exploit was attempted on the
process.
n EMET Mitigation Events – If EMET took mitigation actions related to an exploit of the
process, the event table lists EMET events for these actions, and can be expanded for
additional details.
VMware, Inc. 26
VMware Carbon Black EDR Integration Guide
You can thereby determine whether a process might have been reported on a system that did
not have endpoint protection enabled. The EMET configuration search option is available on the
Add Criteria menu on the Search Processes page .
For more information on the Search Processes page , see “Process Search and Analysis” in the
VMware Carbon Black EDR User Guide.
This search will help you determine if EMET is installed on a host and help you determine
process-specific protections.
If this feed is enabled, these reports are searchable and processes with an EMET mitigation event
are tagged with “EMET Protection Feed” and get a score of 90. See “Threat Intelligence Feed
Scores” in the VMware Carbon Black EDR User Guide .
3 On the Threat Intelligence Feeds page, scroll to the EMET Protection panel and click the
Threat Reports link.
VMware, Inc. 27
VMware Carbon Black EDR Integration Guide
4 The Search Threat Reports page appears with the results of the EMET reports search (labeled
as cbemet in the Description column).
VMware, Inc. 28
VMware Carbon Black EDR Integration Guide
You can click the Details link for any report in the table to get additional information.
See “Searching for Threat Reports” in the VMware Carbon Black EDR User Guide .
You can enable it to include EMET event reports with the other reports that are received on the
Carbon Black EDR server. When the EMET Protection is enabled, you can enable the following:
n Inclusion of EMET events in the syslog output from the Carbon Black EDR server
For instructions on enabling a feed and configuring its alert and syslog features, see “Enabling,
Disabling, and Configuring a Feed” in the VMware Carbon Black EDR User Guide .
For more information on the Threat Intelligence Feeds page, see “Threat Intelligence Feeds” in
the VMware Carbon Black EDR User Guide .
Note The Carbon Black EDR server receives EMET events regardless of whether the EMET
Protection feed is enabled. EMET event collection can be disabled per-sensor group from the
Group Settings page in the Carbon Black EDR console.
VMware, Inc. 29
VMware Carbon Black EDR Integration Guide
This information is displayed in the Computer Vitals panel on the Sensor Details page for each
sensor. See “Managing Sensors” in the VMware Carbon Black EDR User Guide .
Hosts without EMET installed do not include the fields for EMET status on their Sensor Details
page. If EMET data is not available, that field will be blank.
VMware, Inc. 30
VMware Carbon Black EDR Integration Guide
The following table shows the EMET-related fields that are included on the Computer Vitals
panel.
EMET Exploit Action The EMET configuration for what to do when an exploit attempt occurs:
n Audit -- Do not kill the process, when applicable, but log the exploitation attempt.
n Block -- Terminate the program when an exploitation attempt is detected (“Stop” in the
EMET interface)
EMET Telemetry Path If Local Telemetry mode is enabled on EMET, this field shows the path where Early Warning
information is sent on the local machine. See the Microsoft EMET documentation for the Registry
path for this setting.
EMET Report Identifies which Reporting checkboxes are checked in the EMET interface, which controls where
Settings mitigation events are reported on the local host. Options are one or more of:
n Windows Event Log
n Tray Icon
n Early Warning
In addition, for any active option, there will also be an indication of whether the choice is Locally
or GPO configured.
Note If Windows Event Log is not active, Carbon Black EDR will not received EMET events.
EMET Dump Flags If present, identifies the type of MiniDump file created if the LocalTelemetryPath key is set.
EMET Process Count The number of active processes that have EMET mitigations configured on the host.
3 On the Sensors page, select the sensor group to disable EMET event reporting.
4 When you have selected the sensor group, click the Edit Settings button to display the Edit
Group Settings page.
5 Click on the Event Collection tab, deselect the EMET events checkbox.
EMET event collection will no longer be included in the logs sent to the Carbon Black EDR server.
VMware, Inc. 31
VMware Carbon Black EDR Integration Guide
To re-enable EMET event collection for a sensor group, follow the same procedure but select the
EMET events checkbox before saving the changes.
VMware, Inc. 32
SSO Identity Providers
5
This topic describes supported SAML 2.0 specifications and SAML 2.0 Single Sign-On (SSO)
setup. It also explains how to integrate Carbon Black EDR with the OKTA, Shibboleth, and ADFS
IdPs.
n Overview
n Shibboleth IdP
n ADFS IdP
Overview
Single Sign-On (SSO) allows multiple systems (possibly more than one vendor) to share a user
authentication provider.
n Users need not re-authenticate when switching from one system to another since their initial
login.
Carbon Black EDR supports the Security Assertion Markup Language (SAML) 2.0 for SSO
integration. The following sections provide a summary of supported capabilities and the
procedures for configuring and troubleshooting SSO integration with external SAML 2.0-
compliant identity providers (IdPs).
VMware, Inc. 33
VMware Carbon Black EDR Integration Guide
n SAML 2.0 Bindings – Describes various types of HTTP calls supported by the protocol
n SAML 2.0 Profiles – Describes a set of profiles (use-cases), each one defining a set of calls
made through one of the bindings to exchange SAML messages
n SAML 2.0 Metadata – Describes the format of the metadata XML files that must be
exchanged between identity and service providers in order to establish mutual trust
Carbon Black EDR supports a subset of functionality that is described in these specifications:
n OKTA
n Shibboleth
n ADFS IdP
Any other IdP that implements the SAML 2.0 specification and supports the bindings and profiles
that are listed here will probably work, but VMware Carbon Black has not validated them and
cannot support their configuration or operation.
The exchange is performed by having each service generate a metadata XML file that is then
provided to the other service. By default, the identity certificate/private key files used by Carbon
Black EDR (acting as the SAML service provider) is /etc/cb/cert/cb-server.[crt,key]. This
identity is also used for server-sensor authentication and for web user interface HTTPS server
authentication.
VMware, Inc. 34
VMware Carbon Black EDR Integration Guide
You can also configure Carbon Black EDR to use a separate set of certificate/key files for SSO by
updating configuration fields in the SSO configuration file.
Attribute Mapping
With Carbon Black EDR (version 5.2 and later), when SSO is configured, users who are
authenticated by the configured IdP can be automatically provisioned in Carbon Black EDR if they
are authorized and if the IdP returns the user’s first name, last name, and email address as user
attributes.
The fields returned by the IdP are not part of the SAML 2.0 specification and vary between IdPs.
For Carbon Black EDR, the attr_map.py script maps the attributes that are returned by an IdP to
the fields that are required by Carbon Black EDR.
Your IdP administrator is responsible for providing you a list of attributes that are returned by the
IdP. The username, first_name, last_name and email should map directly to the fields returned by
your IdP. You must configure the authorized, builtin_roles, and teams fields, based on your
business policies.
VMware, Inc. 35
VMware Carbon Black EDR Integration Guide
return result
The default callback returns authorized = True and None for all attributes. This keeps behavior
consistent with the current SSO implementation. An example script for a fully featured install is
included in /etc/cb/sso/ together with the example config file:
VMware, Inc. 36
VMware Carbon Black EDR Integration Guide
if "cbserver-owners" in attrs["groups"]:
result["builtin_roles"] = ["global_admin",]
result["teams"] = None
else:
result["builtin_roles"] = []
result["teams"] = None
return result
n cbserver
n cbserver-owners
A user must be a member of cbserver to have access to the Carbon Black EDR server. Any user
part of cbserver-owners is granted global admin and is included in the administrators group.
The following is example debug output of a user being authenticated, authorized, created, added
to global admins and the administrators team.
VMware, Inc. 37
VMware Carbon Black EDR Integration Guide
1 Acquire metadata XML from the OKTA IdP and place it in the /etc/cb/sso directory on the
Carbon Black EDR server host. (You are not required to use this directory, but it is a good
default location.)
c Make appropriate changes to the attr_map.py file based on the attributes returned from
Okta. Each configurable property is accompanied with additional inline documentation in
the attr_map.py file to assist with this process.
Caution The syntax of the sso.conf configuration file must fully conform to the JSON data-
interchange format. Failure to do so can create an invalid configuration file, which prevents
the services from launching properly. When changes are made to this file and cb-enterprise is
restarted, check /var/log/cb/coreservices/debug.log to make sure there are no errors.
If an administrator configures the Single Logout (SLO) service in both the IdP Service and
Endpoint sections and a user logs out of the Carbon Black EDR server, the user is also logged
out of the Okta application. This effectively logs the user out of all Okta applications.
a Specify the file path to the location of the metadata XML from the OKTA IdP. For
example:
"metadata": {
"local": [
"<file path to location of IdP XML>"
]
},
b Make sure the attribute_mapper field has the path to the Python Mapper file:
"attribute_mapper": "/etc/cb/sso/attr_map.py",
VMware, Inc. 38
VMware Carbon Black EDR Integration Guide
"accepted_time_diff": 600,
d Update the service / sp / idp section with the appropriate appid from the OKTA IdP. For
example:
"service": {
"sp": {
"nameid_format": "urn:oid:1.3.6.1.4.1.1466.115.121.1.15-NameID",
"idp": {
"http://www.okta.com/<appid>": {
# URLs in this section MUST be updated to match the URLs defined by the
# IdP you are integrating with
"single_sign_on_service": {
"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect": "https://fakeidp.okta.com/app/<name>/
<appid>/sso/saml"
},
"single_logout_service": {
"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect": "https://fakeidp.okta.com/app/<name>/
<appid>"
}
"endpoints": {
"assertion_consumer_service": {
"https://<IP Address or FQDN of the CB Server>/api/saml/
assertion":"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
},
"single_logout_service": {
"https://<IP Address or FQDN of the EDR Server>/api/saml/
logout": "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
}
},
g Update the entityid field with the appropriate IP address or FQDN of the Carbon Black
EDR server. For example:
h Search the sso.conf file for “TODO” and ensure that all “TODO” tasks are completed.
VMware, Inc. 39
VMware Carbon Black EDR Integration Guide
4 Open the /etc/cb/cb.conf file and edit the SSOConfig property so that it contains the full path
to the SSO configuration file that was previously created. This single property defines
whether Carbon Black EDR server will be started in standalone vs. federated authentication
mode.
5 Generate Carbon Black EDR’s SSO service provider metadata XML file by issuing this
command:
Shibboleth IdP
This section describes how to integrate the Shibboleth IdP with Carbon Black EDR.
1 Acquire metadata XML from the Shibboleth IdP and place it in the /etc/cb/sso directory on
the Carbon Black EDR server host. (You are not required to use this directory, but it is a good
default location.)
Note Make appropriate changes to the attr_map.py file based on the attributes returned
from Shibboleth. Each configurable property is accompanied with additional inline
documentation in the attr_map.py file to assist with this process.
VMware, Inc. 40
VMware Carbon Black EDR Integration Guide
Caution The syntax of this configuration file must fully conform to the JSON data-
interchange format. Failure to do so can create an invalid configuration file, which will prevent
the cb-coreservices services from launching properly. When changes are made to this file
and cb-enterprise is restarted, check /var/log/cb/coreservices/debug.log to for errors.
a Specify the file path to the location of the metadata XML from the Shibboleth IdP. For
example:
"metadata": {
"local": [
"<file path to location of IdP XML>"
]
},
b Make sure the attribute_mapper field has the path to the Python Mapper file:
"attribute_mapper": "/etc/cb/sso/attr_map.py",
"accepted_time_diff": 600,
d Update the service / sp / idp section with the Shibboleth IdP. For example:
"service": {
"sp": {
"idp": {
# EntityId of the IDP
"https://fakeipd.example.com": {
# URLs in this section MUST be updated to match the URLs defined # by the IdP you are
integrating with
"single_sign_on_service": {
"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect": "https://fakeipd.example.com/
saml2/idp/SSOService"
},
"single_logout_service": {
"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect": "https://fakeipd.example.com/
saml2/idp/SingleLogoutService"
}
"endpoints": {
"assertion_consumer_service": {
"https://<IP Address or FQDN of the EDR Server>/api/saml/
assertion":"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
VMware, Inc. 41
VMware Carbon Black EDR Integration Guide
},
"single_logout_service": {
"https://<IP Address or FQDN of the EDR Server>/api/saml/
logout": "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
}
},
g Update the entityid field with the appropriate IP address or FQDN of the Carbon Black
EDR server. For example:
h Search the sso.conf file for “TODO” and ensure that all “TODO” tasks are also
completed.
4 Open the /etc/cb/cb.conf file and edit the SSOConfig property so that it contains the full path
to the SSO configuration file created in the previous steps. This single property idefines
whether Carbon Black EDR server will be started in standalone vs. federated authentication
mode.
5 Generate Carbon Black EDR server’s SSO service provider metadata XML file by issuing this
command:
6 After this file is created, you must give it to the identity provider to complete the trust.
7 Restart the Carbon Black EDR server by issuing the following command:
ADFS IdP
This section describes how to integrate the ADFS IdP with Carbon Black EDR.
1 Acquire metadata XML from the ADFS IdP and place it in the /etc/cb/sso directory on the
Carbon Black EDR server host. (You are not required to use this directory, but it is a good
default location.)
VMware, Inc. 42
VMware Carbon Black EDR Integration Guide
Note Make appropriate changes to the attr_map.py file based on the attributes that are
returned from ADFS. Each configurable property is accompanied with inline documentation in
the attr_map.py file to assist with this process.
Caution The syntax of this configuration file must fully conform to the JSON data-
interchange format. Failure to do so can create an invalid configuration file, which prevents
the cb-coreservices services from launching properly. When changes are made to this file and
cb-enterprise is restarted, check / var/log/cb/coreservices/debug.log to make sure that
there are no errors.
a Specify the file path to the location of the metadata XML from the ADFS IdP. For example:
"metadata": {
"local": [
"<file path to location of IdP XML>"
]
},
b Make sure the attribute_mapper field has the path to the Python Mapper file:
"attribute_mapper": "/etc/cb/sso/attr_map.py",
"accepted_time_diff": 600,
d Update the service / sp / idp section with the appropriate appid from the ADFS IdP. For
example:
"service": {
"sp": {
"idp": {
# EntityId of the IDP
"https://fakeipd.example.com": {
"single_logout_service": {
"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect": "https://fakeipd.adfs.com/adfs/ls/?
wa=wsignout1.0"
}
VMware, Inc. 43
VMware Carbon Black EDR Integration Guide
"endpoints": {
"assertion_consumer_service": {
"https://<IP Address or FQDN of the EDR Server>/api/saml/
assertion":"urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
},
"single_logout_service": {
"https://<IP Address or FQDN of the EDR Server>/api/saml/
logout": "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
}
},
g Update the entityid field with the appropriate IP address or FQDN of the Carbon Black
EDR server. For example:
h Search the sso.conf file for “TODO” and ensure that all “TODO” tasks are also
completed.
4 Open the /etc/cb/cb.conf file and edit the SSOConfig property so that it contains the full path
to the SSO configuration file created in the previous steps. This single property defines
whether Carbon Black EDR server will be started in standalone vs. federated authentication
mode.
5 Generate the Carbon Black EDR server’s SSO service provider metadata XML file by issuing
this command:
You can also inspect the actual SAML requests being sent and the responses being received by
increasing the logging level of the cb.flask.blueprints.api_routes_saml and saml2 modules.
VMware, Inc. 44
VMware Carbon Black EDR Integration Guide
3 Paste the following below the [loggers] section in the coreservices-logger.conf file:
[logger_cb.flask.blueprints.api_routes_saml]
level=DEBUG
handlers=debug_syslog
qualname=cb.flask.blueprints.api_routes_saml
propagate=1
4 Paste the following below the [loggers] section in the coreservices-logger.conf file:
[logger_saml2]
level=DEBUG
handlers=debug_syslog
propagate=0
qualname=saml2
VMware, Inc. 45
Third-Party Authentication
6
Using the Duo plugin, you can configure two-factor authentication and download the Duo Mobile
application on a mobile device.
n Overview
Overview
Duo two-factor authentication adds a second authentication factor to your server and facilitates
authentication management and security monitoring.
You can add several device types for two-factor authentication, including mobile phone devices,
tablets, and landlines. For information on how to add these devices using Duo Mobile, see Duo’s
product documentation at https://duo.com.
1 Go to https://duo.com.
2 Click Sign Up in the top-right corner of this page and follow the prompts to create an account
and activate the Duo Mobile application on your preferred device.
Note If you already have a Duo Mobile account, you can use this. You do not have to create
a new account for the Carbon Black EDR-Duo plugin.
3 When your account is active and you have activated the Duo Mobile application on your
device, log in with your account at https://duo.com .
VMware, Inc. 46
VMware Carbon Black EDR Integration Guide
6 Scroll down to locate the Unix Application selection and click the Protect this Application
blue link.
8 In the Name field, enter a name for the Unix application, such as "Carbon Black EDR Server".
9 For Username normalization , select the choice that best represents your security posture.
This setting is related to the field specified in the /usr/share/cb/plugins/duo/secrets.ini
settings file for mapping Carbon Black EDR users to Duo users. See Map Carbon Black EDR
Users to Duo Users.
If the Duo Mobile application is setup for Simple normalization of the username, and Carbon
Black EDR-Duo integration is configured for email, then only the name in the Carbon Black
EDR user email field (the value before the “@” symbol) is used to match the Duo user.
If password is setup for None and Carbon Black EDR-Duo integration is configured for email
or username, then the entire string must match a Duo user account.
/usr/share/cb/plugins/duo/secrets.ini
Enter values for the following Duo plug settings. These values are specific to the administrator’s
Duo Mobile application configuration, which is available on the Duo Admin Portal. For more
information on using the Duo Admin Portal, see https://duo.com/docs/administration.
n ikey
n skey
n host
n hostname
n port
n username
n password
VMware, Inc. 47
VMware Carbon Black EDR Integration Guide
Refer to the following section in the secrets.ini settings file (see secrets.ini Settings File):
# how to map EDR users to Duo users? Choices are “username” or “email”. Default to
“email”
duo_mapping=email
This specifies the data in the Carbon Black EDR user account that will be sent as the username to
the Duo authorization server.
# Secret keys for your Duo security integration. Get your ikey, skey, and host from your Duo
# Security administrative console.
[duo]
ikey=
skey=
host=
[config]
# number of seconds a "session" should last until 2fa is required again. Default to 60
session_lifetime=500
# how to map EDR users to Duo users? Choices are "username" or "email". Default to "email"
duo_mapping=email
# create a new 2fa session for each source IP address? True or false. Default to "false"
use_ipaddr_session_key=false
# Uncomment the next section if you need a web proxy to reach the outside world
#[proxy]
#hostname=
#port=
#
## if the proxy requires authentication, put the username & password here
#username=
#password=
VMware, Inc. 48
VMware Carbon Black EDR Integration Guide
#TwoFactorAuthCallbackModulePath=/usr/share/cb/plugins/duo/
duo_2fa_auth_callback.py
For more information, see the VMware Carbon Black EDR Server Configuration (cb.conf)
Guide.
TwoFactorAuthCallbackModulePath=/usr/share/cb/plugins/duo/
duo_2fa_auth_callback.py
VMware, Inc. 49
Syslog
7
This topic describes Syslog output for Carbon Black EDR events.
It provides descriptions and examples of the output, and explains how you can use Syslog output
for notification of alerts.
n Overview of Logging
n Syslog Format
n Syslog Integration
n Syslog Templates
Overview of Logging
Carbon Black EDR logs events to Syslog.
n Notification logs – for watchlist and feed hits, and binary information events
With audit logging enabled, audit logs include all user API activity, including HTTP request
details. See Audit Logs.
See the VMware Carbon Black EDR Server/Cluster Management Guide for information about all
Carbon Black EDR server logs.
Notification Logs
Carbon Black EDR logs the following events to Syslog.
n Watchlist hit – This event occurs when activity or binaries on an endpoint matches a query in
a watchlist. See “Watchlists” in the VMware Carbon Black EDR User Guide .
n Feed hit – This event occurs when activity or binaries on an endpoint matches an IOC
reported by a threat intelligence feed. See “Threat Intelligence Feeds” in the VMware Carbon
Black EDR User Guide .
VMware, Inc. 50
VMware Carbon Black EDR Integration Guide
By default, a feed hit is logged only at the ingress as feed events arrive at the Carbon Black
EDR server. These are feed.ingress.hit events.
n Binary information event – This event occurs when a process execution adds a binary to the
Carbon Black EDR database.
The program name prefix for logged events is cb-notifications- . By default, logged events are
written to log files at /var/log/cb/notifications on the Carbon Black EDR server (based on the
syslog configuration at /etc/rsyslog.d/cb-coreservices ).
Note Currently, binary information events are not published in the cb-all-notifications.log
file.
In the /var/log/cb/notifications directory, there is one file for all hits, one file for each watchlist,
and one file for each feed. Watchlist files include the watchlist ID in the program name and in the
log file name, while feed files include the feed ID in the program name and in the log file name.
Binary information events are logged in a separate file.
For example, the /var/log/cb/notifications directory listing below contains log files for the
following events:
n Hits to Watchlist ID 10
n Hits to Feed ID 8
Audit Logs
Carbon Black EDR audit logs are located in /var/log/cb/audit , and are available through Syslog.
VMware, Inc. 51
VMware Carbon Black EDR Integration Guide
n live-response.log – endpoint Live Response session activity such as cd , exec , reg , and so
on; does not include commands that are not part of an endpoint session, such as sensor and
help.
n useractivity.log (audit logging enabled only) – all user API activity, including HTTP request
details.
Syslog Format
Each watchlist and feed hit consists of a series of key-value pairs.
This section provides the following information about the different key-value pairs for watchlist
and feed hits:
n The default process template used to create the key-value pairs for the hit
Note To improve readability in the examples, line breaks appear between fields. In the template
files, however, fields are separated by spaces.
reason=watchlist.hit type=event
process_guid={{doc['id']}}
segment_id={{doc["segment_id"]}}
host='{{doc['hostname']}}'
comms_ip='{{doc['comms_ip']}}'
interface_ip='{{doc['interface_ip']}}'
sensor_id={{doc['sensor_id']}}
watchlist_id={{doc['watchlist_id']}}
watchlist_name='{{doc['watchlist_name']}}'
VMware, Inc. 52
VMware Carbon Black EDR Integration Guide
timestamp='{{doc['event_timestamp']}}'
start_time='{{doc['start']}}'
group='{{doc['group']}}'
process_md5='{{doc['process_md5']}}'
process_sha256='{{doc['process_sha256']}}'
process_name='{{doc['process_name']}}'
process_path='{{doc['path']}}'
last_update='{{doc['last_update']}}'
{% for k in doc %}{% if k.startswith("alliance_") %}
{{k}}='{{doc[k]}}'{% endif %}{% endfor %}
reason No doc reference Text that describes the entry. The reason label is hard-coded in the syslog
template and identifies the type of the event as "watchlist.hit," "feed.hit," or
"binaryinfo."
type No doc reference Text that identifies the type of data that is returned with the event. For
example:
n event (process events)
n module (binary modules)
n host (host-level information only)
comms_ip comms_ip IP address from which Carbon Black EDR received the event (which could be a
NAT or proxy address, if one is configured for the computer on which the
process executed; otherwise this is the same as interface_ip).
watchlist_id watchlist_id The ID of the watchlist that matched the hit criteria (-1 is the internal syslog test
watchlist ID. When you use the cbsyslog command line tool to test the output of
your custom template, -1 is hard-coded to be the watchlist_id attribute, and is
displayed in place of the actual watchlist_id when you run the test.)
watchlist_name watchlist_name Name of the watchlist that matched the hit criteria.
start_time start Start time of this process, in the computer’s local time.
group group Sensor group to which this sensor was assigned at the time of process
execution.
process_md5 process_md5 MD5 hash value of the executable backing this process.
process_sha256 process_sha256 SHA-256 hash value of the executable backing this process.
VMware, Inc. 53
VMware Carbon Black EDR Integration Guide
last_update last_update Last activity in this process, in the computer’s local time.
for/if loops alliance_* ioc_attr n alliance_* identifies and prints all attributes whose names start with
"alliance_" in all documents that contain feed hits, including documents
reported by watchlist hits. These attributes represent feed hits.
n ioc_attr identifies and prints additional attributes on IOC values that were
matched.
Note for/if loops are not required. They report attributes that do not have
predefined sets. You can create customized templates that do not contain them
if you do not need to report on alliance_* or ioc_attr attributes.
reason=watchlist.hit type=module
md5={{doc["md5"]}}
sha256={{doc["sha256"]}}
host=’{{doc.get(’hostname’)}}’
sensor_id={{doc.get(’sensor_id’)}}
watchlist_id={{doc[’watchlist_id’]}}
watchlist_name=’{{doc[’watchlist_name’]}}’
timestamp=’{{doc[’event_timestamp’]}}’
first_seen=’{{doc["server_added_timestamp"]}}’
group={{doc["group"]}}
desc=’{{doc["file_desc"]}}’ company_name=’{{doc["company_name"]}}’
product_name=’{{doc["product_name"]}}’
product_version=’{{doc["product_version"]}}’
file_version=’{{doc["file_version"]}}’
signed=’{{doc["signed"]}}’
{% for k in doc %}{% ifk.startswith("alliance_") %}
{{k}}=’{{doc[k]}}’{% endif %}{% endfor %}
VMware, Inc. 54
VMware Carbon Black EDR Integration Guide
reason No doc reference Text that describes the entry. The reason label is hard-coded in the syslog
template and identifies the type of the event as "watchlist.hit," "feed.hit,"
or "binaryinfo."
type No doc reference Text that identifies the type of data that is returned with the event. For
binary modules, the value is module .
md5 md5 MD5 hash value of a process, a parent process, a child process, a loaded
module or a written file.
sha256 sha256 SHA-256 hash value of a process, a parent process, a child process, a
loaded module or a written file.
host hostname Hostname of the computer on which the binary was observed.
sensor_id sensor_id Sensor ID of the computer on which the binary was observed.
watchlist_id watchlist_id The ID of the watchlist that matched the hit criteria (-1 is the internal syslog
test).
watchlist_name watchlist_name Name of the watchlist that matched the hit criteria.
first_seen server_added_ Time that this binary was first seen by the Carbon Black EDR server.
timestamp
group group First sensor group in which this binary was observed.
for/if loops _* ioc_attr n alliance_* identifies and prints all attributes whose names start with
"alliance_" in all documents that contain feed hits, including documents
reported by watchlist hits. These attributes represent feed hits.
n ioc_attr identifies and prints additional attributes on IOC values that
were matched.
Note for/if loops are not required. Their purpose is to report attributes
that do not have predefined sets. You can create customized templates
that do not contain them if you do not need to report on alliance_* or
ioc_attr attributes.
VMware, Inc. 55
VMware Carbon Black EDR Integration Guide
reason=feed.ingress.hit type=event
process_guid={{doc[’process_id’]}}
host=’{{doc[’hostname’]}}’
sensor_id={{doc[’sensor_id’]}}
feed_id={{doc[’feed_id’]}}
feed_name=’{{doc[’feed_name’]}}’
ioc_type=’{{doc[’ioc_type’]}}’
ioc_value=’{{doc[’ioc_value’]}}’
{% for k in doc[’ioc_attr’] %}
{{k}}=’{{doc[’ioc_attr’][k]}}’{% endfor %}
timestamp=’{{doc[’event_timestamp’]}}’
reason no doc reference Text that describes the entry. The reason label is hard-coded in the syslog
template and identifies the type of the event as "watchlist.hit," "feed.hit," or
"binaryinfo."
type no doc reference Text that identifies the type of data that is returned with the event. For process
events, the value is ‘event’.
host hostname Hostname of the computer on which the feed hit was detected.
feed_name feed_name Name of the feed that matched the hit criteria.
ioc_value ioc_value Value of the IOC that matched the hit criteria.
for/if loops _* ioc_attr n alliance_* identifies and prints all attributes whose names start with "alliance_"
in all documents that contain feed hits, including documents reported by
watchlist hits. These attributes represent feed hits.
n ioc_attr identifies and prints additional attributes on IOC values that were
matched.
Note for/if loops are not required. Their purpose is to report attributes that do not
have predefined sets. You can create customized templates that do not contain
them if you do not need to report on alliance_* or ioc_attr attributes.
timestamp event_timestamp Epoch time (seconds since 00:00:00 on 1 January 1970) of the feed hit event.
VMware, Inc. 56
VMware Carbon Black EDR Integration Guide
reason=feed.storage.hit type=event
process_guid={{doc['process_id']}
segment_id={{doc['segment_id']}}
host='{{doc['hostname']}}'
comms_ip='{{doc['comms_ip']}}'
interface_ip='{{doc['interface_ip']}}'
sensor_id={{doc['sensor_id']}}
feed_id={{doc['feed_id']}}
feed_name='{{doc['feed_name']}}'
ioc_type='{{doc['ioc_type']}}'
ioc_value='{{doc['ioc_value']}}'
{% for k in doc['ioc_attr'] %}
{{k}}='{{doc['ioc_attr'][k]}}'{% endfor %}
timestamp='{{doc['event_timestamp']}}'
start_time='{{doc['start']}}'
group='{{doc['group']}}'
process_md5='{{doc['process_md5']}}'
process_sha256=’{{doc['process_sha256']}}'
process_name='{{doc['process_name']}}'
process_path='{{doc['path']}}'
last_update='{{doc['last_update']}}'
{% for k in doc %}{% if k.startswith("alliance_") %}
{{k}}='{{doc[k]}}'{% endif %}{% endfor %}
reason no doc reference Text that describes the entry. The reason label is hard-coded in the syslog
template and identifies the type of the event as "watchlist.hit," "feed.hit," or
"binaryinfo."
type no doc reference Text that identifies the type of data that is returned with the event. For process
events, the value is ‘event’.
VMware, Inc. 57
VMware Carbon Black EDR Integration Guide
host hostname Hostname of the computer on which the feed hit was detected.
comms_ip comms_ip IP address from which Carbon Black EDR received the event (which could be a
NAT or proxy address, if one is configured for the computer on which the
process executed; otherwise this is the same as interface_ip).
report_title report_title Name of the item in the feed that was matched.
for/if loops _* ioc_attr n alliance_* identifies and prints all attributes whose names start with
"alliance_" in all documents that contain feed hits, including documents
reported by watchlist hits. These attributes represent feed hits.
n ioc_attr identifies and prints additional attributes on IOC values that were
matched.
Note for/if loops are not required. They report attributes that do not have
predefined sets. You can create customized templates that do not contain them
if you do not need to report on alliance_* or ioc_attr attributes.
start_time start Start time of this process, in the computer’s local time.
group group Sensor group to which the sensor was assigned at the time of process
execution.
process_md5 process_md5 MD5 hash value of the executable backing this process.
process_sha256 process_sha256 SHA-256 hash value of the executable backing this process.
last_update last_update Last activity in this process, in the computer’s local time.
VMware, Inc. 58
VMware Carbon Black EDR Integration Guide
reason=feed.ingress.hit type=module
md5={{doc[’md5’]}}
sha256={{doc[’sha256’]}}
host=’{{doc[’hostname’]}}’
sensor_id={{doc[’sensor_id’]}}
feed_id={{doc[’feed_id’]}}
feed_name=’{{doc[’feed_name’]}}’
ioc_type=’{{doc[’ioc_type’]}}’
ioc_value=’{{doc[’ioc_value’]}} ’
{% for k in doc[’ioc_attr’] %} {{k}}=’{{doc[’ioc_attr’][k]}}’{% endfor %}
timestamp=’{{doc[’event_timestamp’]}}’
reason no doc reference Text that describes the entry. The reason label is hard-coded in the syslog template
and identifies the type of the event as "watchlist.hit," "feed.hit," or "binaryinfo."
type no doc reference Text that identifies the type of data that is returned with the event. For example:
n event (process events)
n module (binary modules)
n host (host level information only)
md5 md5 MD5 hash value of a process, a parent process, a child process, a loaded module or
a written file.
sha256 sha256 SHA-256 hash value of a process, a parent process, a child process, a loaded
module or a written file.
host hostname Hostname of the computer on which the feed hit was detected.
sensor_id sensor_id Sensor ID of the endpoint that detected the feed hit.
ioc_value ioc_value Value of the IOC that matched the hit criteria.
for/if loops _* ioc_attr n alliance_* identifies and prints all attributes whose names start with "alliance_"
in all documents that contain feed hits, including documents reported by
watchlist hits. These attributes represent feed hits.
n ioc_attr identifies and prints additional attributes on IOC values that were
matched.
Note for/if loops are not required. They report attributes that do not have
predefined sets. You can create customized templates that do not contain them if
you do not need to report on alliance_* or ioc_attr attributes.
VMware, Inc. 59
VMware Carbon Black EDR Integration Guide
reason=feed.storage.hit type=module
md5={{doc[’md5’]}}
sha256={{doc[’sha256’]}}
host=’{{doc[’hostname’]}}’
sensor_id={{doc[’sensor_id’]}}
feed_id={{doc[’feed_id’]}}
feed_name=’{{doc[’feed_name’]}}’
ioc_type=’{{doc[’ioc_type’]}}’
ioc_value=’{{doc[’ioc_value’]}} ’
{% for k in doc[’ioc_attr’] %} {{k}}=’{{doc[’ioc_attr’][k]}}’{% endfor %}
timestamp=’{{doc[’event_timestamp’]}}’ first_seen=’{{doc["server_added_timestamp"]}}’
group={{doc["group"]}}
desc=’{{doc["file_desc"]}}’
company_name=’{{doc["company_name"]}}’
product_name=’{{doc["product_name"]}}’
product_version=’{{doc["product_version"]}}’
file_version=’{{doc["file_version"]}}’
signed=’{{doc["digsig_result"]}}’
{% for k in doc %}{% if k.startswith("alliance_") %}
{{k}}=’{{doc[k]}}’{% endif %}{% endfor %}
reason no doc reference Text that describes the entry. The reason label is hard-coded in the syslog
template and identifies the type of the event as "watchlist.hit," "feed.hit," or
"binaryinfo."
type no doc reference Text that identifies the type of data that is returned with the event. For
binary events, the value is ‘module’.
md5 md5 MD5 hash value of a process, a parent process, a child process, a loaded
module, or a written file.
sha256 sha256 SHA-256 hash value of a process, a parent process, a child process, a
loaded module, or a written file.
host hostname Hostname of the computer on which the feed hit was detected.
VMware, Inc. 60
VMware Carbon Black EDR Integration Guide
sensor_id sensor_id Sensor ID of the endpoint that observed the feed hit.
report_title report_title Name of the item in the feed that was matched.
for/if loops _* ioc_attr n alliance_* identifies and prints all attributes whose names start with
"alliance_" in all documents that contain feed hits, including documents
reported by watchlist hits. These attributes represent feed hits.
n ioc_attr identifies and prints additional attributes on IOC values that
were matched.
Note for/if loops are not required. They report attributes that do not have
predefined sets. You can create customized templates that do not contain
them if you do not need to report on alliance_* or ioc_attr attributes.
first_seen server_added_ The time that this binary was first seen by the server.
timestamp
group group First sensor group in which this binary was observed.
for/if loops _* ioc_attr n alliance_* identifies and prints all attributes whose names start with
"alliance_" in all documents that contain feed hits, including documents
reported by watchlist hits. These attributes represent feed hits.
n ioc_attr identifies and prints additional attributes on IOC values that
were matched.
Note for/if loops are not required. They report attributes that do not have
predefined sets. You can create customized templates that do not contain
them if you do not need to report on alliance_* or ioc_attr attributes.
VMware, Inc. 61
VMware Carbon Black EDR Integration Guide
Key-value pairs for host ingress feed hits are a subset of those for binary ingress feed hits. See
Binary Ingress Feed Hit – Key-Value Pairs for descriptions.
reason=feed.query.hit type=event
process_guid={{doc['process_id']}}
segment_id={{doc["segment_id"]}}
host='{{doc['hostname']}}'
comms_ip='{{doc['comms_ip']}}'
interface_ip='{{doc['interface_ip']}}'
sensor_id={{doc['sensor_id']}}
feed_id={{doc['feed_id']}}
feed_name='{{doc['feed_name']}}'
{% for k in doc['ioc_attr'] %} {{k}}='{{doc['ioc_attr'][k]}}'{% endfor %}
timestamp='{{doc['event_timestamp']}}'
start_time='{{doc['start']}}'
group='{{doc['group']}}'
process_md5='{{doc['process_md5']}}'
process_sha256='{{doc['process_sha256']}}'
VMware, Inc. 62
VMware Carbon Black EDR Integration Guide
process_name='{{doc['process_name']}}'
process_path='{{doc['path']}}'
last_update='{{doc['last_update']}}'
{% for k in doc %}{% if k.startswith("alliance_") %} {{k}}='{{doc[k]}}'{% endif %}{% endfor %}
Key-value pairs for process query feed hits are a subset of those for process storage feed hits.
See Process Storage Feed Hit – Key-Value Pairs for descriptions.
reason=feed.query.hit type=module
md5={{doc["md5"]}}
sha256={{doc["sha256"]}}
host='{{doc.get('hostname')}}'
sensor_id={{doc.get('sensor_id')}}
feed_id={{doc['feed_id']}}
feed_name='{{doc['feed_name']}}'
{% for k in doc['ioc_attr'] %} {{k}}='{{doc['ioc_attr'][k]}}'{% endfor %}
timestamp='{{doc['event_timestamp']}}'
first_seen='{{doc["server_added_timlestamp"]}}'
group='{{doc["group"]}}'
desc='{{doc["file_desc"]}}'
company_name='{{doc["company_name"]}}'
product_name='{{doc["product_name"]}}'
product_version='{{doc["product_version"]}}'
file_version='{{doc["file_version"]}}'
signed='{{doc["signed"]}}'
{% for k in doc %}{% if k.startswith("alliance_") %}
{{k}}='{{doc[k]}}'{% endif %}{% endfor %}
Key-value pairs for binary query feed hits are a subset of those for binary storage feed hits. See
Binary Storage Feed Hit – Key-Value Pairs for descriptions.
VMware, Inc. 63
VMware Carbon Black EDR Integration Guide
Syslog Integration
You can use Syslog features for notification and data intelligence sharing. Directing Carbon Black
EDR alerts to Syslog files enables a variety of integration options for numerous platforms.
Specific fields vary depending upon the watchlist parameters selected during creation. See
“Advanced Search Queries” in the VMware Carbon Black EDR User Guide for specific fields to
use when creating queries, and “Watchlists” in the same guide for information about watchlists.
Note The procedure for setting up remote devices differs depending upon the device itself. The
basics are described here. Adapt the procedure to your particular platform.
2 Enable the new receiver to communicate using a new and unique UDP port number for the
communication with Carbon Black EDR. Verify that the receiver is working and listening on
the appropriate port.
Note The system might require the Carbon Black EDR IP address to be authorized prior to
accepting data.
To set up the Carbon Black EDR server to send Syslog data to remote devices:
1 Access the Carbon Black EDR server either through the console or with a remote terminal
connection using SSH.
/etc/rsyslog.d/cb-coreservices.conf
VMware, Inc. 64
VMware Carbon Black EDR Integration Guide
# By default the value of this directive is 'on' so that any special character (ASCII < 32) is
escaped. However,
# that causes multiline messages to be rather unreadable. While the practice of printing multiple
lines in a log
# should be discouraged, it is useful when error exception stack tracers are being reported. This
option might
# also cause problems if other log file reader software is being used as it may not be able to read
additional
# lines as those lines wouldn't have any timestamp/souce information.
#
# If this option is causing problems, it can be disabled which would make interpretting stack traces
a bit more
# difficult. However, the following command can be used when reading log files to make stack traces
readable again:
# cat /path/to/log/file | sed 's/#012/\n\t/g'
#
$EscapeControlCharactersOnReceive off
$template AccessLogFormat,"%msg%\n"
$template CbLogFormatWithPID,"%timegenerated:1:10:date-rfc3339% %timegenerated:8:15:% [%procid%] <
%syslogseverity-text%> %msg%\n"
$template CbSyslogStandardFormatWithPID,"%timegenerated% [%procid%] <%syslogseverity-text%> %msg%\n"
$template DynaFile,"/var/log/cb/notifications/%PROGRAMNAME%.log"
VMware, Inc. 65
VMware Carbon Black EDR Integration Guide
& ~
if $programname == 'cb-enterprised' then /var/log/cb/enterprise/enterprise.log;CbLogFormatWithPID
& ~
if $programname == 'cb-liveresponse' and $syslogfacility-text == 'local0' then /var/log/cb/
liveresponse/debug.log;CbLogFormatWithPID
& ~
if $programname == 'cb-liveresponse' and $syslogfacility-text == 'local7' then /var/log/cb/
liveresponse/access.log;AccessLogFormat
To set up the Carbon Black EDR server to send data to a remote device:
3 Add the following line ( highlighted ) to the configuration file under the cb-allnotifications
line:
4 Restart the rsyslog daemon so that the changes take effect: service rsyslog restart
VMware, Inc. 66
VMware Carbon Black EDR Integration Guide
Note
n The entire section below must be added to the cb-coreservices.conf file. The example
here specifies watchlist number 105.
n Ensure that the correct watchlist is specified. To ensure that the correct watchlist is sent
to the remote device, verify the watchlist ID from the Carbon Black EDR console before
you add these lines to the cb-coreservices.conf file.
3 Add the following lines after the section in which you are capturing logs (this line starts with
if $programname ) and before each action item for that section:
//
# An on-disk queue is created for this action.If the remote host is
# down, messages are spooled to disk and sent when it is up again.
$WorkDirectory /var/lib/rsyslog # where to place spool files
$ActionQueueFileName fwdRule1 # unique name prefix for spoolfiles
$ActionQueueMaxDiskSpace 1g # 1gb space limit (use as much as possible)
$ActionQueueSaveOnShutdown on # save messages to disk on shutdown
$ActionQueueType LinkedList # run asynchronously
$ActionResumeRetryCount -1 # infinite retries if host is down
//
VMware, Inc. 67
VMware Carbon Black EDR Integration Guide
When you troubleshoot any server-side activity, start with the logs in this directory.
The first syslog file is a single file with all watchlist hits consolidated in one place.
The second syslog file saves each watchlist hit to its own file. All the watchlist syslog files are
stored in the following location on the Carbon Black EDR server:
/var/log/cb/notifications
Each watchlist is assigned a specific number, which can be viewed from the Carbon Black EDR
server per this example:
https://<server name>/#/watchlist/105
Carbon Black EDR creates a numbered syslog that matches the watchlist number. In the example
above, the watchlist 105 syslog creates the output file:
cb-notifications-watchlist-105.log-20131031
The syslog file name format follows a standard convention for all watchlists as shown below:
cb-notifications-watchlist-<watchlist#>.log-YYYYMMDD
The single summary syslog with all watchlist hits in one consolidated file uses the following
naming convention:
cb-all-notifications.log-YYYYMMDD
Syslog Templates
You can use Carbon Black EDR syslog templates to build custom-formatted syslog notifications
for Carbon Black EDR watchlist hits, feed hits, and binary information events.
Syslog output is formatted using Jinja2 templates. A command line utility at:
/usr/share/cb/cbsyslog
supports:
VMware, Inc. 68
VMware Carbon Black EDR Integration Guide
# /usr/share/cb/cbsyslog --help
This utility provides an interface for testing Carbon Black EDR’s notifications syslog output. The
interface options are as follows:
Option Description
-h, --help Displays a help message and then closes the message.
-l, --list-events Outputs the list of events, which can be sent to syslog, and then exits.
-e EVENT_NAME, -- Identifies specific event types. Use the --listevents option for a list of event
event=EVENT_NAME names that can be passed here.
Note Some event output of the cbsyslog -e contains sample data, while other
output contains the results from actual database queries. See the output results to
determine if the data is sample data; sample data contains a string such as " "***
Note: This event type uses example content for testing ***" .
-g, --get Saves the system default templates to the current directory.
-t TEMPLATE, -- Formats the syslog message using the specified template instead of the system
template=TEMPLATE default.
-f, --fire Formats and sends an event through the syslog message system. For example,
you can use this option to manually execute the same process that occurs when
the Carbon Black EDR server sends an event to syslog when there is a hit.
-q QUERY, --query=QUERY Processes the first Solr doc that matches the query string. You can use this query
to identify which document to test with.
1 Use the --get switch to write the system default templates to the local directory:
# /usr/share/cb/cbsyslog --get
# ll
-rw-rw-r--. 1 root root 246 May 22 00:16 binaryinfo.group.observed.template
-rw-rw-r--. 1 root root 285 May 22 00:16 binaryinfo.host.observed.template
-rw-rw-r--. 1 root root 221 May 22 00:16 binaryinfo.observed.template
-rw-rw-r--. 1 root root 194 May 22 00:16 feed.ingress.hit.binary.template
-rw-rw-r--. 1 root root 210 May 22 00:16 feed.ingress.hit.process.template
-rw-rw-r--. 1 root root 194 May 22 00:16 feed.storage.hit.binary.template
-rw-rw-r--. 1 root root 243 May 22 00:16 feed.storage.hit.process.template
-rw-rw-r--. 1 root root 575 May 22 00:16 watchlist.hit.binary.template
-rw-rw-r--. 1 root root 460 May 22 00:16 watchlist.hit.process.template
The templates are given a context with a single python dictionary called doc that contains the
set of all possible key-value pairs.
VMware, Inc. 69
VMware Carbon Black EDR Integration Guide
2 To view the set of all possible keys, use the Jinja For loop to iterate over the indexed fields in
the Solr document with this template:
b Use the --template switch to output all of the available keys for a specific event type:
BinaryInfoSyslogTemplateGroupObserved=/etc/cb/my_bininfo_group_observed_template.txt
BinaryInfoSyslogTemplateHostObserved=/etc/cb/my_bininfo_host_observed_template.txt
BinaryInfoSyslogTemplateObserved=/etc/cb/my_bininfo_observed_template.txt
FeedIngressSyslogTemplateBinary=/etc/cb/my_feed_ingress_binary_template.txtx
FeedIngressSyslogTemplateProcess=/etc/cb/my_feed_ingress_process_template.txt
FeedStorageSyslogTemplateBinary=/etc/cb/my_feed_storage_binary_template.txt
FeedStorageSyslogTemplateProcess=/etc/cb/my_feed_storage_process_template.txt
VMware, Inc. 70
VMware Carbon Black EDR Integration Guide
WatchlistSyslogTemplateBinary=/etc/cb/my_wathlist_process_template.txt
WatchlistSyslogTemplateProcess=/etc/cb/my_watchlist_binary_template.txt
FeedQuerySyslogTemplateBinary=/etc/cb/my_feed_query_binary_template.txt
FeedQuerySyslogTemplateProcess=/etc/cb/my_feed_query_process_template.txt
2 The watchlist search process will automatically pick up the new template when the next
watchlist hit occurs.
binaryinfo.observed
scores List of threat intelligence feed scores with which the [50, 100, 75]
binary is tagged.
watchlists List of strings, each one identifying a watchlist that was [“x”, “a”]
matched with a binary.
binaryinfo.group.observed
scores List of threat intelligence feed scores with which the [50, 100, 75]
binary is tagged.
watchlists List of strings, each one identifying a watchlist that was [“x”, “a”]
matched with a binary.
group Name of the sensor group in which a binary was Default Group
observed.
binaryinfo.host.observed
VMware, Inc. 71
VMware Carbon Black EDR Integration Guide
scores List of threat intelligence feed scores with which the [50, 100, 75]
binary is tagged.
watchlists List of strings, each one identifying a watchlist that was [“x”, “a”]
matched with a binary.
feed.ingress.hit.binary
md5 MD5 hash value of a binary module that triggered a feed 44C0CBADFF00F3930B6A01EEAA40
hit. 5C6F
ioc_attr Additional attributes on the IOC value that were matched. {port:80, protocol:tcp}
hostname Hostname of the computer on which the feed hit was PANTHER
detected.
feed.storage.hit.binary
VMware, Inc. 72
VMware Carbon Black EDR Integration Guide
md5 MD5 hash value of a binary module that triggered a feed 44C0CBADFF00F3930B6A01EEAA40
hit. 5C6F
ioc_attr Additional attributes on the IOC value that were matched. {port:80, protocol:tcp}
hostname Name of the host on which the feed hit was detected. PANTHER
group First sensor group in which this binary was observed. [Default Group]
digsig_issuer If digitally signed, the issuer. VeriSign Class 3 Code Signing 2010 CA
digsig_result If digitally signed, the result. Contains one of the following Signed
eight possible values:
n Signed
n Unsigned
n Bad Signature
n Invalid Signature
n Expired
n Invalid Chain
n Untrusted Root
n Explicit Distrust
VMware, Inc. 73
VMware Carbon Black EDR Integration Guide
observed_filenam Full path to the executable backing this process. c:\program files(x86)\google\chrome
e \application\wow_helper.exe
server_added_tim The time this binary was first seen by the server. 2014-02-04T07:50:56.9 17Z
estamp
watchlist_<id> For each watchlist that matched a binary, the timestamp ‘2014-02-04T07:55:03. 007Z’
of the match.
feed.ingress.hit.process
ioc_attr Additional attributes on the IOC value that were matched. {port:80, protocol:tcp, direction:
‘Outbound’}
VMware, Inc. 74
VMware Carbon Black EDR Integration Guide
hostname Hostname of the computer on which the feed hit was PANTHER
detected.
feed.query.hit.process
hostname Hostname of the computer on which the feed hit was PANTHER
detected.
start 2015-06-24T18:32:16.752Z
process_md5 MD5 hash value of the executable backing this process. 506708142bc63daba64f2d3ad1dcd5bf
path Full path to the executable backing this process. c:\program files(x86)\google\update
\googleupdate.exe
last_update Last activity in this process, in the computer’s local time. 2014-02-04T16:23:22.5 47Z
feed.storage.hit.process
VMware, Inc. 75
VMware Carbon Black EDR Integration Guide
ioc_attr Additional attributes on the IOC value that were matched. {port:80, protocol:tcp,
direction:’Outbound’}
hostname Hostname of the computer on which the feed hit was PANTHER
detected.
comms_ip IP address from which Carbon Black EDR received the 10.101.301.4
event (which could be a NAT or proxy address, if one is
configured for the computer on which the process
executed; otherwise this is the same as interface_ip).
group Sensor group to which this sensor was assigned at the Default Group
time of process execution.
last_update Last activity in this process, in the computer’s local time. 2014-02-04T16:23:22.5 47Z
VMware, Inc. 76
VMware Carbon Black EDR Integration Guide
path Full path to the executable backing this process. c:\program files(x86)\google\update
\googleupdate.exe
process_md5 MD5 hash value of the executable backing this process. 506708142bc63daba64f2d3ad1dcd5bf
start Start time of this process, in the computer’s local time. 2014-02-04T16:23:22.5 16Z
watchlist.hit.process
group Sensor group to which this sensor was assigned at the Default Group
time of process execution.
last_update Last activity in this process, in the computer’s local time. 2014-02-04T16:23:22.5 47Z
VMware, Inc. 77
VMware Carbon Black EDR Integration Guide
path Full path to the executable backing this process. c:\program files (x86)\google\update
\googleupdate.exe
process_md5 MD5 hash value of the executable backing this process. 506708142bc63daba64f2d3ad1dcd5bf
comms_ip IP address from which Carbon Black EDR received the 123.101.301.4
event (which could be a NAT or proxy address, if one is
configured for the computer on which the process
executed; otherwise this is the same as interface_ip).
start Start time of this process, in the computer’s local time. 2014-02-04T16:23:22.5 16Z
watchlist.hit.binary
group First sensor group in which this binary was observed. [Default Group]
digsig_issuer If digitally signed, the issuer. VeriSign Class 3 Code Signing 2010 CA
VMware, Inc. 78
VMware Carbon Black EDR Integration Guide
digsig_result If digitally signed, the result. Contains one of the following Signed
eight possible values:
n Signed
n Unsigned
n Bad Signature
n Invalid Signature
n Expired
n Invalid Chain
n Untrusted Root
n Explicit Distrust
md5 MD5 hash value of the process, the parent process, a 44C0CBADFF00F3930B6A01EEAA40
child process, a loaded module, or a written file. 5C6F
observed_filenam Full path to the executable backing this process. c:\program files(x86)\google\chrome
e \application\wow_helper.exe
server_added_tim The time that this binary was first seen by the server. 2014-02-04T07:50:56.9 17Z
estamp
watchlists All watchlists that matched this binary. [{‘wid’: ‘5’, ‘value’:
‘2014-02-04T07:55:03. 007Z’}]
watchlist_<id> For each watchlist that matched this binary, the ‘2014-02-04T07:55:03. 007Z’
timestamp of the match.
VMware, Inc. 79
VMware Carbon Black EDR Integration Guide
Carbon Black EDR watchlist syslog output supports fully-templated formats, enabling easy
modification of the template to match the CEF-defined format.
To use the CEF syslog templates, add the following lines to /etc/cb/cb.conf :
WatchlistSyslogTemplateProcess=/usr/share/cb/syslog_templates/process_cef.txt
WatchlistSyslogTemplateBinary=/usr/share/cb/syslog_templates/binary_cef.txt
The watchlist searcher process automatically picks up the new template when the next watchlist
hit occurs.
VMware, Inc. 80
VMware Carbon Black EDR Integration Guide
Extension Dictionary
The CEF specification is influenced by network device vendors and, to a lesser extent, host-
based antivirus products. Products like Carbon Black EDR, with rich endpoint visibility, did not
exist when the specification was developed and, as a result, the built-in key names supported by
the extension dictionary do not map well to the data in Carbon Black EDR.
In the default template, the catch-all msg parameter is used for the fields that do not map well to
the specified list of default keys. This limits required configuration and avoids the limitations of
custom extensions.
To use custom extension keys, configure your SIEM device to support the custom keys and
modify the Carbon Black EDR default CEF template. Details are available in the CEF specification
and in Syslog Templates. Contact your support representative with any questions.
VMware, Inc. 81
VDI Support
8
This topic describes Carbon Black EDR support for Virtual Desktop Infrastructure (VDI) and how
to configure your machines to use it.
n Overview
Overview
Carbon Black EDR provides support for environments in which client machines are frequently re-
imaged or reverted back to a master image.
In these environments, agent-based software can experience complex agent management issues
such as duplicate systems or sensor id collisions. These issues are typical in environments where
the sensors are installed on a master image or on Virtual Desktop Infrastructure (VDI) images,
particularly when using non-persistent images.
Carbon Black EDR provides a means to resolve these VDI issues. If VDI behavior is configured
and enabled for some or all sensors, the sensor communicates first with the Carbon Black EDR
server (single or clustered), attempting to register itself. The server then tries to correlate that
sensor’s and client machine’s characteristics (i.e., hostname and DNS name) to an existing sensor.
If the server can correlate the new client to a sensor it has seen already, it assigns that sensor its
previous Sensor ID. If there is no correlation, the server performs a new registration for that
client. This allows the client machine to report to the server with the same Sensor ID, maintaining
the client event history despite having been re-imaged. If the endpoint's System ID (SID)
changes, VMware Carbon Black must create a new Sensor ID for that endpoint.
The process for setting up VDI support can be divided into two stages:
1 Configuring the Carbon Black EDR server to support the VDI behavior.
2 Choosing the appropriate VDI support implementation option (global or sensor group).
VMware, Inc. 82
VMware Carbon Black EDR Integration Guide
Note To configure VDI support, the Carbon Black EDR server must be version 5.0 or later.
Note If you are copying the following lines of code to paste directly into the file and a line
break occurs or special characters appear, delete the line break and any special characters.
Ensure that each line is added to the file as one continuous line.
NewRegistrationCallbackModulePath=/usr/share/cb/plugins/
default_new_sensor_registration_callback.py
NewRegistrationCallbackClassName=DefaultNewRegistrationCallback
/usr/share/cb/cbcluster stop
/usr/share/cb/cbcluster start
The default plug-in uses a sensor-provided client hostname and DNS name to correlate to an
existing Sensor ID. You can create additional plug-ins that correlate the sensor to an existing
Sensor ID based on other characteristics of the system, for example, a MAC address or an IP
address.
The default plug-in provided with the Carbon Black EDR server is located here:
/usr/share/cb/plugins/default_new_sensor_registration_callback.py
VMware, Inc. 83
VMware Carbon Black EDR Integration Guide
When installing a Carbon Black EDR sensor on a master image, we recommend that you use
Global VDI Support. While not required for sensor-group-based VDI support, the combination of
the two solutions provides additional assurance that the master image does not cause any
sensor conflicts.
A sensor collects data upon installation and its collection process can be optimized by clearing
out two types of Carbon Black EDR directories: those storing binary or event log data. Clearing
out these directories before the sensor becomes operational ensures that the sensor does not
propagate a backlog of data from processes that ran while installing Carbon Black EDR to any or
all of the images. Such a propagation can have adverse effects while deploying the image.
After stopping Carbon Black EDR sensor services on the client, clear the directories and files for
the following types of data:
n Directory: %WINDIR%\CarbonBlack\store
n Sub-directories: MD5_*
n Directory: %WINDIR%\CarbonBlack\EventLogs
n Directory:/var/lib/cb/store
n Files: MD5_*
n Directory: /var/lib/cb
n Files: event.log*
After the directories are cleared, you can configure either global or sensor group VDI support.
VMware, Inc. 84
VMware Carbon Black EDR Integration Guide
assigned sensor group. For this to occur, the client’s sensor must be configured to initially
register/check-in with a Sensor ID of 0. This setting is globally enabled on the server by default.
Before you can install a sensor on a master image, you must download a sensor package from
the appropriate sensor group. When you install the sensor, ensure that the client is in “private
mode” so that the sensor will not make any connections yet, such as checking in or registering
with the Carbon Black EDR server.
Once installed, you can select the procedure for one of the following operating systems:
n Windows
n macOS
n Linux
sc stop carbonblack
sc stop carbonblackk
2 Set the Sensor ID by setting the registry value SensorId in the registry key /
HKEY_LOCAL_MACHINE/SOFTWARE/CarbonBlack/config to 0 .
Note If the SensorId value does not already exist, create it as a QWORD value.
a Open a terminal.
VMware, Inc. 85
VMware Carbon Black EDR Integration Guide
Procedure
rm-rf /var/opt/carbonblack/response/store/*
rm-rf /var/opt/carbonblack/response/eventlogs/*
vim /var/opt/carbonblack/response/sensorsetting.ini
VdiEnabled=1
5 Set the Sensor ID to 0. This allows the Carbon Black EDR to assign new Sensor IDs to new
VMs.
vim /var/opt/carbonblack/response/config.ini
SensorId=0
SensorIdforDisplay=0
2 To configure a group for VDI support, click Sensors on the navigation bar.
3 From the Sensors menu, select the sensor group to configure for VDI support.
4 Click the Edit Settings tab. The Edit Settings page appears.
For more information about creating and editing sensor groups, see “Sensor Groups” in the
VMware Carbon Black EDR User Guide .
VMware, Inc. 86