New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 862188 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Jul 27
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 748549



Sign in to add a comment

Network Error Logging: Handle errors in different phases differently

Project Member Reported by dcreager@chromium.org, Jul 10

Issue description

cf https://github.com/w3c/network-error-logging/issues/74 and https://github.com/w3c/network-error-logging/pull/83

The NEL spec now only allows include_subdomains policies to be used to generate reports about DNS errors, and not about errors in later stages of processing a request.  It also requires the server IP of the request and the IP address that the policy was received on to match — if they don't, the report is "downgraded" to only include information about DNS resolution.  (This prevents DNS rebinding attacks, where an attacker delivers a NEL policy for an origin they control, and then switches DNS to resolve that origin to a server they don't control.  With this IP address check, that would allow the attacker to use NEL to probe for information about that server.)
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jul 15

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c7e9486150060ec0d29d5b4a5fd7a31dd77e84a4

commit c7e9486150060ec0d29d5b4a5fd7a31dd77e84a4
Author: Douglas Creager <dcreager@chromium.org>
Date: Sun Jul 15 10:34:06 2018

Network Error Logging: Only report DNS errors for include_subdomains policies

Per https://github.com/w3c/network-error-logging/issues/74, NEL policies
that have include_subdomains set can only be used to report errors
during DNS resolution.  They cannot be used to report on successes, or
on errors in other phases, since once we contact a server, that server
has to explicitly consent to NEL reporting by delivering its own policy.

Bug:  862188 
Change-Id: If051f6787344b9385af3e46384370636a6bafc5d
Reviewed-on: https://chromium-review.googlesource.com/1135599
Commit-Queue: Douglas Creager <dcreager@chromium.org>
Reviewed-by: Misha Efimov <mef@chromium.org>
Cr-Commit-Position: refs/heads/master@{#575180}
[modify] https://crrev.com/c7e9486150060ec0d29d5b4a5fd7a31dd77e84a4/chrome/browser/net/reporting_browsertest.cc
[modify] https://crrev.com/c7e9486150060ec0d29d5b4a5fd7a31dd77e84a4/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/c7e9486150060ec0d29d5b4a5fd7a31dd77e84a4/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/c7e9486150060ec0d29d5b4a5fd7a31dd77e84a4/net/network_error_logging/network_error_logging_service_unittest.cc
[modify] https://crrev.com/c7e9486150060ec0d29d5b4a5fd7a31dd77e84a4/tools/metrics/histograms/enums.xml

Project Member

Comment 2 by bugdroid1@chromium.org, Jul 16

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada

commit 4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada
Author: Douglas Creager <dcreager@chromium.org>
Date: Mon Jul 16 23:42:25 2018

Network Error Logging: Downgrade reports when IP addresses don't match

When we make a request to a server that's different than the server that
delivered the NEL policy, we now have to "downgrade" the report to only
include information that's available during DNS resolution.

Bug:  862188 
Cq-Include-Trybots: luci.chromium.try:linux_mojo
Change-Id: Ied45aecbab00d9041a77cf7cf1f6e830726f6716
Reviewed-on: https://chromium-review.googlesource.com/1136031
Commit-Queue: Douglas Creager <dcreager@chromium.org>
Reviewed-by: Martin Šrámek <msramek@chromium.org>
Reviewed-by: Misha Efimov <mef@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#575483}
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate_unittest.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/content/browser/browsing_data/browsing_data_remover_impl_unittest.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/net/network_error_logging/network_error_logging_service.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/net/network_error_logging/network_error_logging_service.h
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/net/network_error_logging/network_error_logging_service_unittest.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/net/url_request/url_request.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/net/url_request/url_request_http_job.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/net/url_request/url_request_unittest.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/services/network/network_context_unittest.cc
[modify] https://crrev.com/4d1ef843b0c21ccfceb5f98ca4abf69a3c454ada/tools/metrics/histograms/enums.xml

Status: Verified (was: Assigned)

Sign in to add a comment