-
Notifications
You must be signed in to change notification settings - Fork 142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No default ACL on some dbus methods #273
Comments
Hi @tweksteen, thanks for the report! Since this ticket is public I'll reply in public. I tried to confirm this issue locally with USBGuard 1.0.0 and found that:
Unless I am missing something, this seems to indeed allow an unpriviliged local user to allow all future connected USB devices in the current boot provided that the I'd be happy to try a pull request on the polkit policy file, @radosroka @Cropi I'm rather new to D-Bus and polkit. Does the above make sense to you? How should we proceed? Best, Sebastian |
PS: Part of that is #531 now. I have a feeling that USBGuard needs may need additional call-outs to polkit, a bit like the C/C++ version of what article https://vwangsf.medium.com/creating-a-d-bus-service-with-dbus-python-and-polkit-authentication-4acc9bc5ed29 is describing for Python. Could it be that polkit integration into USBGuard was never finished and hence is incomplete as of today? Then (after PR #531) its no longer polkit ignoring files but USBGuard not calling polkit. What do you think? |
Turns out exactly that^^ is the case. I have added the missing calls to Polkit to |
@hartwork thank you for all the investigation and work you have done. I wasn't involved when dbus part was created so I didn't know. |
Some of the methods exposed via dbus are not covered by the current default policy. This includes the
getParameter
andsetParameter
methods.On a default debian install, as unprivileged user:
This can be fixed by adding these to the current policy configuration. However, having 2 buses and 2 ACLs makes the administration of any deployment tedious. There is always a risk of future methods to be exposed. Ideally, dbus should be the only bus exposed and the libqb bus dropped.
The text was updated successfully, but these errors were encountered: