firejail
ist kein magisches Werkzeug, das alles richtig macht. Mit diesem Sicherheitstool können Sie Ihre eigenen Regeln für den Umgang mit Dingen definieren. Zum Beispiel diese Argumente:
firejail --noprofile
Gibt überhaupt keinen Schutz. Da Sie keine Einschränkungen angegeben haben, ist Firejail standardmäßig zulässig. Um einige Verzeichnisse schreibgeschützt zu machen, sollten Sie sie explizit schreiben. So etwas wie:
firejail --noprofile --read-only=/ --read-only=~ --read-only=/tmp
(Ich habe geschrieben /
, ~
und /tmp
getrennt davon, weil Firejail ein etwas überraschendes Verhalten hat, Ihre Anweisungen nach nicht ganz so trivialen Regeln zu sortieren und ~
in der Mitte eigene Reittiere zu machen.)
Auch ohne --caps.drop=all
Argumente --seccomp
und solche Programme sind Ihre Programme sowieso nicht sicher. Weil der Prozess über Unix-Sockets, abstrakte Sockets usw. mit anderen Prozessen kommunizieren kann, um deren Fehler auszunutzen. Wenn Sie ein relativ "OK-Gefängnis" wünschen, fügen Sie mindestens die Anweisungen seccomp, caps.drop = all und nonewprivs hinzu.
EDIT: Das Zitat, das Sie erwähnt haben, ist wahrscheinlich nur falsch. (Ich denke zumindest.) Es ist komplexer als nur "alles ist schreibgeschützt".