Datto Windows Agent Remote Code Execution

Datto Windows Agent suffers from multiple remote code execution vulnerabilities.


MD5 | 676d485c422ed3c22a813b3845e1997a

Credits
=======
Brian Vincent, Michael Brumlow

Software
========
Datto Windows Agent

Vulnerability Details
=====================
Discovered: Aug 25, 2017
Type: Remote code execution as LocalSystem
Severity: Critical

Description
===========

CVE-2017-16673
Software: Datto Backup Agent for Windows, MacOS, Linux
Versions: All current versions

Datto Backup Agents rely on TLS client certificates to authenticate incoming requests. These certificates and private keys are easy to obtain, even if you are not a Datto customer. Once a single certificate and private key is obtained, it can be used to authenticate with any Datto Backup Agent. The result is that there is no effective authentication on incoming connections to Datto Backups Agents.

This means that any attacker that can establish a TCP connection on port 25566 or 25568 to a Datto Backup Agent can impersonate a Datto Appliance machine, and "pair" with a Datto agent, and issue requests. These requests include performing a full system image-based backup of the machine, or executing certain OS commands. A comprehensive list of requests and their capabilities is currently unknown.

CVE-2017-16674
Software: Datto Windows Agent
Versions: versions earlier than 1.0.6.0

The Datto Windows Agent attempts to whitelist only certain OS commands. In versions earlier than 1.0.6.0, this whitelist can be easily avoided. This allows arbitrary commands to be executed.

Together, these vulnerabilities result in trivial remote command execution as LocalSystem for the Datto Windows Agent in versions earlier than 1.0.6.0.

Vendor response
===============
https://www.datto.com/partner-security-update-nov2017

Vendor response correction
==========================
It is not necessary to be on the same local network to exploit these vulnerabilities. An attacker only needs to be able to establish a TCP connection to the agent to exploit these vulnerabilities.

Recommendation
==============
Ensure that you are running at least version 1.0.6.0 of the Datto Windows agent, which fixes CVE-2017-16674. For all Datto Backup Agents, set a local firewall rule to only allow incoming connections from your trusted Datto Appliance, as there is no fix for CVE-2017-16673 currently.

Proof of Concept
================
A proof of concept will not be posted at this time.

Related Posts