Closed Bug 1548773 Opened 6 years ago Closed 6 years ago

Remove support for typemustmatch

Categories

(Core :: DOM: Core & HTML, defect, P3)

defect

Tracking

()

RESOLVED FIXED
mozilla68
Tracking Status
firefox68 --- fixed

People

(Reporter: annevk, Assigned: freddy)

References

Details

(5 keywords, Whiteboard: [reporter-external][found by terjanq][wptsync upstream error][adv-main68-])

Attachments

(1 file)

Keywords: site-compat
Status: NEW → ASSIGNED
Keywords: checkin-needed

Pushed by btara@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a08af741bd23
Remove support for typemustmatch r=bzbarsky

Keywords: checkin-needed
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68

terjanq (CCd to the bug) wrote the PoC at https://xsleaks.github.io/xsleaks/examples/content-type/ and shared his research at the xsleaks wiki https://github.com/xsleaks/xsleaks/wiki/Browser-Side-Channels#object-typemustmatch.
He should be credited for identifying this problem.

Flags: sec-bounty?
Whiteboard: [reporter-external][found by terjanq]

Can't the attacker just directly ping the URL to find out its content-type most of the time? This only leaks a bit of info if it's a server or page that can't be reached by a non-authenticated user.

Flags: sec-bounty? → sec-bounty-
Whiteboard: [reporter-external][found by terjanq] → [reporter-external][found by terjanq][wptsync upstream error]

Hi, thanks for adding me to the issue. I haven't expected this to be an actual bug because the behavior follows the feature specification.

(In reply to Daniel Veditz [:dveditz] from comment #6)

Can't the attacker just directly ping the URL to find out its content-type most of the time? This only leaks a bit of info if it's a server or page that can't be reached by a non-authenticated user.

I am not sure how would that exactly work but I suspect that you are talking about requesting resources by using tags like <script> or <image> and watching for them to throw load/error events. I don't think it's as much similar behavior because there, you can only gain a limited portion of information and some of the content-types will return the same results, which in most scenarios would leak the information the attacker looks for. In my method, as long as the server responds with 200 OK, you can confirm the content-type with 100% accuracy.

As for the impact, there is a lot of webpages that when the user doesn't have access to request a specific resource the request is being redirected to a 404 Not Found webpage which in reality is 200 OK response. Then using the technique it's trivial to detect that the response has text/html content-type even when the website is not frameable.
This also could be applied to the search endpoints that depending on the search query responds with a different response. For example, the website that will trigger the content-disposition when there is a result and display the error otherwise.

Whiteboard: [reporter-external][found by terjanq][wptsync upstream error] → [reporter-external][found by terjanq][wptsync upstream error][adv-main68-]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: