LGTM1

On Thu, Oct 24, 2024, 11:39 AM Eric Lawrence <bay...@gmail.com> wrote:

> Okay, I've proposed a tweak.
>
> https://github.com/whatwg/fetch/pull/1781
>
> On Thursday, October 24, 2024 at 1:13:18 PM UTC-5 Jeffrey Yasskin wrote:
>
>> Yes, exactly.
>>
>> On Thu, Oct 24, 2024 at 8:46 AM Chris Thompson <cth...@chromium.org>
>> wrote:
>>
>>> I think this would be in Step 10 of Main Fetch (Step 5 is for
>>> Upgrade-Insecure-Requests):
>>>>
>>>> Set request’s current URL
>>>> <https://fetch.spec.whatwg.org/#concept-request-current-url>’s scheme
>>>> <https://url.spec.whatwg.org/#concept-url-scheme> to "https" if all of
>>>> the following conditions are true:
>>>>
>>>>    - request’s current URL
>>>>    <https://fetch.spec.whatwg.org/#concept-request-current-url>’s
>>>>    scheme <https://url.spec.whatwg.org/#concept-url-scheme> is "http"
>>>>    - request’s current URL
>>>>    <https://fetch.spec.whatwg.org/#concept-request-current-url>’s host
>>>>    <https://url.spec.whatwg.org/#concept-url-host> is a domain
>>>>    <https://url.spec.whatwg.org/#concept-domain>
>>>>    - Matching request’s current URL
>>>>    <https://fetch.spec.whatwg.org/#concept-request-current-url>’s host
>>>>    <https://url.spec.whatwg.org/#concept-url-host> per Known HSTS Host
>>>>    Domain Name Matching
>>>>    <https://www.rfc-editor.org/rfc/rfc6797.html#section-8.2> results
>>>>    in either a superdomain match with an asserted includeSubDomains 
>>>> directive
>>>>    or a congruent match (with or without an asserted includeSubDomains
>>>>     directive) [HSTS] <https://fetch.spec.whatwg.org/#biblio-hsts>; or
>>>>    DNS resolution for the request finds a matching HTTPS RR per section
>>>>    9.5
>>>>    
>>>> <https://datatracker.ietf.org/doc/html/draft-ietf-dnsop-svcb-https#section-9.5>
>>>>     of [SVCB] <https://fetch.spec.whatwg.org/#biblio-svcb>. [HSTS]
>>>>    <https://fetch.spec.whatwg.org/#biblio-hsts> [SVCB]
>>>>    <https://fetch.spec.whatwg.org/#biblio-svcb>
>>>>
>>>> So maybe just add a fourth condition "request's current URL's host is
>>> not localhost"?
>>>
>>>
>>> On Thu, Oct 24, 2024 at 8:42 AM Eric Lawrence <bay...@gmail.com> wrote:
>>>
>>>> > probably makes sense to start by suggesting a change to
>>>> https://fetch.spec.whatwg.org/#concept-main-fetch,
>>>> > but the editors there might ask you to write an update to the RFC.
>>>>
>>>> I don't think I understand what change to Fetch would be proposed. The
>>>> section you flagged has two relevant clauses related to HTTPS upgrades:
>>>>
>>>>   5. Upgrade request to a potentially trustworthy URL, if appropriate.
>>>>   6. Upgrade a mixed content request to a potentially trustworthy URL,
>>>> if appropriate.
>>>>
>>>> Notably, [*.]localhost is already a potentially trustworthy URL:
>>>> https://w3c.github.io/webappsec-secure-contexts/#is-origin-trustworthy,
>>>> clause #5.
>>>>
>>>> ...which implies to me that the behavior I propose is already what
>>>> Fetch asks for.
>>>> On Wednesday, October 23, 2024 at 7:12:28 PM UTC-5 Jeffrey Yasskin
>>>> wrote:
>>>>
>>>>> Can you propose a matching change to the relevant standard? It
>>>>> probably makes sense to start by suggesting a change to
>>>>> https://fetch.spec.whatwg.org/#concept-main-fetch, but the editors
>>>>> there might ask you to write an update to the RFC. We can figure out the
>>>>> cheapest way to get that done if they do ask. There's no need to block
>>>>> shipping this on getting the updates finished, but the launch process
>>>>> <https://www.chromium.org/blink/launching-features/#new-feature-prepare-to-ship:~:text=propose%20that%20the%20feature%20migrate%20to%20a%20working%20group>
>>>>>  does
>>>>> say to propose it first.
>>>>>
>>>>> Jeffrey
>>>>>
>>>>> On Wed, Oct 23, 2024 at 2:28 PM 'Eric Lawrence' via blink-dev <
>>>>> blin...@chromium.org> wrote:
>>>>>
>>>>>> *Following up on an earlier thread
>>>>>> here: 
>>>>>> https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/gGHOmFGEzQ0
>>>>>> <https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/gGHOmFGEzQ0>*
>>>>>>
>>>>>> Contact emails: eri...@microsoft.com
>>>>>>
>>>>>> Explainer: None
>>>>>>
>>>>>> Specification: HSTS specification is at
>>>>>> https://datatracker.ietf.org/doc/html/rfc6797; this feature proposes
>>>>>> an improvement.
>>>>>>
>>>>>> Summary
>>>>>>
>>>>>> Strict-Transport-Security response headers can cause problems for
>>>>>> localhost web servers because STS applies host-wide, across all ports. 
>>>>>> This
>>>>>> causes compatibility problems for web developers testing locally as well 
>>>>>> as
>>>>>> end-users who use software packages that commonly spin up localhost
>>>>>> webservers for ephemeral reasons (e.g. communication of an auth token 
>>>>>> from
>>>>>> a web login to a local software package). If one local listener sets
>>>>>> Strict-Transport-Security on a localhost response, it will be applied to
>>>>>> all subsequent localhost requests regardless of port. We resolve this
>>>>>> problem by ignoring Strict-Transport-Security headers on responses from
>>>>>> localhost URLs.
>>>>>>
>>>>>> Blink component: Internals>Network>DomainSecurityPolicy
>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Internals%3ENetwork%3EDomainSecurityPolicy>
>>>>>>
>>>>>> TAG review: None
>>>>>>
>>>>>> Risks
>>>>>>
>>>>>> Interoperability and Compatibility
>>>>>>
>>>>>> The expectation is that this will improve compatibility with services
>>>>>> that run on localhost by avoiding unexpected interactions across 
>>>>>> unrelated
>>>>>> packages.
>>>>>>
>>>>>> *Gecko*: Shipped/Shipping
>>>>>>
>>>>>> *WebKit*: No signal
>>>>>>
>>>>>> *Web developers*: Positive (
>>>>>> https://issues.chromium.org/issues?q=HSTS%20localhost) Web
>>>>>> Developers who test their sites locally commonly report problems with
>>>>>> Strict-Transport-Security headers applying unexpectedly across unrelated
>>>>>> localhost services under tests.
>>>>>>
>>>>>> *Other signals*:
>>>>>>
>>>>>> WebView application risks
>>>>>>
>>>>>> Does this intent deprecate or change behavior of existing APIs, such
>>>>>> that it has potentially high risk for Android WebView-based applications?
>>>>>>
>>>>>> None
>>>>>>
>>>>>>
>>>>>> Debuggability
>>>>>>
>>>>>> HSTS upgrades show in the F12 Network pane as "307 Internal
>>>>>> Redirect." In the absence of such an upgrade, the 307 is not shown.
>>>>>>
>>>>>> Will this feature be supported on all six Blink platforms (Windows,
>>>>>> Mac, Linux, ChromeOS, Android, and Android WebView)? Yes.
>>>>>>
>>>>>> Is this feature fully tested by web-platform-tests
>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>> ? No, HSTS is not tested by Web Platform tests. The change is tested
>>>>>> by Chrome unit and browser tests.
>>>>>>
>>>>>> Flag name on chrome://flags: None
>>>>>>
>>>>>> Finch feature name: None
>>>>>>
>>>>>> Non-finch justification: None
>>>>>>
>>>>>> Requires code in //chrome? All of the functional changes are in
>>>>>> /net/ but tests under /chrome/ require updates to use non 'localhost' 
>>>>>> test
>>>>>> endpoints.
>>>>>>
>>>>>> Tracking bug https://issues.chromium.org/issues/41251622; CL:
>>>>>> https://chromium-review.googlesource.com/c/chromium/src/+/5923046
>>>>>> <https://chromium-review.googlesource.com/c/chromium/src/+/5923046>
>>>>>>
>>>>>> Estimated milestones
>>>>>> Shipping on desktop
>>>>>> 132
>>>>>> Shipping on Android
>>>>>> 132
>>>>>>
>>>>>> Anticipated spec changes
>>>>>>
>>>>>> Open questions about a feature may be a source of future web compat
>>>>>> or interop issues. Please list open issues (e.g. links to known github
>>>>>> issues in the project for the feature specification) whose resolution may
>>>>>> introduce web compat/interop risk (e.g., changing to naming or structure 
>>>>>> of
>>>>>> the API in a non-backward-compatible way).
>>>>>> None
>>>>>>
>>>>>> Link to entry on the Chrome Platform Status:
>>>>>> https://chromestatus.com/feature/5134293196865536?gate=5113092281991168
>>>>>>
>>>>>> Links to previous Intent discussions:
>>>>>> https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/gGHOmFGEzQ0
>>>>>>
>>>>>>
>>>>>> --
>>>>>> 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 visit
>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/8d6c447c-32ba-46af-b04e-828e69b38322n%40chromium.org
>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/8d6c447c-32ba-46af-b04e-828e69b38322n%40chromium.org?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>> --
>>>> 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 visit
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/b81818f0-73ef-4703-af4c-8f8fcefd93d2n%40chromium.org
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/b81818f0-73ef-4703-af4c-8f8fcefd93d2n%40chromium.org?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> --
> 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+unsubscr...@chromium.org.
> To view this discussion visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/7c28576e-bee4-430e-8a8d-40c9f23fd6c8n%40chromium.org
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/7c28576e-bee4-430e-8a8d-40c9f23fd6c8n%40chromium.org?utm_medium=email&utm_source=footer>
> .
>

-- 
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+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAA44PQgt3fZopgSBpkv2GxFr9fpOkCbSES6V0tAVK-Un%3DV-YzA%40mail.gmail.com.

Reply via email to