
Vulnerabilidades de escalada de privilegios locales (LPE) en el cliente DeskIn para macOS
Proveedor: DeskIn
Producto: Cliente DeskIn para macOS
Versiones afectadas: <= v3.3.4.3
Se ha identificado una vulnerabilidad de escalada de privilegios local (LPE) en el cliente DeskIn para macOS. Esta vulnerabilidad permite a un usuario local sin privilegios escalar sus privilegios a root.
DeskIn instala un daemon llamado DeskIn_Service que se ejecuta como el usuario root. Expone un servicio Mach XPC llamado com.deskin.service.installer.
La implementación de este endpoint XPC carece de una validación adecuada del cliente. El NSXPCListenerDelegate no realiza comprobaciones de seguridad adecuadas en las conexiones entrantes. No verifica la firma de código ni los entitlements del cliente que se conecta. En consecuencia, cualquier aplicación sin privilegios o usuario local en el sistema macOS puede conectarse a este servicio XPC e invocar el método submitInstallerToSystemDomainWithPath:.
/Applications/DeskIn.app/Contents/MacOS/DeskIn_Servicecom.deskin.service.installersubmitInstallerToSystemDomainWithPath:hostBundleIdentifier:homeDirectory:userName:jobDictionary:completion:https://github.com/user-attachments/assets/46a26c48-3a28-405a-8430-3bc041951261
Para proteger el servicio XPC, el método shouldAcceptNewConnection: debe rechazar explícitamente a los clientes no autorizados.
Recomendación: Verificar la firma de código del proceso que se conecta. Asegurarse de que el cliente esté firmado por el Apple Developer Team ID específico y posea un entitlement o bundle identifier específico que coincida con el cliente legítimo de DeskIn.
Como el proveedor no ha publicado un parche para estos problemas en el momento de la publicación, se recomienda a los usuarios del cliente DeskIn para macOS que deshabiliten DeskIn_Service si no es estrictamente necesario o desinstalen el software hasta que haya un parche disponible.
Encontrado por:
Long, Dang Hoang de SACOMBANK