Vulnerabilidad de escalación de privilegios en NordVPN y ProtonVPN

Vulnerabilidad de escalación de privilegios en NordVPN y ProtonVPN

Hace ya tiempo habían implementando un parche que impedía que los clientes NordVPN y ProtonVPN ejecutaran código arbitrario con privilegios de administrador en ordenadores que usarán el sistema operativo Windows. Pero según la investigación de un un investigador de seguridad no fue suficiente.

Tanto NodVPN como ProtonVPN usan el software de código abierto OpenVPN para crear un túnel seguro para establecer la conexión de punto a punto. Este servicio para funcionar correctamente necesita ejecutarse con permisos de administrador, por lo que cualquier código que se ejecute desde estos clientes de VPN tendrían también privilegios de administrador de estos.

Paul Rascagneres investigador de seguridad de Cisco Talos descubrió que el archivo de configuración de OpenVPN puede modificarse para incluir código arbitrario y permite ejecutar ese código arbitrario con derechos de administrador en Windows

Vulnerabilidad similar encontrada en Abril

Esta vulnerabilidad es similar a la revelada en abril por Fabius Watson de la firma de consultoría de seguridad VerSprite, quien demostró que el servicio OpenVPN aceptaría y ejecutaría un archivo de configuración que contiene un parámetro como "complemento" o "script-security".

Tanto NordVPN como ProtonVPN arreglaron esto implementando una comprobación de la presencia de los dos parámetros peligrosos, así como "arriba" y "abajo", que son todos los métodos para ejecutar código o comandos a través de OpenVPN.

Las medidas de seguridad implementadas por OpenVPN son insuficientes

Al mirar a través del código fuente de OpenVPN para el analizador de archivos de configuración, Rascagnares notó que estos controles eran insuficientes y que se podía lograr el mismo efecto al colocar los parámetros entre comillas. El investigador mostró que al agregar el siguiente texto al archivo de configuración

"script-security" 2
"up" C:\\WINDOWS\\system32\\notepad.exe

En la siguiente imagen podéis ver el resultado:

Ejecución con derechos de administrador Notepad

Estás vulnerabilidades tienen una gravedad de 8.8 sobre 10

Las dos vulnerabilidades seguridad se rastrean actualmente como CVE-2018-3952 para ProtonVPN y CVE-2018-4010 para NordVPN, y tienen una clasificación de gravedad de 8.8, de un máximo de 10.

Rascagnares digo que aviso a los dos proveedores de VPN el 5 de julio. NordVPN por su parte lanzó un parche el 8 de agosto, mientras que ProtonVPN lo parcheo el 3 de septiembre.

Cada proveedores optó por diferentes medidas

ProtonVPN decidió colocan el archivo de configuración de OpenVPN en el directorio de instalación para impedir que un usuario sin privilegios no pueda modificarlo. Por lo tanto, no podemos agregar la cadena maliciosa en él.

NordVPN decidió usar un modelo XML para generar el archivo de configuración de OpenVPN. Un usuario sin privilegios no puede modificar la plantilla.

Las versiones de cliente afectadas por el error de escalada de privilegios son ProtonVPN 1.5.1 y NordVPN la versión v6.14.28.0.

¿Cómo puedo actualizar a la última versión?

Los usuarios de NordVPN tienen la opción de actualización automáticamente a la última versión de la aplicación.

Los usuarios de PrototonVPN necesitan iniciar el proceso de actualización de forma manual.

Fuente: Cisco Talos