Closed Bug 2036257 Opened 16 days ago Closed 9 days ago

[wpt-sync] Sync PR 59539 - [Connection-Allowlist] Enforce "webrtc" header param.

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox152 fixed)

RESOLVED FIXED
152 Branch
Tracking Status
firefox152 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 59539 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/59539
Details from upstream follow.

Andrew Verge <averge@chromium.org> wrote:

[Connection-Allowlist] Enforce "webrtc" header param.

WebRTC needs to be treated specially by the Connection-Allowlist header,
because it is not possible to enumerate hostnames that will be used for
P2P connections.

The decision was made in
https://github.com/WICG/connection-allowlists/issues/6 to use a global
header flag that will either completely allow or block WebRTC peer
connections, regardless of the target origin.

This was specified in
https://github.com/WICG/connection-allowlists/commit/5b5fcb595f2e3c41edd49e002eea6559e3e45cfe.
and this CL implements the enforcement portion of the specification.

Note that there are changes in both the renderer and the browser.

  • On the renderer side, we prevent construction of RTCPeerConnection.
  • On the browser side, we prevent the P2PSocketManager from being bound
    in the network service, as an extra layer of protection against a
    compromised renderer. This is similar to how P2P was handled for
    fenced frames.

Bug: 492439214
Change-Id: Ib10bda11020df74e3ecd41450027cacbf6a7bd2a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7676321
Reviewed-by: Mike West \<mkwst@chromium.org>
Commit-Queue: Andrew Verge \<averge@chromium.org>
Reviewed-by: Johannes Kron \<kron@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1622470}

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 41 tests and 5 subtests

Status Summary

Firefox

OK : 3[GitHub] 41[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
PASS: 4[GitHub] 82[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]
FAIL: 2[GitHub] 148[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-debug, Gecko-linux2404-64-opt, Gecko-windows11-32-25h2-debug, Gecko-windows11-32-25h2-opt, Gecko-windows11-64-25h2-debug, Gecko-windows11-64-25h2-opt]

Chrome

OK : 3
PASS: 4
FAIL: 2

Safari

OK : 3
PASS: 4
FAIL: 2

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

Status: NEW → RESOLVED
Closed: 9 days ago
Resolution: --- → FIXED
Target Milestone: --- → 152 Branch
You need to log in before you can comment on or make changes to this bug.