
Vulnérabilités d'élévation de privilèges locaux (LPE) dans le client macOS DeskIn
Éditeur : DeskIn
Produit : Client macOS DeskIn
Versions affectées : <= v3.3.4.3
Une vulnérabilité d'élévation de privilèges locale (LPE) a été identifiée dans le client macOS DeskIn. Cette vulnérabilité permet à un utilisateur local non privilégié d'élever ses privilèges vers root.
DeskIn installe un démon nommé DeskIn_Service qui s'exécute en tant qu'utilisateur root. Il expose un service Mach XPC nommé com.deskin.service.installer.
L'implémentation de ce point de terminaison XPC manque de validation appropriée du client. Le NSXPCListenerDelegate ne réalise pas de contrôles de sécurité adéquats sur les connexions entrantes. Il ne vérifie pas la signature de code ni les droits (entitlements) du client qui se connecte. Par conséquent, toute application non privilégiée ou tout utilisateur local sur le système macOS peut se connecter à ce service XPC et invoquer la méthode 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
Pour sécuriser le service XPC, la méthode shouldAcceptNewConnection: doit explicitement rejeter les clients non autorisés.
Recommandation : Vérifier la signature de code du processus qui se connecte. S'assurer que le client est signé par l'Apple Developer Team ID spécifique et possède un droit (entitlement) ou un identifiant de bundle spécifique correspondant au client DeskIn légitime.
Comme l'éditeur n'a pas publié de correctif pour ces problèmes au moment de la publication, il est conseillé aux utilisateurs du client macOS DeskIn de désactiver DeskIn_Service s'il n'est pas strictement nécessaire ou de désinstaller le logiciel jusqu'à ce qu'un correctif soit disponible.
Découvert par :
Long, Dang Hoang de SACOMBANK