Existe-t-il un moyen d'empêcher la création d'un fichier donné?

8

Chaque fois que j'utilise un navigateur lisant un PDF, le plugin acrobat est utilisé pour produire un fichier appelé C:\nppdf32Log\debuglog.txtchez moi. Existe-t-il un moyen d'empêcher la création de ce fichier donné? Je veux dire que je pourrais le créer avec des autorisations root pour que ce fichier existe déjà mais je veux le faire disparaître silencieusement. J'utilise ext4.

math
la source
2
Je voudrais simplement créer un cron-job qui supprime ce fichier régulièrement.
jofel
Avoir un répertoire avec ce nom est assez bon pour empêcher la création du fichier, mais cela ne vous rapproche pas du fait de ne pas avoir l'entrée du tout. Je suppose que vous pourriez avoir un script wrapper autour de votre navigateur qui supprime ce fichier à la fin ...
Ulrich Schwarz
1
Je me demandais d'où venait ce fichier!
Joe

Réponses:

4

Vous devriez pouvoir y parvenir avec AppArmor , qui permet de bloquer l'accès en fonction du nom de chemin. Le type de système de fichiers ne joue aucun rôle dans ce cas.

Une autre option est bien sûr d'utiliser une autre visionneuse PDF. Si vous insistez pour l'avoir dans le navigateur, par exemple, Firefox à partir de la version 19 a un JavaScript intégré.

Vous pouvez également pirater le plugin comme mentionné dans le bogue Ubuntu . Je me souviens maintenant de l'avoir fait il y a longtemps (soit le bogue existe depuis des lustres, soit il a été réintroduit récemment), alors que je l'utilisais encore. Si Perl est installé, vous pouvez "réparer" le plugin avec:

perl -p -e 's,C:\\nppdf32,/dev/null\0,' /usr/lib/browser-plugins/nppdf.so

(vous devrez peut-être mettre à jour le chemin d'accès au fichier pour votre distribution).

peterph
la source
Pour être complet: Il existe d'autres cadres de sécurité comme grsecurity , SELinux ou SMACK . Ils devraient pouvoir faire de même, mais la plupart d'entre eux sont plus difficiles que AppAmor.
jofel
@jofel Je ne suis pas vraiment sûr que SELinux fonctionnerait dans ce cas, car il utilise des inodes - et vous ne connaissez pas l'inode avant que le fichier ne soit réellement créé. Cela pourrait fonctionner en empêchant acroreadd'écrire le répertoire parent (par inode), cependant.
peterph