Root Privilege Escalation Vulnerability | Arbitrary File Write
PrivateVPN for MacOS < 2.0.31
PrivateVPN for MacOS suffers from a root privilege escalation vulnerability. The software installs a privileged helper tool that runs as the root user. This privileged helper tool is installed as a LaunchDaemon and implements an XPC service. The XPC service is responsible for handling new VPN connection operations via the main PrivateVPN application. The privileged helper tool creates new VPN connections by executing the openvpn binary located in the
/Applications/PrivateVPN.app/Contents/Resources directory. The openvpn binary can be overwritten by the default user, which allows an attacker that has already installed malicious software as the default user to replace the binary. When a new VPN connection is established, the privileged helper tool will launch this malicious binary, thus allowing an attacker to execute code as the root user.
PrivateVPN stated the vulnerability is an acceptable part of their software.
02-20-2018 - Vendor contacted via Twitter 02-20-2018 - Vendor contacted via Facebook 02-20-2018 - Vendor contacted via email 02-20-2018 - Vendor response and disclosure 02-21-2018 - Vendor response: "Without helper, we cannot run openvpn. This is what all vpn apps are doing." 02-21-2018 - Vendor notified of advisory release 02-21-2018 - Vendor response disputting advisory release 02-21-2018 - VerSprite responsed to vendor with instructions for resolving vulnerabilies in vendor software. 02-23-2018 - Vendor released update 02-23-2018 - Vendor response and follow up 02-24-2018 - Vendor submitted update
Offensive Minded Security Exploit Development