-
-
Notifications
You must be signed in to change notification settings - Fork 59
Enable X11 event buffering in Whonix by default #9771
Copy link
Copy link
Closed
Copy link
Labels
C: WhonixThis issue pertains to Whonix templates or standalones.This issue pertains to Whonix templates or standalones.P: defaultPriority: default. Default priority for new issues, to be replaced given sufficient information.Priority: default. Default priority for new issues, to be replaced given sufficient information.community templateThis issue pertains to a community-maintained template.This issue pertains to a community-maintained template.pr submittedA pull request has been submitted for this issue.A pull request has been submitted for this issue.privacyThis issue pertains to privacy in Qubes OS or something controlled by the Qubes OS Project.This issue pertains to privacy in Qubes OS or something controlled by the Qubes OS Project.
Metadata
Metadata
Assignees
Labels
C: WhonixThis issue pertains to Whonix templates or standalones.This issue pertains to Whonix templates or standalones.P: defaultPriority: default. Default priority for new issues, to be replaced given sufficient information.Priority: default. Default priority for new issues, to be replaced given sufficient information.community templateThis issue pertains to a community-maintained template.This issue pertains to a community-maintained template.pr submittedA pull request has been submitted for this issue.A pull request has been submitted for this issue.privacyThis issue pertains to privacy in Qubes OS or something controlled by the Qubes OS Project.This issue pertains to privacy in Qubes OS or something controlled by the Qubes OS Project.
Type
Fields
Give feedbackNo fields configured for Feature.
The problem you're addressing (if any)
Now that QubesOS/qubes-gui-daemon#149 is merged, any VM in Qubes OS that supports a GUI daemon can have Kloak-like features (keyboard and mouse event delay) enabled on them. While most VMs probably would probably have their usability degraded if this feature was enabled on them by default, Whonix benefits greatly from having this feature because it directly helps it to accomplish its goal of providing additional anonymity to users.
Right now a user has to explicitly set the
gui-ebuf-max-delayfeature to a non-zero value on a VM in order to enable event buffering. This is not something the average user should have to do, Whonix-Workstation should have this enabled by default. (Whonix-Gateway should potentially leave this disabled since the user won't be interacting with websites in Whonix-Gateway if used as designed.)The solution you'd like
gui-ebuf-max-delay. Requests should only be honored if they fall between reasonable thresholds so that malware can't disable the delay entirely or set it to be so high as to render the VM unusable.This strategy will allow Whonix to adjust the delay in the future if it is desirable to do so.
Alternatively, since the
gui-ebuf-max-delayrelies entirely on dom0 and doesn't require any domU-side code at all,we could just modify https://github.com/QubesOS/qubes-core-admin-addon-whonix/blob/main/qubeswhonix/__init__.py to set the feature all by itself one time, and that's it. This does mean that setting the delay is a "one shot" operation and if it turns out to be bad, another change to qubes-core-admin-addon-whonix will be needed. This would have the advantage of not allowing malware to even try to adjust the delay however.
The value to a user and who that user might be
Applications (especially websites) should have a harder time tracking the user via keyboard biometrics. (Mouse movements may also be obfuscated enough to make fingerprinting difficult through that method, though I'm not sure any concrete tests have been done on the mouse beyond "now it's laggy".)
Completion criteria checklist
No response