Live data from Hacker News

Instagram can track anything you do on any website in their in-app browser

krausefx.com

421–430 of 469 posts

Re: Instagram can track anything you do on any website in their in-app browser

#421

I hope Apple doesn't disable JS injection in WKWebViews in response to this. JS injection is the (only?) way to call native Swift methods from JS ie. bridging. I am not sure what the solution here is. Maybe only allow injection to sites you control (via apple association file).

Check app bound domains.

Re: Instagram can track anything you do on any website in their in-app browser

#422

I was super confused by this since to the best of my knowledge SFSafariViewController blocks anything like this, you, as a developer, cannot inject anything or peak into the view it creates. Then I got to the bottom and realized I was correct, but FB/Meta/IG/etc aren't using SFSafariViewController and instead using the older ways to embed a web view. Honestly I thought all other methods had been deprecated and had no…

I wouldn't say WKWebView is 'the old way', it isn't marked as deprecated and just because there's a new class that's easier to use doesn't mean they replace older classes that let you do more stuff. As you've found out, you've run into problems, but I have no idea why you would think not to use WKWebView if you can't do what you need.

That said, in general, never, ever use in app browsers for surfing the web. We use them for specific pages on our website that should interact back to the app, otherwise we tell the system to open the URL in the user's browser

Re: Instagram can track anything you do on any website in their in-app browser

#423

As a provider is it possible to defend against this with a Content Security Policy or does this mechanism override the site’s CSP?

Not only would CSP block it, but this type of behavior only strengthens Apple's decision to not allow third party rendering engines. Could you imagine the privacy nightmare that would ensue if Facebook could release a browser that bypassed any and all safeguards implemented by site operators?

If it were only Apple's restrictions preventing this, why wouldn't Facebook release such a browser on Android?

Re: Instagram can track anything you do on any website in their in-app browser

#424

Only Instagram? Every app maker who makes an in app browser can see what you do, that’s the point of embedding it. And why not? You arrive there because of a link in the container app you clicked on. They want to see what you do with the link they gave you. Otherwise only Google/Apple can see what you do with it. Someone can see what you do with the link no matter what.

The problem is that users cannot tell if they are being spied upon or not as long as they use in-app browsers. Avoid them! Go web apps instead of native apps for better privacy in general.

Regardless, i don't consider it to be acceptable behaviour by Instagram to inject their tracking into all web pages i access through their app just because they can.

Re: Instagram can track anything you do on any website in their in-app browser

#425

I was super confused by this since to the best of my knowledge SFSafariViewController blocks anything like this, you, as a developer, cannot inject anything or peak into the view it creates. Then I got to the bottom and realized I was correct, but FB/Meta/IG/etc aren't using SFSafariViewController and instead using the older ways to embed a web view. Honestly I thought all other methods had been deprecated and had no…

How come that my apps get rejected if i don't use SafariViewController but they can publish them?

Re: Instagram can track anything you do on any website in their in-app browser

#426
post #425

I was super confused by this since to the best of my knowledge SFSafariViewController blocks anything like this, you, as a developer, cannot inject anything or peak into the view it creates. Then I got to the bottom and realized I was correct, but FB/Meta/IG/etc aren't using SFSafariViewController and instead using the older ways to embed a web view. Honestly I thought all other methods had been deprecated and had no…

How come that my apps get rejected if i don't use SafariViewController but they can publish them?

Exactly my thoughts too.

How is that possible that Google Play and Apple store allow apps like this to get published?

Re: Instagram can track anything you do on any website in their in-app browser

#427

I was super confused by this since to the best of my knowledge SFSafariViewController blocks anything like this, you, as a developer, cannot inject anything or peak into the view it creates. Then I got to the bottom and realized I was correct, but FB/Meta/IG/etc aren't using SFSafariViewController and instead using the older ways to embed a web view. Honestly I thought all other methods had been deprecated and had no…

At our company we use Cordova for all our apps, which means we have to use WKWebView in order to render our application. As does ever Cordova app.

Re: Instagram can track anything you do on any website in their in-app browser

#428

I hope Apple doesn't disable JS injection in WKWebViews in response to this. JS injection is the (only?) way to call native Swift methods from JS ie. bridging. I am not sure what the solution here is. Maybe only allow injection to sites you control (via apple association file).

Same here. So many apps legitimately depend on these features, which makes me worried about an overreaction from Apple here.

A domain verification would be a huge hassle for me, since I provide an app builder that allows my non-technical customers to build an app (which includes a webview). Asking them to do domain verification would be tricky.

Re: Instagram can track anything you do on any website in their in-app browser

#429
post #425

I was super confused by this since to the best of my knowledge SFSafariViewController blocks anything like this, you, as a developer, cannot inject anything or peak into the view it creates. Then I got to the bottom and realized I was correct, but FB/Meta/IG/etc aren't using SFSafariViewController and instead using the older ways to embed a web view. Honestly I thought all other methods had been deprecated and had no…

How come that my apps get rejected if i don't use SafariViewController but they can publish them?

What are you trying to use? There's no restriction on using WKWebView. If you try to bypass Webkit, you'll get rejected for sure, but you are not forced to use SFSafariViewController

Re: Instagram can track anything you do on any website in their in-app browser

#430
post #357

Earlier quoted context omitted.

What do you think is more likely? That your child will stumble upon, correctly identify and successfully exploit an in-app webview, or that they will simply type "4chan" into Google on a school/library/friend's computer/phone? Unless they are under constant supervision, they will find a way to access what you're hiding from them. And if they are, well then you don't need technical blocks in the first place, do you?

If I can slow my kids down by a year or three, it's well worth it.

Does it take a year or three to walk to the school library? If they're young enough that that isn't the easier option, then there's no way they're capable enough to execute a relatively complex technical exploit.

I'm not telling not to worry about your kids' safety. I'm telling you not to worry about them dying from a lightning strike because they walk to school next to a 6-lane road full of drunk drivers every day. If they're going to get hurt, it won't be through the most complicated and least-likely way possible.

Post reply on HN