4 votes

Bloquer l'accès en lecture/écriture d'une application à un fichier spécifique dans OS X ?

La prémisse est la suivante :

J'ai une application dont le code a été paramétré pour ne fonctionner que sur les versions 10.4 à 10.9.2 d'OS X. (Quand j'essaie de l'installer, le message "Cette version de ____ est pour Mac OS X 10.4 à 10.9.2."). J'ai effectué la mise à jour vers 10.9.3, et le développeur doit simplement mettre à jour l'application pour corriger cette restriction dans son outil.

Je suis en contact avec le développeur, qui m'a dit qu'il était "trop occupé" pour travailler sur l'application ou publier une mise à jour pour le moment.

J'ai compris que l'application ne fait que lire /System/Library/CoreServices/SystemVersion.plist pour déterminer la version du système d'exploitation, et j'ai réussi à contourner sa restriction d'installation en modifiant temporairement le fichier à l'aide de este guide. Mais après avoir rétabli les valeurs de la plist en 10.9.3 et redémarré le système pour commencer (avec un peu de chance) à utiliser l'application, j'ai vu qu'elle vérifiait même les éléments suivants SystemVersion.plist à même exécuter également - et pas seulement pendant l'installation.

J'ai peur que si je continue SystemVersion.plist à 10.9.2 indéfiniment, cela ruinerait d'autres parties du système comme les mises à jour de l'App Store et autres.

Donc mon idée maintenant, est d'essayer de trouver une méthode ou un outil pour empêcher l'application de pouvoir même lire SystemVersion.plist entièrement - pensez-y comme une version "système de fichiers" de Petite balance si vous voulez - juste un moyen de créer des règles personnalisées, pour des processus spécifiques, qui interdisent l'accès en lecture et/ou en écriture, à des fichiers/dossiers spécifiques dans le système.

Peut-être que cela provoquerait une erreur et que l'application ne s'exécuterait pas du tout (je pourrais probablement tester cela en déplaçant temporairement le fichier plist vers la Corbeille pendant 30 secondes tout en essayant de l'installer/de l'exécuter) - mais dans tous les cas, je pense que c'est un problème d'installation. vraiment Il est utile de pouvoir disposer d'un tel dispositif pour des raisons de sécurité importantes, tout comme le blocage personnalisé de l'accès au réseau pour les applications dans le cadre de l'initiative de l'Union européenne. Petite balance .

Existe-t-il un outil tiers génial, ou même un outil natif de OS X / Xcode, qui puisse faire cela ? Avez-vous une idée de ce qu'il faudrait faire de toute façon, du point de vue du système et de la programmation ? Le réglage de 'Sharing & Persimmons' pour un fichier dans le Finder me permet de contrôler utilisateur l'accès, mais pas le processus.

6voto

Jose Chavez Points 645

Vous pourriez simplement utiliser les fonctions de sandboxing intégrées de Mac OS X.

Créez un profil personnalisé qui limite l'accès au fichier SystemVersion.plist, en utilisant une syntaxe comme celle-ci :

(version 1)
(deny file* (literal "/System/Library/CoreServices/SystemVersion.plist"))
(allow default)

Enregistrez ce fichier sous le nom de ~/myprofile.sb par exemple, puis exécutez votre programme comme suit :

sandbox-exec -f ~/myprofile.sb "/Application/My Program.app/Contents/MacOS/My Program"

1voto

Kenston Choi Points 131

Les mains libres a cette fonctionnalité :

Surveillance de l'accès au disque

Les applications présentes sur votre ordinateur peuvent librement lire, stocker ou effacer des informations sur votre ordinateur à votre insu. En utilisant Hands Off !, vous pouvez surveiller et contrôler l'accès au disque de toutes les applications afin de les empêcher d'obtenir des informations confidentielles, d'effacer vos données ou de stocker des cookies.

Et il se trouve qu'il inclut la fonction pare-feu du Petit Mouchard.

https://www.macworld.com/article/3190149/little-flocker-reincarnates-at-f-secure-in-free-beta.html :

Little Flocker, un outil qui restreint l'accès des applications et des processus système aux fichiers sans autorisation. Il n'a pas été en mesure de donner des détails, mais récemment, F-Secure, une société leader dans le développement et l'analyse de la sécurité, a annoncé l'achat de Little Flocker, qu'elle a rebaptisé Xfence.

MacOS Catalina possède désormais cette fonctionnalité similaire :

Protection des données

MacOS Catalina vérifie auprès de vous avant d'autoriser une application à accéder à vos données dans les dossiers Documents, Bureau et Téléchargements, iCloud Drive, les dossiers de fournisseurs de stockage en nuage tiers, les supports amovibles et les volumes externes. En outre, il vous est demandé avant qu'une application puisse effectuer l'enregistrement des touches ou capturer un enregistrement fixe ou vidéo de votre écran.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X