Live data from Hacker News

iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

twitter.com

241–250 of 613 posts

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#241
post #29

It looks like there could be a reasonable explanation for this. There are apps that have different behavior whether or not there is text in the clipboard (e.g. enabling a "paste" button), and they're only checking that the text exists, not what it is. There's a new API that will let devs do that without triggering the user notification. If TikTok is actually constantly loading the clipboard, that's obviously terrible…

> There are apps that have different behavior whether or not there is text in the clipboard (e.g. enabling a "paste" button) People keep saying this but I've never seen one of these app-specific paste widgets. And even if I did, I wouldn't miss it in the slightest for the sake of not allowing every app to be reading my clipboard at all times . It's inexcusable to me that there isn't a permissions prompt for this. Two…

> People keep saying this but I've never seen one of these app-specific paste widgets.

Here’s one:

https://twitter.com/twolivesleft/status/1275776460918157315

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#242

Earlier quoted context omitted.

As opposed to apple which isn't because... apple says so.

No, because Apple makes money on subscriptions and retail purchases not on aggregating and reselling the data for advertisers.

Apple took a 9 Billion dollar payment from Google in 2018 for Google to be the default search engine [0].

[0]: https://dazeinfo.com/2018/10/01/apple-google-fee-iphone-sear...

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#243
post #198

Earlier quoted context omitted.

"The OS snitching on us and then annoying the user" is an interesting definition of "offensive", but definitely not the one I meant. Let me put it another way: if you put the appropriate amount of effort into asking "what's the robust, minimally invasive, least-likely to be misinterpreted and/or abused, way for me to accomplish this?" you are likely to create a better product and less likely to have something like th…

Well yes, you've just invented an outrageous scenario then talked about how outrageous it is. You asked: "Is it that much to ask that you find the least offensive way to serve your user?" So, suppose UPS is not doing anything that you've just described. Say they are regexing for UPS numbers only. How would that be considered offensive?

Monitoring the copy buffer, from the background, is an overreach, and doing that and then pretending like it's the reasonable thing to do is what I describe as offensive. The point I was trying to make was that even doing less than that, but not designing with an intent to be minimally invasive from the start, sets you up to head into the "outrageous scenario" that yeah, I'll grant you I completely made up. But FWIW it is also completely in line with how I've seen people operate.

Suppose you want to offer this capability but only check the copy buffer when the user has signalled an intent to provide you with input. How is that not the least galling design decision? I'm having trouble figuring out how to express that it also serves as a personal (and team-internal) signal that "we are here to serve the user, and not to take advantage of them, even if that's inconvenient for us". Maybe that doesn't matter, or maybe lacking that is what leads to things like the Uber "Ride of Glory" blog post and worse?

Something I meant to imply in my first comment, but not the reply to you, is that furthermore limiting your exposure to user data limits the likelihood that a series of bugs puts it into your logs and then leaked out to the world. No, it's not done on purpose, but no amount of good intentions fixes it. Defaulting to being less invasive also reduces your likely level of impact.

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#244
post #210

Earlier quoted context omitted.

> Either iOS is secure or it's not This is flat out wrong. Security isn't binary.

It's not wrong. Browsers don't have a walled garden. They just try to be secure period. Apple's fictions is their walled garden saves you from bad apps. It doesn't. There have been and will be plenty of bad apps. A secure platform saves you from bad apps, period.

You're both right. The walled garden has nothing to do with security, AND security isn't binary.

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#245

I know there are a few apps which will check the clipboard in order to provide functionality to the user. For example, some shipping apps will check the clipboard to see if the user has a copied tracking code and if so, ask the user if they want to track their copied code. Not sure if TikTok does something similar, but there are certainly innocent reasons for checking the clipboard.

Google Maps does this, and it saves a couple taps. If you have an address on your clipboard and then tap on the address input it will be the first suggested result.

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#246

Earlier quoted context omitted.

I'm disappointed that so many people think "hey they could just be doing this for innocuous reasons" instead of "oh maybe nobody should be doing this even if it's the absolutely most straightforward way to do it." Even if you're only looking for a shipping tracking number and then only so that you can provide useful auto-populate, will you lose out by only checking the clipboard when the user hits your text input fie…

>will you lose out by only checking the clipboard when the user hits your text input field? Is it that much to ask that you find the least offensive way to serve your user? In your toy example of my app's main screen being a text box where the user can insert a tracking code, yes, I do lose by making the user wonder every time "you know I have a tracking code why are you making me type it in?" In a more realistic exa…

