PrivateVPN for MacOS

PrivateVPN for MacOS suffers from a root privilege escalation vulnerability with its com.privat.vpn.helper privileged helper tool. This privileged helper tool implements an XPC service that allows arbitrary installed applications to connect and send messages. The XPC service extracts the config string from the corresponding XPC message. This string is supposed to point to an internal openvpn configuration file. If a new connection has not already been established, an attacker can send the XPC service a malicious XPC message with the config string pointing at an openvpn configuration file that he or she controls. In the configuration file, an attacker can specify a dynamic library plugin that should run for every new VPN connection. This plugin will execute code in the context of the root user.