AppArmor arbeitet mit ausführbaren Dateien. Es kann nicht feststellen, dass Firefox ein anderes Profil geladen hat und sollte daher ein anderes AppArmor-Profil verwenden.
AppArmor unterstützt Änderungsregeln, die es einer Anwendung ermöglichen, das für sie geltende Profil zu ändern. Der beabsichtigte Anwendungsfall besteht genau darin, einer Anwendung zu ermöglichen, zu einem restriktiveren Profil zu wechseln, sobald sie mit der Initialisierung fertig ist und herausgefunden hat, worauf sie in diesem bestimmten Fall zugreifen muss. Wenn Firefox also AppArmor-fähig wäre, wäre es möglich, ihm change_profile
zu geben Regel und lassen Sie es den Übergang anwenden, sobald es herausgefunden hat, unter welchem Profil es ausgeführt werden soll. Soweit ich weiß, wurde dies nicht getan.
Was Sie ohne Programmieren tun können, ist das Erstellen mehrerer Kopien oder fester Links von firefox-bin
ausführbare Datei und definieren Sie unterschiedliche Profile für jede von ihnen (AppArmor basiert auf dem Pfad zur ausführbaren Datei, sodass verschiedene harte Links nicht dasselbe Profil verwenden müssen, im Gegensatz zu SELinux, das auf Inodes basiert). Dies erfordert root und ist nicht so bequem, weshalb AppArmor um die Profiländerungsfunktion erweitert wurde.