Hey all!
(I did post this in c/flatpak, but this community is more active. I am not sure where would be more appropriate)
Something that I have been wanting to get working is having my browser and password manager both in flatpak. I really like being sandbox and having faster updates if the distro is on the slower side perhaps.
I have a set up with Firefox as a deb and keepassxc as a flat and that works find as one would expect. I did want to install Vivaldi as a flatpak and was not able to get it to talk with keepass.
In my reading I found this: installing KeePassXC natively, which you’d actually want for security reasons.
installing KeePassXC natively, which you’d actually want for security reasons
What is mean by that line of reasoning?
They’re saying that it only works if your browser is installed natively and your password manager is sandboxed, which is the exact opposite of what you’d want
The browser is the vulnerable software that needs sandboxing
Both being sandboxed would be fine, too
Thank you for clarifying that.
I don’t know if this is still the case, but IIRC browsers (chrome and Firefox) have their own sandboxing which is quite effective, but their efficacy is hindered by flatpak.
@aport @ozymandias117 how does that work? I’m new to all this.
Browsers do have their own sandboxing, trying to prevent things like a JavaScript overflow on one website affecting other tabs, etc
Flatpaks use user namespaces and run each program in their own filesystem snapshot
Chromium in flathub has been patched to support its own sandboxing inside of the Flatpak sandbox
Firefox only loses its user namespace, but Flatpak has already put it in its own user namespace
The only reduction in the browsers own sandboxing is if they’re creating separate user namespaces per remote process, but in about:support, Firefox still lists itself as having the max sandbox level even in the Flatpak
The nice thing about Flatpak is that you can restrict it even more - e.g. my browser is only allowed to touch files in ~/Downloads/firefox
I don’t use webcams/mics through Firefox, so it also has no access to those, etc
You can set fine grained permissions easily with a program called Flatseal to decide what your browser should be able to touch on your machine
Could it be that it just introduces additional attack vectors?
Perhaps. In my distro of choice (popOS) the flatpak is a bit ahead of the repo version. I feel that having the bug fixes and only being able to interact with keepass via the sandbox would limit the attacks. I am not an expert on security, so i would like to hear where my current ideas fail.
I run the flatpak versions of KeepassXC and Firefox. In order to enable auto-type, I disable Wayland for both apps via Flatseal (enabling fallback to X11). Works fine in KDE and GNOME, though GNOME now prompts to share the display once per session…something to do with how the portals work now.
X11 is not made with security in mind. At the point where you disable Wayland, you can basically use native apps rather than flatpaked apps.
Oh I’m well aware of X11’s shortcomings, and it’s a band-aid fix until Wayland and/or the DEs sort these capabilities out. If that day doesn’t come within the next year or so, I’ll consider other options then.
works fine as one would expect. Not that self explanatory, I wonder how
install Vivaldi as a flatpak and was not able to get it to talk with keepass.
No the native messaging portal is missing
What is mean by that line of reasoning?
Makes no sense. The Flatpak is official and more isolated than native packages. Reduce the number of system apps as much as possible.
See my thread on the methods but they are all hacky. You could copy the KeepassXC binary to the Browser flatpak container and launch it from there. But this needs to be repeated on every update, but it is possible and can be automated.