Gibt es eine Möglichkeit, die Erstellung einer bestimmten Datei zu verhindern?

8

Immer wenn ich einen Browser verwende, der PDF liest, wird das Acrobat-Plugin verwendet, um eine Datei zu erstellen, die C:\nppdf32Log\debuglog.txtbei mir zu Hause aufgerufen wird . Gibt es eine Möglichkeit zu verhindern, dass diese bestimmte Datei erstellt werden kann? Ich meine, ich könnte es mit Root-Berechtigungen erstellen, so dass diese Datei bereits existiert, aber ich möchte diese Datei stillschweigend verschwinden lassen. Ich benutze ext4.

Mathematik
quelle
2
Ich würde einfach einen Cron-Job erstellen, der diese Datei regelmäßig löscht.
Jofel
Ein Verzeichnis mit diesem Namen kann ziemlich gut verhindern, dass die Datei erstellt wird, aber das bringt Sie nicht näher daran, den Eintrag überhaupt nicht zu haben. Ich denke, Sie könnten ein Wrapper-Skript um Ihren Browser haben, das diese Datei bei Beendigung löscht ...
Ulrich Schwarz
1
Ich habe mich gefragt, woher diese Datei kommt!
Joe

Antworten:

4

Sie sollten dies mit AppArmor erreichen können, mit dem der Zugriff basierend auf dem Pfadnamen blockiert werden kann. Der Dateisystemtyp spielt in diesem Fall keine Rolle.

Eine andere Option ist natürlich die Verwendung eines anderen PDF-Viewers. Wenn Sie darauf bestehen, es im Browser zu haben, verfügt beispielsweise Firefox ab Version 19 über ein integriertes JavaScript.

Sie können das Plugin auch hacken, wie im Ubuntu-Fehler erwähnt . Ich erinnere mich jetzt daran, dass ich das vor langer Zeit getan habe (entweder war der Fehler schon seit Ewigkeiten da oder er wurde in letzter Zeit wieder eingeführt), als ich ihn noch benutzte. Wenn Sie Perl installiert haben, können Sie das Plugin "reparieren" mit:

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

(Möglicherweise müssen Sie den Pfad zur Datei für Ihre Distribution aktualisieren.)

Peterph
quelle
Der Vollständigkeit halber : Es gibt andere Sicherheits-Frameworks wie grsecurity , SELinux oder SMACK . Sie sollten in der Lage sein, dasselbe zu tun, aber die meisten von ihnen sind schwieriger als AppAmor.
Jofel
@jofel Ich bin mir nicht sicher, ob SELinux in diesem Fall funktionieren würde, da es Inodes verwendet - und Sie kennen den Inode nicht, bevor die Datei tatsächlich erstellt wird. Es könnte jedoch funktionieren, indem verhindert wird acroread, dass das übergeordnete Verzeichnis (per Inode) geschrieben wird.
Peterph