Erfahrungen mit Bubblejail (GUI für Bubblewrap)

Das zeichnet m.E. ein schiefes Bild. Wenn Firejail die Browser-interne Sandbox unterminieren würde, müsste sich das in about:support → Isolierte Umgebungen und chrome://sandbox widerspiegeln. Tut es aber nicht. Die in Firejail blockierten Syscalls sind schon so gewählt, dass das nicht passiert. chromium-common.profile z.B. enhält den Hinweis:

If your kernel allows the creation of user namespaces by unprivileged users
(for example, if running unshare -U echo enabled prints „enabled“), you
can add the next line to your chromium-common.local.
#include chromium-common-hardened.inc.profile

Und Letztere enthält die Anweisung:

seccomp !chroot

Nimmt man nur seccomp, startet z.B. Brave erst gar nicht.

Du müsstest, um deine Behauptung zu belegen, zeigen, welche Sycalls genau ausgenommen werden, um einerseits die Browser-Sandbox nicht zu blockieren, die anderseits aber einen Ausbruch aus der Firejail-Sandbox ermöglichen.

Im Übrigen hat Firejail noch einen weiteren Vorteil. Wie hier etwa dargestellt, sind nur die Target-Prozesse (die renderers) gesandboxed, aber nicht der Broker-Process. (Die kommunizieren miteinander über IPC, und da hat es schon Sicherheitslücken gegeben.) In Firejail ist auch Letzterer in der Sandbox.

Wenn ich Firefox in der Konsole starte, wird mir auch angezeigt:

Warning: Cannot confine the application using AppArmor.
Maybe firejail-default AppArmor profile is not loaded into the kernel.

weil ich eben nicht firejail-default verwende (via ignore apparmor), sondern ein Firefox-spezifisches AppArmor-Profil. Und im torbrowser-launcher.profile von Firejail ist apparmor kommentiert, weshalb auch hier nicht firejail-default verwendet wird.

2 „Gefällt mir“