Contact emails
carlosil@google,com, est...@google.com
Spec
https://w3c.github.io/webappsec-mixed-content/level2.html
(intro of spec is meant to act as the explainer, since the spec is pretty small)
TAG review at https://github.com/w3ctag/design-reviews/issues/420.
Summary
Mixed content -- http:// subresources on https:// pages -- threaten users’ security and privacy, and also lead to a poor/confusing security UX, because the page is presented as somewhere between secure and insecure.
Chrome blocks mixed scripts, iframes, and other “active” content by default, but allows mixed images, audio, and video to load. We are planning to gradually move towards blocking all mixed content by default. To minimize breakage, we plan to autoupgrade mixed content to https:// rather than block it outright.
Since mixed audio and video are much less common than images, we would like to start by shipping autoupgrading for audio and video in M79.
Link to “Intent to Implement” blink-dev discussion
https://groups.google.com/a/chromium.org/d/msg/blink-dev/ZJxkCJq5zo4/4sSMVZzBAwAJ
Is this feature supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes
Debuggability
Upgraded mixed requests are shown in the DevTools network panel. We currently have a console message alerting developers when a request is upgraded due to the autoupgrading experiment (currently enabled at 50% of beta), and we’ll adapt the console message wording when we ship for real. Developers can also use CSP reporting to discover mixed content that they need to fix on their site.
Risks
Interoperability and Compatibility
We have two data sources to estimate breakage. One is the prevalence of mixed audio and video, and the other is the results of our autoupgrading experiment on beta.
Mixed audio occurs on 0.029% of page loads, so that is an upper-bound on breakage from shipping autoupgrading for audio. On beta, ~7.5% of mixed audio successfully upgrades to https://. We propose to ship first as a 1% experiment on stable (M79) to check that breakage numbers are in line with beta rather than shipping to 100% immediately.
Mixed video occurs on 0.080% of page loads. This is more significant, but on beta, mixed video autoupgrades much more successfully: ~75% of mixed video successfully upgrades to https://.
These numbers point to a non-trivial amount of breakage -- somewhere around 0.05% of page loads in total. However, we still think this change should be shipped for several reasons:
Mixed content presents a security/privacy risk to users. In addition to the immediate privacy gain from blocking cleartext traffic, blocking mixed content is a critical step in providing a robust defense against HSTS fingerprinting.
Users will be able to opt out when a webpage is broken, by toggling a setting.
We plan to precede the change with targeted outreach to affected sites (Search Console notifications, direct outreach to partners) as well as broad outreach (blog posts, press, etc.). We’ve found that such outreach is most effective when coupled with a firm timeline, which is why we’d like to have this I2S approved before we begin outreach in earnest.
Edge: "Eh" (neither positive nor negative)
Firefox: Somewhat public support
Safari: Public support
Web / Framework developers: We haven’t heard much. One bug filed in ~6 months that the experiment has been enabled on pre-stable channels.
Ergonomics
n/a
Activation
n/a
Is this feature fully tested by web-platform-tests? Link to test suite results from wpt.fyi.
Blink layout tests to be upstreamed shortly.
Entry on the feature dashboard
To confirm, the plan is to ship this upgrade without the automatic "Fallback to HTTP" mode mentioned in the I2I, is that correct? We'll instead get the shield icon in the omnibox and an affected user can manually unblock?
Will the elements themselves (e.g. the <video> canvas and/or the <audio> controls, if present) have any indication of what's gone wrong when HTTP content has been blocked?
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/7cae50a3-78b9-4d50-a539-b1da620909d8%40chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKXHy%3DcONokkr24st2GCvqzm8oqXN7EFF0p-Q%3DhEiw9xs71yKg%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/op.z70alql8rbppqq%40cicero2.linkoping.osa.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/8c16cb0e-9032-4996-baf6-d633c3078f97%40chromium.org.