Firejail

  • Hallo zusammen,


    bevor ich mich in anderen Foren anmelde und dort nachfrage, mal eine Frage in die Runde. Kennt sich einer der Linuxer hier mit Firejail aus? Ich kämpfe schon seit ein paar Stunden.

    Die mitgelieferte firefox.profiles scheint für Firefox >60 nicht zu passen. Möglicherweise trifft es auch auf Thunderbird zu. Das habe ich noch nicht genauer ausprobiert, weil es hier nicht so wichtig ist.


    Firefox startet, bleibt danach aber leer. Das war in unserem Kurs nicht so. :)

    Mit --no-profile tritt das Problem nicht auf. Das ist nur leider nicht Sinn der Sache.



    Kubuntu 18.04, openSUSE Leap

  • Vielen Dank!


    Die Github-Version ist für mich keine Option. Bei so einem Werkzeug möchte ich die Version der jeweiligen Distribution verwenden. Das empfehlen auch die Programmierer.


    Der Hinweis des Users Brick hat aber die halbe Lösung gebracht. Die andere Hälfte kam vor wenigen Minuten von einem der Kursleiter, zu dem ich per Mail Kontakt aufgenommen hatte. Von dort kam der Wink auf seccomb-bf.

    Diese Information findet man auch in dem Report 1939, den man wiederum auch über den Link von brick auf Report 1935 finden kann.


    Es gibt zwei Baustellen. Eine im Tracing (1935), die andere im seccomb-bf (1939)


    Quote

    We had to take out chroot from the seccomp filter to get Firefox working. If you replace seccomp with the following long line it should work again:

    https://github.com/netblue30/firejail/issues/1939


    Ich habe also das Tracelog deaktiviert und seccomb wie dort vorgeschlagen ohne chroot aktiviert. (Die Benutzung von chroot ist gemäß des Links von Sören Hentzschel eine Änderung des Sandboxing in Firefox 60.)


    Das hat funktioniert! Bin begeistert.


    Nebenbei, auch wenn es Sören Hentzschel seinen eigenen Worten gemäß wohl nie verstehen wird (oder will). Firejail macht eben nicht genau das, was Firefox bereits macht oder kann.


    Firejail separiert den kompletten Firefox und kann so vor Zero-Day-Exploits schützen, die im Firefox noch gar nicht gefixt sind. Das kann das Sandboxing des Firefox logischerweise nicht.

    Genau das ist die Idee dahinter. Noch nicht geschlossene Sicherheitslücken anderer Programme dadurch abzufangen, dass man diese Programme abkapselt.


    Wie man sieht, erfordert es hier und da etwas Aufwand, Geduld und manchmal die Hilfe anderer, aber es macht die Sache sicherer. Einfacher als über AppAmor ist es allemal.


    Dazu auch Linux härten, Teil 4

  • Nach dem Erfolg bzgl. seccomb, eine letzte Rückmeldung zu diesem Thema.


    Ich habe noch etwas Feintuning vorgenommen und u.a. Verzeichnisse, die es in der jeweiligen Distribution nicht gibt oder die für mich nicht relevant sind (z.B. .lastpast), aus der Whitelist genommen.

    Eine weitere Anpassung war nötig, weil ich das Firefox-Profil für den täglichen Gebrauch ins RAM auslagere.


    Alles in allem hat es nochmals etwas Zeit gekostet, aber es hat sich gelohnt. Die Tests verliefen alle erfolgreich. Meine Erweiterungen

    funktionieren, alle getesteten Seiten von Shops, der Bank und auch solche mit DRM-Schutz laufen korrekt.


    Falls jemand den User brick triff, einen lieben Gruß an ihn.


    Ich möchte noch etwas berichten, worüber ich mich freue, auch wenn es nicht direkt mit Firejail zu tun hat.

    Der Lynis-Scan (den gibt es übrigens auch für die macOS-User), als Maß für die Härtung eines Systems, zeigt mir zusammenfassend:


    Code
    Lynis security scan details:
    Hardening index : 74 [##############     ]
    Tests performed : 218


    Nach der Standardinstallation von Kubuntu 18.04 betrug der Wert 53%. Da sind meine inzwischen erreichten 74% für einen Desktop schon sehr ordentlich. Der Wert ließe sich noch erhöhen, aber die verbliebenen Hinweise betreffen Risiken, denen ich mich eher nicht ausgesetzt sehe.


    Damit ist eine weitere Maßnahme auf dem Weg zu einem möglichst sicheren PC auf einem guten Weg.

  • Hallo Ruhezone,


    vielen Dank für Deine Mitteilung.


    Irgendwo in einem der github-Fäden habe ich gelesen, dass die Problematik wegen Firefox 60 (und ich denke dann logischerweise parallel für Thunderbird 60) ...


    Quote

    This will be fixed in 0.9.54.


    ... mit dieser Version gefixt werde.


    Aktuell gibt es ja Firejail sogar schon in der Version 0.9.56.


    Hast Du diese Versionen ohne die von Dir beschriebenen Anpassungsmaßnahmen mal getestet?


    Ich selbst nutze Linux openSUSE 15 Leap und Linux Mageia 6.1 (jeweils als 64-Bit-Version) und würde gerne den Firejail auch wieder für den Thunderbird und den Firefox nutzen.


    Gruß

    Feuerdrache

    „Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird.“
    Clifford Stoll, amerik. Astrophysiker u. Computer-Pionier

  • Hast Du diese Versionen ohne die von Dir beschriebenen Anpassungsmaßnahmen mal getestet?

    Nein, ich verwende die 0.9.52 aus der Distribution. Bei mir funktionieren Firefox und Thunderbird damit in Firejail. Firefox habe ich intensiver getestet. Es kann sein, dass die .56 keine Anpassungen mehr benötigt. Du kannst es ja ausprobieren.


    Falls du auch lieber bei der Version aus den Distris bleiben möchtest, hier meine Anpassungen (ohne das Feintuning).


    In der firefox.profile habe ich den Tracelog deaktiviert und seccomb ohne chroot gesetzt. Dazu muss man die anderen Optionen dann einzeln anführen, was die Zeile etwas lang macht.


    Code
    seccomp.drop @clock,@cpu-emulation,@debug,@module,@obsolete,@raw-io,@reboot,@resources,@swap,acct,add_key,bpf,fanotify_init,io_cancel,io_destroy,io_getevents,io_setup,io_submit,ioprio_set,kcmp,keyctl,mount,name_to_handle_at,nfsservctl,ni_syscall,open_by_handle_at,personality,pivot_root,process_vm_readv,ptrace,remap_file_pages,request_key,setdomainname,sethostname,syslog,umount,umount2,userfaultfd,vhangup,vmsplice
    shell none
    # tracelog


    In der thunderbird.profile habe ich die firefox.profile auskommentiert. Es kann sein, dass das bei dir nicht nötig ist.

    Code
    # include /etc/firejail/firefox.profile



    Da ich das Firefox Profil aus dem RAM benutze und dort auch alle Logs hinschreibe, musste ich noch eine weitere Anpassung vornehmen, weil es sonst zu IBUS-Fehler kommt. Wenn du das Profil normal von der Platte benutzt, sollte das bei dir nicht nötig sein.

    Es sei trotzdem erwähnt. Der Aufruf erfolgt bei mir über

    Code
    GTK_IM_MODULE=xim firejail --noblacklist=/dev/shm/Profilbezeichner firefox -P Profilbezeichner

    Auch das könnte mit der .56 behoben sein.

  • Hallo Ruhezone,


    ich bin auch eher ein Freund von Distributionsversionen oder zumindest distributionsnahen Paketdepots. Deshalb vielen Dank für Deine Beschreibung der Vorgehensweise unter der 0.9.52 mit den Codeschnipseln. :)


    Gruß

    Feuerdrache

    „Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird.“
    Clifford Stoll, amerik. Astrophysiker u. Computer-Pionier

  • Ich hab's nun doch rasch mit der 0.9.56 ausprobiert. Das dauert ja mal gerade 10 Minuten. Der Tracelog funktioniert damit (ist aber in der LTS nicht unterstützt). Der Bug 1935 scheint behoben.

    Die seccomb- und IBUS-Fehler traten bei mir auch damit auf. Die Anpassungen dazu sind bei mir auch mit der .56 nötig.

  • Hallo Ruhezone,


    danke für den zusätzlichen Test und die kurzen Informationen dazu.


    Ich werde mir an diesem Wochenende meine beiden Linux-Rechner mal vornehmen. Werde dann vom Ergebnis berichten. Zu openSUSE 15 Leap habe ich schon mal diese Information gefunden: FIrejail in openSUSE Leap15 #2078.


    Gruß

    Feuerdrache

    „Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird.“
    Clifford Stoll, amerik. Astrophysiker u. Computer-Pionier

  • Ich habe meine letzten Tests nur noch unter Ubuntu 18.04 durchgeführt und die VMs mit Kubuntu und Leap heute gelöscht. Ich musste mich langsam aber sicher für eine Distri entscheiden, weil der Test- und Pflegeaufwand auch für das Härten sonst einfach zu hoch ist. Da mein frisch angemieteter Server auch unter Ubuntu läuft, war die Wahl leichter zu treffen.


    Ohne die Anpassungen lief der Firefox >60 in keiner der Distris innerhalb Firejail. Mit den Anpassungen läuft er unter Ubuntu völlig rund.


    Thunderbird in Firejail habe nicht gründlich getestet. Dazu kann ich nur sagen, dass er startet und Mails, Kalender und Adressbücher abruft und dass Enigmail/gpg funktioniert.


    Die verlinkte Seite habe ich nur im Schnelldurchlauf gelesen. Dieser Bug ist demnach gefixt. Auch er stand in Zusammhang mit dem chroot. Im Text ist aber auch Plasma erwähnt. Es kann also sein, dass die Anpassungen hier nicht genügen. Es wäre dann vielleicht besser, wenn du doch die .56 verwenden würdest.

  • Hallo Ruhezonen,


    vielen Dank für Deinen weiteren Input.


    Ich werde das mit der .56 in Erwägung ziehen. Ich werde berichten, sobald ich auf meinen Linux-Rechnern Firejail bezüglich dem Donnervogel und dem Feuerfuchs eingerichtet habe.


    Gruß

    Feuerdrache

    „Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird.“
    Clifford Stoll, amerik. Astrophysiker u. Computer-Pionier

  • Nach einer guten Woche Dauergebrauch kann ich sagen, dass Firefox 60+ (derzeit 64) ohne Probleme im Firejail läuft. Auch den Test mit einem Profilbreaker hat Firejail sauber überstanden. Firefox ohne Firejail nicht.

  • Noch etwas, das nicht zum eigentlichen Thema gehört. Aber da dies mein Thread ist und ohnehin gelöst, nehme ich mir die Freiheit. Mag ja sein, dass es einen aus dem Promille gibt, den es interessiert.


    Ich habe den Härtegrad meines Systems noch um einen Punkt erhöht, auf Lynis 76. Alles darüber hinaus hat dann doch weh getan. Weiter will ich nicht gehen.

    Wenn es hier einen 80er geben sollte, der das schmerzfrei hinbekommen hat, wäre ich an einer Rückmeldung interessiert. Gern über Conversations.


    Den Firefox selbst habe ich nach 2 Jahren wieder einmal überprüft und weitere Einstellungen aus dem Privacy Handbook übernommen. Unter Linux ist der Firefox im Vergleich zu den Chromes wegen der schlechten GPU-Unterstützung eine ziemliche Schnecke. Das ist noch gelobt.

    Die Anpassbarkeit in Sachen Privatsphäre und mein größeres Vertrauen zu Mozilla wiegen das aber mehr als auf.


    Das Resultat:


    Panopticlick sagt "Yes! You have very strong protection against Web tracking, ..." AmIunique und browserleaks bestätigt das Ergebnis.


    Alle drei Seiten sagen aber, mein Browser Fingerprint sei einzigartig. Das klingt zunächst erschreckend.

    Ist es aber nicht. Man muss die Ergebnisse nur richtig interpretieren und sich nicht gleich Angst einjagen lassen. Nachdenken lohnt sich immer.

    Auf bowserleaks sieht man einen Hash des Fingerprints. Der ist bei mir zwar einzigartig, aber bei jedem erneuten Aufruf ein anderer. Das liegt vor allem daran, dass ich den Canvas mit Hilfe von CanvasBlocker vortäusche. Einem Tracker nutzt mein einzigartiger Fingerabdruck also nicht viel, weil ich schon auf der nächsten Seite einen anderen präsentiere.


    Big Data hat natürlich noch andere Mittel, mich zu identifizieren. Das ist klar. Aber zum Glück hat noch nicht jeder Big Data und KI zur Verfügung.


    Ein Schwank am Rande:

    Das wesentliche Merkmal, das mich erkennbar machen könnte, ist Stand heute, dass ich die aktuelle Version 64 verwende. Von den Besuchern bei AmIuninique haben gerade einmal "0.09 % of observed browsers are Firefox 64.0, as yours." (Wenn man die 64 unter Linux verwendet, wird es noch schlimmer.) Kein anderes Merkmal hat auch nur annähernd einen so schlechten Wert.

    Der nächst schlechtere ist "9.18 % of observed browsers have set "de"as their primary language, as yours." Das aber immerhin um den Faktor 100 besser.


    Demnach müsste ich schleunigst auf einen alten Browser und auf Englisch wechseln, wenn ich in der Masse untergehen möchte. Englisch wäre ok, ein alter Browser wäre nun wirklich nicht zu empfehlen. Aktuelle Software ist ein Muss.


    Das sollte zeigen, dass dieses oft gelesene Argument des Schwarms nicht viel Wert ist. Also, nicht alles glauben, was man so im Internet liest.

    Übrigens auch mir nicht. Probiert es besser selbst aus und denkt nach.

  • Ich werde berichten, sobald ich auf meinen Linux-Rechnern Firejail bezüglich dem Donnervogel und dem Feuerfuchs eingerichtet habe.

    Darf ich mal neugierig sein? Hat es geklappt? Bei mir läuft es immer noch wie ein Glöckchen.

  • Hallo Ruhezone,


    danke für Deine Erinnerung an mein Berichtsversprechen.


    Also installiert ist Firejail 0.9.54 und es funktioniert mit Firefox, SeaMonkey und Thunderbird, nachdem ich das umgesetzt habe.


    Gruß

    Feuerdrache

    „Innerhalb der Computergemeinschaft lebt man nach der Grundregel, die Gegenwart sei ein Programmfehler, der in der nächsten Ausgabe behoben sein wird.“
    Clifford Stoll, amerik. Astrophysiker u. Computer-Pionier