News for hackers. Stuff that matters.
Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by nimbius on Thursday May 13, 2021 @04:33PM (#27147050)
>By opening a popup window with a custom URL scheme and checking if its document is available from JavaScript code, you can detect if the application is installed on the device.

in FF, unless im mistaken this assumes the user clicks anything except cancel on the popup. bug for reference and comment. https://bugzilla.mozilla.org/show_bug.cgi?id=1711084

further from the github:

> the basic concept is the same. It works by asking the browser to show a confirmation dialog in a popup window. Then the JavaScript code can detect if a popup has just been opened and detect the presence of an application based on that.

so...we seem to be relying on the honor system with the user? Can anyone clarify?

Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by kdarutkin on Thursday May 13, 2021 @04:45PM (#27147214)
Hi, nimbius.

I’m the article author, can you please clarify your question?

The demo will not work without a popup window in Chrome, Firefox and Safari. The “Get My Identifier” button is needed in order to have a single user gesture to open an additional window.

However the Tor Browser demo works silently without any additional window.

Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by busymom0 on Thursday May 13, 2021 @07:33PM (#27148820)
On Firefox, I didn't get any popup window. I did get it on Brave browser (Chromium based).
Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by chmod775 on Thursday May 13, 2021 @06:01PM (#27148025)
> in FF, unless im mistaken this assumes the user clicks anything except cancel on the popup. bug for reference and comment.

I'm on Firefox and didn't have to click anything. It correctly detected I have Steam installed.

The flashing popup window was quite obvious though.

Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by tacticalmook on Thursday May 13, 2021 @05:31PM (#27147727)
> It works by asking the browser to show a confirmation dialog in a popup window. Then the JavaScript code can detect if a popup has just been opened and detect the presence of an application based on that.

> ...

> Tor Browser has confirmation dialogs disabled entirely as a privacy feature, which, ironically, exposed a more damaging vulnerability for this particular exploit. Nothing is shown while the exploit runs in the background, contrasting with other browsers that show pop-ups during the process.

Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by dathinab on Thursday May 13, 2021 @04:43PM (#27147193)
Basically browsers have the "I open a popup to ask" or "the user has no schema handler for that schema so I don't need to ask" or the "User already confirmed it always should open the link with given application" behaviour and they can detect it "somehow "?

But I still have to look closer into it.

Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by valve1 on Thursday May 13, 2021 @04:57PM (#27147363)
Browsers open pop-ups to ask "Can I run that application?" but only if that application is installed. If that application is not installed, the browser will ignore the custom URL.
Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by jszymborski on Thursday May 13, 2021 @07:14PM (#27148672)
It looks like a mitigation might be that in the event you do not have the application installed, to return a "denied" status and send a prompt to the user like "Unknown application protocol".

Something like that could still would be susceptible to a timing attack though.

Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by Haemm0r on Friday May 14, 2021 @08:17AM (#27153406)
always show the popup, but populate it "later" could work too.
Re:Vulnerability allows cross-browser tracking in Chrome, Fi... by dathinab on Friday May 14, 2021 @08:25PM (#27161108)
Yes I believe the proper fix would be to always behave as if a popup is showing, independent of weather or not it actually shows.

Through it's maybe slightly more complex as you might need to behave as if the user clicked cancel in a way where a attacker can not easily differentiate it from an actual user clicking cancel.