On Wed, Aug 18, 2021 at 8:47 PM 'Matt Menke' via blink-dev <
[email protected]> wrote:

> Contact [email protected]
>
> ExplainerNone
>
> Specificationhttps://url.spec.whatwg.org/
>
> Summary
>
> Most hostnames that aren't valid IPv4 addresses, but end in numbers are
> treated as valid, and looked up via DNS (e.g., http://foo.127.1/). Per
> the Public Suffix List spec, the eTLD+1 of the hostname in that URL should
> be "127.1". If that is ever fed back into a URLs, "http://127.1/
> <http://127.0.0.1/>" is mapped to "http://127.0.0.1/"; by the URL spec,
> which seems potentially dangerous. "127.0.0.0.1" could also potentially be
> used to confuse users. We want to reject URLs with these hostnames.
>
>
> Blink componentInternals>Network>DNS
> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Internals%3ENetwork%3EDNS>
>
> Motivation
>
> Most hostnames that aren't valid IPv4 addresses, but end in numbers are
> treated as valid hostnames, and looked up via DNS. Example hostnames:
> 127.0.0.0.1, foo.0.1, 10.0.0.09, 08.1.2.3. These can be problematic for the
> following reason: * "http://foo.127.1/"; has an eTLD+1 of "127.1", per the
> public suffix list spec. If that's ever used as the hostname in a new URL,
> however, as in "http://127.1 <http://127.0.0.1/>", it will then get
> mapped to "http://127.0.0.1/";, per the URL spec, which is a different
> host, which is not safe. * "http://127.0.0.0.1"; and "http://1.2.3.09";,
> both of which are looked up via DNS rather than failing or being treated as
> IPv4 hostnames, also seem potentially confusing. While no exploit is
> currently known here, we want to remove support for these as a preventative
> security measure. The URL spec has been updated so that any URL with a
> hostname ending in a number that's not an IPv4 address (including, e.g.,
> http://foo.1./, but not http://foo.1../) is considered invalid. Since
> this is part of the URL spec, not the DNS spec, we want to reject these
> URLs are the GURL layer, for URLs with appropriate protocols (http, https,
> ws, wss, file). For consistency, we should also fail DNS lookup attempts of
> these sorts of hostnames.
>
>
> Initial public proposalhttps://github.com/whatwg/url/pull/619
>
> TAG reviewNot required for an Intent to Deprecate, I believe.
>
> TAG review statusNot applicable
>
> Risks
>
>
> Interoperability and Compatibility
>
> Any URL with an affected hostname will fail to load, and will need to be
> migrated to another hostname. URLs of this form do appear to be in use,
> though it's not clear under what circumstances. No entry in the public
> suffix list is affected. Affected URLs make up no more than 0.0003% of
> hostnames looked up via the host resolver on any platform, and are
> basically not used in any file URLs, according to our metrics.
>

Do we have reason to believe these hostnames are not legitimate ones?


> On OSX and Android, about 90% of host resolver lookups for these hostnames
> succeed, 60% do on Linux, and 2% on Windows and ChromeOS.
>

Do you know where those failures are coming from?


> To allow for emergency disabling in case of wider than expected breakage,
> I intend to add a feature for it, and do a 50% field trial on pre-release
> channels, though plan to just enable the feature, rather than do a gradual
> rollout to stable, given the low usage.
>
>
> Gecko: Positive (
> https://github.com/whatwg/url/pull/619#issuecomment-890826499
> <https://www.chromestatus.com/admin/features/launch/5679790780579840/1?intent=1>
> )
>

Can you file an official position request? https://bit.ly/blink-signals


>
> WebKit: In development (https://bugs.webkit.org/show_bug.cgi?id=228826)
>
> Web developers: No signals
>
> Activation
>
> This breaks anything using one of these domains, and requires migrating to
> other hostnames.
>
>
> Security
>
> None
>
>
> Debuggability
>
> These will act like any other invalid URL. Behavior is context dependent.
> Since this is logic deep within GURL, and GURLs are created in a great many
> places, console warnings specifically for this seem not practical.
>
>
> Is this feature fully tested by web-platform-tests
> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>
> ?No.  Javascript URL construction is tested, but URLs are used in a great
> many other places, which don't have test coverage, since DNS lookups for
> these domains must succeed in the first place for the tests to be
> meaningful.
>
> Flag name
>
> Requires code in //chrome?False
>
> Tracking bughttps://crbug.com/1237032
>
> Estimated milestones
> DevTrial on desktop 95
> DevTrial on Webview 95
>
> Link to entry on the Chrome Platform Status
> https://www.chromestatus.com/feature/5679790780579840
>
> This intent message was generated by Chrome Platform Status
> <https://www.chromestatus.com/>.
>
> --
> 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 [email protected].
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEK7mvq%2Bfnau%3DE%2BONhe0kr9HOpN84eCpoub84%3DswKzPkrGzi5A%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEK7mvq%2Bfnau%3DE%2BONhe0kr9HOpN84eCpoub84%3DswKzPkrGzi5A%40mail.gmail.com?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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWSBPXrO6M2P4vY0agDsoM95Nebp4OT7G3Ft30qucjKuw%40mail.gmail.com.

Reply via email to