WAGO: Cloud Connectivity Remote Code Execution Vulnerability
VDE-2020-010 (2020-03-09 10:25 UTC+0100)
CVE Identifier
CVE-2019-5161Affected Vendors
WAGO
Affected Products
Article Name | Article Number | Version |
Series PFC100 | 750-81xx/xxx-xxx | All FW versions => 12 are affected |
Series PFC200 | 750-82xx/xxx-xxx | |
Touch Panel 600 Standard Line type Visu- / Control Panel |
762-4xxx | |
Touch Panel 600 Advanced Line type Visu- / Control Panel |
762-5xxx | |
Touch Panel 600 Marine Line type Visu- / Control Panel |
762-6xxx |
Vulnerability Type
Reliance on File Name or Extension of External-Supplied File (CWE-646)
Summary
An attacker needs an authorized login with administrative privileges on the device in order to exploit the herein mentioned vulnerability.
The weakness allows an attacker which has admin privileges on the device to redirect to his own Azure cloud account and install malicious software with the firmware update functionality.
Impact
These vulnerabilities allow an attacker which has admin privileges, an Azure cloud account and also access to the device to redirect the cloud connection. With thus he is able to install any malicious software by manipulating the firmware update file.
An exploitable remote code execution vulnerability exists in the Cloud Connectivity functionality of affected WAGO products. A specially crafted XML file will direct the Cloud Connectivity service to download and execute a shell script with root privileges.
Solution
Use strong passwords for all user accounts, especially for administrative user accounts on the device.
Mitigation
- Check the hashes of the Update packet, do not use update files which has a different hash then the original one
- Follow the instructions in WAGOs handbook Cyber Security for Controller
- Restrict network access to the device.
- Do not directly connect the device to the internet
- Use an encrypted VPN connection to the device
- Disable unused TCP/UDP-ports
Reported by
These vulnerabilities were reported by Kelly Leuschner of Cisco Talos to WAGO. Coordination done by CERT@VDE.