Macpass: Universal clipboard may open for unexpectedly "lowering" security

Created on 23 Sep 2017  路  3Comments  路  Source: MacPass/MacPass

Alright, just today realised that MacPass works wonderfully with Universal Clipboard, in other words clipboard sharing between iOS and macOS devices, which was enabled in iOS 10 and Sierra.

Using this I managed to copy a password from MacPass on the computer and paste it within a login dialog on the iPhone, which meant I did not have to either open MiniKeePass or hand type the password.

What I did notice however which may be a good thing to flag is that the contents of the Universal Clipboard kind of lives a life of its own, which means that once you've actually used it on the iOS device after copying it on the Mac it will not be cleared from the clipboard on the iOS device until you either cut/copy something there, or paste something new using the Universal Clipboard.

I'm not calling this a severe issue, but the whole Universal Clipboard functionality is not all that clearly documented (with regards to lifetime of clipboard objects etc.) from Apple either, so seeing as MacPass is handling quite sensitive information it could be good to give a heads up for users that may unknowingly have the feature enabled.

As far as APIs for controlling the feature, it seems to be pretty much hidden away and automated in the system functions so it will automatically work with most available applications on macOS. Universal Clipboard itself is not possible to enable or disable, as it follows along with the Handoff feature.

As per my understanding however, it seems that it is only the general NSPasteboard (https://developer.apple.com/documentation/appkit/nspasteboard) that actually takes part in the Universal Clipboard, so in case an application would create a separate NSPasteboard and use that instead of the general NSPasteboard to transport items to the pasteboard server, items would be kept out of the Universal Clipboard. If it actually is this simple in practice it could maybe be possible to add a toggle option for "Disable support for iOS/macOS Universal Clipboard", so users have an option in case they do find it an issue for them.

Most helpful comment

I have added a checkbox in the general preferences to enable support for universal clipboard. The default behaviour is to disable it to minimise password spillage

All 3 comments

My understanding is that using - [NSPasteboard prepareForNewContentsWithOptions:]with NSPasteboardContentsCurrentHostOnly as an option prevents the content from being transferred between devices. I set this for the current master and it will be released with 0.7.4.

If universal clipboard is a requested feature, I can add a preferences setting for this.

I think that is great to have as a default setting!

In line with the use case I outlined above, not having to enter credentials in MiniKeePass when close by my home computer, I really would love a checkbox to configure the setting.

The main thing I guess is that the user is aware of the behavior.

I have added a checkbox in the general preferences to enable support for universal clipboard. The default behaviour is to disable it to minimise password spillage

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Lapin picture Lapin  路  5Comments

markushausammann picture markushausammann  路  3Comments

ghost picture ghost  路  6Comments

kevinpapst picture kevinpapst  路  3Comments

hugoholzwurm picture hugoholzwurm  路  5Comments