DeepSurface: Endpoint Protection Considerations

Documentation
Installation Guide
Overview
Let DeepSurface Host For You
Getting Started
System Requirements
Self Hosted Quick Start - Installing to Cloud Platforms
Self Hosted - Installation Using an OVA
Registration, Package Installation, and Initialization
First Steps After Initialization of the Console
Deployment Options
Main and Subordinate Consoles
Agent-Based Deployment
User Managed Scan Deployment
Credentialed Scanning Deployment
Mixed Environment
Deployment Tools
Active Directory Group Policy
Microsoft Endpoint Configuration Manager (part of InTune)
Tanium Deploy
HCL BigFix
Ivanti
Virtual Machines
VMWare
Virtual Box
VirtualBox Guest Additions
AWS EC2 (BYOL)
AWS EC2 (Usage Based)
Azure Cloud
Google Cloud
Additional Items to Consider
Main Console Server Certificates
LDAP
TOFU
Clock Sync
DeepSurface Commands
Multiple Vulnerability Sources
API Documentation
User Guide
Reporting
Dashboards
Exports
Risk Insight
Hosts
Patches
Vulnerabilities
Vulnerability Instances
Users
Remediation Workflow Manager
Plans
Settings
Integrations
Workflow
Exporting
Accepted Risk Plans
Accepted Risk Workflow
Explore
Model
Paths
Activity
Tasks
Configuration Alerts
Scan Logs
Notification Settings
Scanning
Status
Agents
User Managed
Credentialed Scanning Settings
Credentials
Scan Groups
General Settings
Cloud Scanning
Network Connectivity
Subordinates
Vulnerability Sources
Setup
Sensitive Assets: Polices
Sensitive Assets: Manual
Admin Settings
SMTP Settings
Certificates
Outbound Proxy
Authentication Providers
Users
Tags
Integrations Guide
Vulnerability Sources
CrowdStrike Spotlight
SentinelOne
Carbon Black Cloud
Microsoft Defender for Endpoint
Wazuh
Lansweeper Cloud
Nessus API
Tenable.io API
Security Center/Tenable.sc API
Rapid7 InsightVM API
Qualys API
Nozomi Guardian
Eclypsium
AWS Inspector
Remediation
Jira Software
Tanium (BETA)
Authentication Providers
LDAP (Active Directory)
SAML (Azure Active Directory)
SAML (Google)
SAML (Okta)
PAM
CyberArk
Delinea (Thycotic)
Microsoft LAPS
Security Guide
Firewall Configuration
Base Network Requirements
Agent Network Requirements
Credentialed Scanning Network Requirements
API Network Requirements
How DeepSurface Scans Work
Domain (LDAP) Scanning
Host Scanning Routine
Reasons for the Administrative Access Requirement
Endpoint Protection Considerations
Other Items
Scope of Data Storage and Retention
IPS/IDS Considerations
Logging
Resetting the DSADMIN password
Product Information
Changelogs
Open source Licenses
End User License Agreement (EULA)

Depending on the endpoint detection and response (EDR) or extended detection and response (XDR) software in an environment, DeepSurface scans may be inadvertantly prevented from scanning hosts due to a false positive. While DeepSurface takes extensive steps to protect our software build chain, including signing the DeepSurface agents with code signing certificates, most EDR/XDR products simply ignore signatures and use basic heuristics to flag unknown software.

For example, on a Windows host, EDR may prevent the WMI protocol from creating a DeepSurface scheduled task needed to scan the host. An example message from the EDR solution Sophos may look something like this:

'"C:\Windows\system32\schtasks.exe" /create /tn DeepSurface_agentless_scan_qvlsxm72 /xml \\127.0.0.1\ADMIN$\TEMP\DeepSurface_vqfbrrkx2u\ds37-xdiboxns_task.kchl/f'

A simple solution is to configure the EDR rules to allow for commands run from the C:\Windows\TEMP\DeepSurface_* directory to run on that host, and any other affected hosts. Note that temporary directories used vary slightly by operating system (see above for details).

Here is another example where Microsoft Defender for Endpoint flags a DeepSurface scan as a suspicious scheduled task:

schtasks.exe modified task DeepSurface_agentless_scan_73fk13lq to execute powershell.exe

The false alert can be re-classified or suppressed by following Microsoft's guide on addressing false positives in Microsoft Defender for Endpoint. In this example it makes sense to suppress the alert and allow DeepSurface_agentless_scan_* to execute powershell.exe.