Clearly there needs to be a way for the parcel tracking app to tell the OS, “I am looking for plain text strings that match this pattern.”

Which iOS and macOS already have, they are called data detectors. When the message arrives notifying you of the tracking number, you can select “track this parcel” from the context menu. No need for an app to snoop on the clipboard.

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#247

Earlier quoted context omitted.

Fine-grained permissions aren’t useful if an application is going to request access to everything anyway - and non-technical or non-privacy-conscious users will click-through any and all permission prompts so [they can see the dancing bunnies]( https://blog.codinghorror.com/the-dancing-bunnies-problem/ ). In the case of very popular, aggressively-marketed, apps like TikTok and Facebook’s: the lack of easy side-loadin…

At least in Android (not familiar with iOS) you can deny apps access to any and all permissions, the features just won't work. I.e. if you deny Snapchat access to the camera you can still browse the app, read messages etc - you just won't be able to take any photos.

You can deny permissions to any runtime permissions beginning with apps built for Marshmallow. You cannot deny other permissions. Some apps will absolutely block you from using them unless the permissions are on (this is by design of the app, not an OS limitation).

Internet is a permission that is required if your app expects to go online. You cannot turn this permission off in the OS. If you modify Android to allow changing this permission (usually via Xposed) or rebuild the app to remove it from the manifest, many apps will actually crash when they try to go online; this is part of the reason why people use a firewall even on devices with Xposed installed. My vague understanding is that this is how Android works when an app tried to do something it can't--it closes the app. IIRC there is an Xposed module that filters by the URL, but I'm guessing it fakes the network response (more complex than simply disabling permission), and it doesn't work with ndk.

With Marshmallow, runtime permissions were introduced for a number of existing permissions, where it would prompt you the first time the app tried to access privileged data. If your app is older than Marshmallow (ie, written for lollipop or KitKat), disabling any of the enabled permissions is liable to crash the app as soon as it tries to use them.

For the full list of permissions on Android, see https://gist.github.com/Arinerron/1bcaadc7b1cbeae77de0263f4e... (there's a few links in the comments to Android source code; they cause my phone browser to crash, though)

Feel free to correct me if I'm wrong, or if this information is outdated; much of it was specific to Android 6 release.

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#248

Earlier quoted context omitted.

I'm disappointed that so many people think "hey they could just be doing this for innocuous reasons" instead of "oh maybe nobody should be doing this even if it's the absolutely most straightforward way to do it." Even if you're only looking for a shipping tracking number and then only so that you can provide useful auto-populate, will you lose out by only checking the clipboard when the user hits your text input fie…

>will you lose out by only checking the clipboard when the user hits your text input field? Is it that much to ask that you find the least offensive way to serve your user? In your toy example of my app's main screen being a text box where the user can insert a tracking code, yes, I do lose by making the user wonder every time "you know I have a tracking code why are you making me type it in?" In a more realistic exa…

I'm not an iOS developer, but I think "Sharing and Actions" [0] is the right thing? In Android, 5 years or whatever ago it was by binding to an "Intent" IIRC.

If I copy a link on Android, I can go to Chrome, click on the address bar, and it suggests "link you copied: $whatever". This is how this should work. If there's an image in my copy buffer, it doesn't need to do anything. I don't need Chrome monitoring my copy buffer when I'm doing other things in case I copy something that looks link-like.

[0] https://developer.apple.com/design/human-interface-guideline...

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#249

I use Bitwarden on my iPhone and sometimes copy passwords to the clipboard for some reason. Does this mean any app could have snooped on it without me knowing before?

Yes, that's probably part of the reason why 1Password clears the clipboard after a minute or so

That’s crazy. IOS prompts before giving apps your location, clipboard data is many times more sensitive

Re: iOS14 reveals that TikTok may snoop clipboard contents every few keystrokes

#250

Earlier quoted context omitted.

> Not sure if TikTok does something similar, but there are certainly innocent reasons for checking the clipboard. If I find someone digging through my mailbox, I don't start rationalizing their reasons for it - I ask them to explain themselves, and that explanation had better fucking be a good one.

For sure. I am not in a position to determine whether TikTok is looking at clipboard contents for good or evil. I simply wanted to point out that there exist innocent reasons for looking at the clipboard.

The argument is that there is no innocent reason to be looking at the clipboard. Either the user is going to paste the thing in your app ormit’s not yours to fiddle with in the first place.

I copy passwords from a password vault. I don’t want your app knowing that I just opened Hacker News five seconds ago and have this password-looking text in the clipboard.

Post reply on HN