Status Update
Comments
pa...@chromium.org <pa...@chromium.org> #2
av...@chromium.org <av...@chromium.org> #3
As noted in
sa...@google.com <sa...@google.com> #4
co...@starbucks.com <co...@starbucks.com> #5
av...@chromium.org <av...@chromium.org> #6
Re
mu...@google.com <mu...@google.com> #8
Hi coburrow@, thanks for reporting this issue!
We are aware of this new permission in macOS 15 and have finished the implementation to address this issue. The fix will roll out in M128, which will release to Stable on Aug 20, 2024
mu...@google.com <mu...@google.com>
co...@starbucks.com <co...@starbucks.com> #9
cl...@hudson-trading.com <cl...@hudson-trading.com> #10
Running Google Chrome Stable 128.0.6613.85 and just updated to macOS 15b7 and on first boot after the upgrade launching Chrome triggered this dialog. Do I misunderstand the "M128, which will release to Stable on Aug 20, 2024 " from
Tried Chromium 130.0.6683.0 and it does not trigger the dialog.
mu...@google.com <mu...@google.com> #11
This feature is rolling out through a server-side config. So it's not enable on 100% of the M128 population yet.
ql...@google.com <ql...@google.com> #12
I have a top-tier customer (Airbnb.com) reporting this same behavior on the stable versions of Chrome and MacOS:
- Chrome 128.0.6613.120
- macOS 15.0 (Build 24A5331b)
Can you please confirm the Chrome browser M128 versions on which the fix is expected?
mu...@google.com <mu...@google.com> #13
On M128 stable, the feature is rolled out to 30% Stable population.
ql...@google.com <ql...@google.com> #14
Thanks for the context
Considering that M130 Stable is not meant for release until at least October 15th, is it safe to assume that the server-side fix will continue to rollout, slowly but steadily, until eventually 100% of the M128 / M129 browsers are fixed from this prompt? I am asking with the goal to set the right expectations for this customer
mu...@google.com <mu...@google.com> #15
of...@google.com <of...@google.com> #16
@muyaoxu, do you know if this will be at 100% for M129?
The customer is requesting to expedite the rollout for their domain. I understand this is being controlled via Finch, and we aren't able to add explicit domains to the rollout. Can the rollout be expedited for M129?
mu...@google.com <mu...@google.com> #17
I just confirmed that finch rollout didn't work for this issue, as finch configs are only applied **after** the browser startup while the fix requires the feature to be enabled at browser startup to delay the cast device discovery.
I've requested to enable the feature on the client side for M129, which will be released on Sep 17 next Tuesday. M128 will also get the feature enabled for Stable extended support.
Sorry for the confusion. I didn't realize the issue with finch rollout. Users shouldn't see this prompt for Chrome versions M129 or later.
cl...@hudson-trading.com <cl...@hudson-trading.com> #18
Edit: nevermind, I actually read
Running macOS 15.0 (24A335), I just downloaded Google Chrome Beta (Version 129.0.6668.42 (Official Build) beta (arm64)), and it prompted to find devices on local networks on first launch, just like previous versions. I've confirmed this on two different systems. Is the fix supposed to be in Beta/Version 129.0.6668.42?
mu...@google.com <mu...@google.com> #19
However, if users have installed chrome M128, and is updating from macOS 14 to 15, their browser should pick up the new finch config when the browser restarts after OS update finishes. So in theory, users updating their OS to 15 shouldn't see the permission prompt when they first launch the browser if they have installed the browser.
cl...@hudson-trading.com <cl...@hudson-trading.com> #20
FYI: Chrome 129.0.6668.90 didn't prompt for local network access on first launch on a clean 15.0.1 install.
mu...@google.com <mu...@google.com> #21
Thanks a lot for verifying. I really appreciate it. I'll close the bug now.
co...@starbucks.com <co...@starbucks.com> #22
mu...@google.com <mu...@google.com> #23
That's interesting. Cast in Chrome shouldn't use the GPU process. Does this prompt show up when Chrome first launches?
co...@starbucks.com <co...@starbucks.com> #24
co...@starbucks.com <co...@starbucks.com> #25
mu...@google.com <mu...@google.com> #26
Thanks for sharing this! We don't deliberately post tasks to the gpu process, or other processes in code. But there might be some optimization happening that we don't know. I'll keep an eye on it.
mu...@google.com <mu...@google.com> #27
Yes. It's expected that the prompt "Google Chrome Beta..." shows up when users explicitly open the cast dialog. What's interesting in
jk...@google.com <jk...@google.com> #28
I'm still seeing this on 15.1, Chrome Version 130.0.6723.70.
It just appeared randomly. I was in a personal Meet GVC, but am not certain if that's relevant.
ma...@chromium.org <ma...@chromium.org> #29
Logs from tccd
, responsible for mediating these permission decisions, and the network extension subsystem could be helpful in understanding what's going on:
log show --start '2024-10-30 9:00:00' --end '2024-10-30 10:00:00' --predicate 'process = "tccd" or subsystem = "com.apple.networkextension"'
These subsystems log a lot of messages, so I'd suggest tweaking the start / end times to be a few minutes before and after the prompt was displayed to limit how much data this generates while still capturing everything of relevance.
jk...@google.com <jk...@google.com> #30
The following log line may be relevant:
2024-10-30 08:59:49.427489-0700 0x3c279 Default 0x0
349 0 UserEventAgent: (com.apple.networkextension)
[com.apple.networkextension:] LocalNetwork: found bundle id
Paste accepted the full output which is available here -
Thanks,
Jeff
On Wed, Oct 30, 2024 at 10:08 AM markrowe <buganizer-system@google.com>
wrote:
ma...@chromium.org <ma...@chromium.org> #31
Thanks, Jeff.
That line message does seem like it could be relevant. One thing that I don't see is exactly what caused UserEventAgent
to be asking about Chrome or any mention of a decision to prompt the user. I've seen both when I looked at logs of an earlier occurrence of this. I may have misremembered the process / subsystem that emits that message. When you can, would you mind capturing logs for +/- 3 minutes of that timestamp with the --predicate "…"
argument removed?
The group of lines around that message make me wonder if this is related to the Chrome updater having downloaded and staged an update, pending a Chrome restart.
2024-10-30 08:59:49.427489-0700 0x3c279 Default 0x0 349 0 UserEventAgent: (com.apple.networkextension) [com.apple.networkextension:] LocalNetwork: found bundle id com.google.Chrome by PID
2024-10-30 08:59:49.440998-0700 0x395bd Default 0x0 441 0 nehelper: (libsystem_networkextension.dylib) [com.apple.networkextension:] UUID cache miss for com.google.Chrome
2024-10-30 08:59:49.444011-0700 0x3c27c Default 0x0 441 0 nehelper: [com.apple.networkextension:] Caching 2 UUID(s) for com.google.Chrome
2024-10-30 08:59:49.446573-0700 0x3c27c Default 0x0 441 0 nehelper: [com.apple.networkextension:] Setting UUID cache generation to 282
Specifically, the network extension subsystem that is responsible for the "find devices on your local network" prompting does not recognize the Mach-O UUIDs of Chrome's binary. Earlier log messages related to microphone / camera permissions reference a path to the main Google Chrome executable under $TMPDIR/../com.google.Chrome.code_sign_clone/code_sign_clone.*/Google Chrome.app
, which is where go/code-sign-safe-updates stages a clone of the Chrome application to mitigate many of the impacts of staged updates on code signature validation.
When I last looked into this, this local network permission is associated with the specific Mach-O UUIDs of an application rather than being tied to a code signing identity like most other TCC permissions are on macOS. The network extension subsystem listens for LaunchServices notifications about an application being installed and updates the Mach-O UUIDs it associates with an application's bundle identifier. This means that when LaunchService sees a new version of an application, the local network permission is lost for prior versions of that application, even if they're still running.
Hopefully less filtered logging for that time period will confirm or refute this hypothesis.
mu...@google.com <mu...@google.com> #32
Hi Jeff,
On Chrome on macOS doesn't start discovery until explicit user interaction with the Cast UI, or the Global Media Controls dialog. If you haven't quit the browser since you saw the permission prompt, could you please go to chrome://media-router-internals and share the logs?
jk...@google.com <jk...@google.com> #33
Hi Mark, paste choked on that one, attaching the log output requested. I do have a Chrome update pending which may have been staged/prepared around the same time.
Hi Muyao, I have not quit or restarted the browser. Here is a screenshot of the logs from earlier today around that time.
Thanks,
Jeff
mu...@google.com <mu...@google.com> #34
Thanks for the screenshot, Jeff.
It looks like the device discovery service wasn't started when you see the permission, which is weird. Maybe something other than cast is triggering the prompt.
cc...@gmail.com <cc...@gmail.com> #35
I just saw this pop-up on my personal machine. I suspect it's due to a Chrome update, as there's now one pending. I've attached a logarchive generated with log collect --last 5m --predicate 'process = "tccd" or subsystem = "com.apple.networkextension"'
which should cover the time.
ma...@chromium.org <ma...@chromium.org> #36
I spent a lot of time staring at Jeff's logs without finding anything specific.
Clay's logs were immediately useful:
info 2024-10-30 20:16:41.839936 -0400 UserEventAgent Got local network blocked notification: pid: 665, uuid: 4C4C4406-5555-3144-A10C-9D0AE092D97B, bundle_id: (null)
default 2024-10-30 20:16:41.841119 -0400 UserEventAgent LocalNetwork: found bundle id com.google.Chrome by PID
info 2024-10-30 20:16:41.842885 -0400 UserEventAgent LocalNetwork: did not find bundle ID for UUID 4C4C4406-5555-3144-A10C-9D0AE092D97B
info 2024-10-30 20:16:41.842890 -0400 UserEventAgent Found bundle ID: com.google.Chrome
info 2024-10-30 20:16:41.844538 -0400 UserEventAgent Got local network blocked notification: pid: 665, uuid: 4C4C4406-5555-3144-A10C-9D0AE092D97B, bundle_id: (null)
default 2024-10-30 20:16:41.844553 -0400 UserEventAgent LocalNetwork: found bundle id com.google.Chrome by PID
info 2024-10-30 20:16:41.844707 -0400 UserEventAgent LocalNetwork: did not find bundle ID for UUID 4C4C4406-5555-3144-A10C-9D0AE092D97B
info 2024-10-30 20:16:41.844707 -0400 UserEventAgent Found bundle ID: com.google.Chrome
info 2024-10-30 20:16:41.845005 -0400 nehelper Created a new configuration delegate with name = UserEventAgent, bundleID = com.apple.UserEventAgent, applicationID = (null), entitled = 0, hasProviderPermission = 0
default 2024-10-30 20:16:41.887721 -0400 nehelper UUID cache miss for com.google.Chrome
default 2024-10-30 20:16:41.891391 -0400 nehelper Caching 2 UUID(s) for com.google.Chrome
default 2024-10-30 20:16:41.893208 -0400 nehelper Setting UUID cache generation to 10
info 2024-10-30 20:16:41.893322 -0400 nehelper Received UUID 4C4C4406-5555-3144-A10C-9D0AE092D97B for com.google.Chrome does not match cached UUIDs (
"4C4C4452-5555-3144-A185-4A3C256ECB3F",
"4C4C4456-5555-3144-A146-5E13773D7A6A"
)
info 2024-10-30 20:16:41.894596 -0400 nehelper Path /private/var/folders/16/cbw50jv1521dgpjk_503fpm00000gn/X/com.google.Chrome.code_sign_clone/code_sign_clone.wP9ioe/Google Chrome.app/Contents/MacOS/Google Chrome for PID 665 does not match generic UUIDs, allowing creation of a new rule
info 2024-10-30 20:16:41.894602 -0400 nehelper Found new path /private/var/folders/16/cbw50jv1521dgpjk_503fpm00000gn/X/com.google.Chrome.code_sign_clone/code_sign_clone.wP9ioe/Google Chrome.app/Contents/MacOS/Google Chrome for PID 665, allowing a new prompt
info 2024-10-30 20:16:41.897430 -0400 nehelper Showing local network alert for com.google.Chrome even though not in the foreground
info 2024-10-30 20:16:41.897433 -0400 nehelper Local network preference not yet set, prompting for Google Chrome (com.google.Chrome)
4C4C4406-5555-3144-A10C-9D0AE092D97B
is the UUID from the executable of the running copy of Chrome. That is 130.0.6723.70. The UUIDs that nehelper
is aware of for Chrome (4C4C4452-5555-3144-A185-4A3C256ECB3F
and 4C4C4456-5555-3144-A146-5E13773D7A6A
) are from 130.0.6723.91. That's a newer version, and so is presumably the update that was recently staged on disk. This seems to confirm my hypothesis that staged updates are a factor in seeing this alert.
The remaining detail that the logs do not reveal is what Chrome did that triggered the local network alert.
Clay, if you're able to capture logs from the same time window but focused on mDNSResponder that will be incredibly helpful:
log collect --start '2024-10-30 20:13:00' --predicate 'process = "mDNSResponder"'
ma...@chromium.org <ma...@chromium.org> #37
Reopening and assigning to myself while we track down what is continuing to trigger this.
I've marked the system logs that folks have attached as restricted since they may contain PII.
cc...@gmail.com <cc...@gmail.com> #38
Compressed log archive attached. Generated with this:
❯ log collect --start '2024-10-30 20:10:00' --predicate 'process = "mDNSResponder"' --output mdnsrepsonder.logarchive
Archive successfully written to mdnsrepsonder.logarchive
la...@gmail.com <la...@gmail.com> #40
I got this prompt several times, answered yes, until I tried answering no. Then I noticed my Chromecast is not working anymore. Found this thread:
So could this be related to Chromecast or similard device permissions? Also, in Privacy & Security - Local Network settings I have seven instances of "Google Chrome" and the amount keeps increasing. Wonder if every time the dialog pops up, it increases an entry there.
mu...@google.com <mu...@google.com> #41
Hi lauri.pekonen@,
Thanks for sharing.
I got this prompt several times, answered yes, until I tried answering no. Then I noticed my Chromecast is not working anymore
The permission needs to be enabled to use cast in chrome. But the prompt should show up only once for each application. Tracking
Also, in Privacy & Security - Local Network settings I have seven instances of "Google Chrome" and the amount keeps increasing. Wonder if every time the dialog pops up, it increases an entry there.
I filed another bug to track the issue about multiple instances of "Google Chrome" in the settings page:
ma...@chromium.org <ma...@chromium.org> #42
I looked over Clay's log this morning. One thing that stood out to me is there is no mention of mDNS service discovery (i.e, DNSServiceBrowse
) prior to the local network prompt being displayed. If I trigger Cast manually I see mDNSResponder log messages related to DNSServiceBrowse
. The absence of those messages in Clay's logs suggests something other than Cast is tripping it.
The technote indicates that virtually any access to the local network can trigger the prompt. Clay, were you accessing any servers on your local network? If so, that would explain why the prompt was triggered. We'd still be left with the problem that macOS is showing the prompt repeatedly. That appears to be due to macOS failing to associate the local network access permission with Chrome across Chrome updates.
ma...@chromium.org <ma...@chromium.org> #43
I've figured out why this prompt is sometimes attributed to the GPU process, such as in
The network service runs within "Google Chrome Helper.app", which has a bundle ID of com.google.Chrome.helper
. The GPU process is "Google Chrome Helper (GPU).app", which has a bundle ID of… com.google.Chrome.helper
. The duplicate bundle ID is intentional due to the macOS graphics stack hard-coding some behavior for com.google.Chrome.helper
(
It seems that somewhere in the pipeline for the local alert prompting, macOS loses track of the "responsible process" for the process that triggered the prompt. The prompt should refer to Google Chrome since that is the "responsible process" for all of the helper processes. It's the only user-visible process, after all. The local alert prompting then resorts to looking for information about the process by bundle ID.
I'm not clear why a) macOS loses track of which process is "responsible", b) why it resorts to searching by bundle ID rather than retrieving the path of the process.
cl...@hudson-trading.com <cl...@hudson-trading.com> #44
Clay, were you accessing any servers on your local network?
Ah! I looked through all my open windows and there was one lingering in the back connecting directly via IP address to a pihole on my local network. So this probably is the trigger.
ma...@chromium.org <ma...@chromium.org> #45
That's great information.
I have been able to reproduce this on a work Mac running macOS 15.1 by leaving a build of Canary running overnight, with the only tab open being to a non-existent
ma...@chromium.org <ma...@chromium.org> #46
Has anyone seen multiple prompts for Chrome after updating to macOS 15.1?
I saw the prompt once for Canary after updating to macOS 15.1 last week but have not seen it since. It's not clear to me whether the repeated prompting was fixed in macOS 15.1 or if I'm not doing the right things to trigger it. I can't rule out the latter because I'm still not clear exactly what I did to trigger it.
ma...@chromium.org <ma...@chromium.org> #47
I’ve been seeing the prompt on canary every day or two, even since updating to macOS 15.1 a week ago.
ma...@chromium.org <ma...@chromium.org> #48
I have filed feedback reports with Apple about the repeated prompting and the network access being attributed to one of Chrome's helper processes rather than Chrome itself. I've also requested that they emit a log entry when displaying these prompts that contains information a developer can use to understand the reason for the prompt. As it stands it is hard to tell which process is triggering the prompt, let alone what action it performed that triggered the prompt.
xi...@google.com <xi...@google.com> #49
I saw two prompts today. Feels like it appears when I try to access a website that I didn't visit recently. But not all such cases would trigger.
ro...@google.com <ro...@google.com> #50
Saw this today shortly after logging onto my MacBook Pro laptop (Apple M1 Pro, 14-inch, 2021). I upgraded to Sequoia (15.1.1) yesterday. I am on Chrome Version 131.0.6778.109 (Official Build) (arm64). I don't believe I am screen casting to any devices. I do have lots of tabs open.
mu...@google.com <mu...@google.com> #51
Hi roydenluckey@, could you go to chrome://media-router-internals and check if you can find similar logs under the "Logs" tab?
The permission prompt should only show up when you open up the Cast dialog or the Global Media Controls dialog
xi...@google.com <xi...@google.com> #52
In my case I don't see mDNS discovery started
, instead I see quite a few Network ID changed
entries.
mp...@chromium.org <mp...@chromium.org> #53
Saw this today. I just upgraded to Sequoia. When Chrome automatically relaunched upon logging in, restoring my session with lots of open tabs, I was immediately provided with this permission request. I clicked allow.
Here are my chrome://media-router-internals logs:
I'm not sure if it matters but one of my background tabs is YouTube. By background, I mean it's an open tab but it's not the foreground tab in the browser window it's in.
Chrome version 131.0.6778.110
mf...@chromium.org <mf...@chromium.org> #54
It's possible that the prompt is triggered by Chrome's network interface change notification / interface enumeration code. I don't think enumerating loopback should be sufficient to trigger the prompt, so if there is a repro case it would be worth filing another FB (IMO).
mp...@chromium.org <mp...@chromium.org> #55
I think that sounds like a plausible cause. It happened again to me today. I opened my laptop in the office in the afternoon (after using it earlier in the day also in the office) and I was greeted again with the same "Allow "Google Chrome" to find device on local networks?" prompt. The only thing that happened between not seeing the prompt is putting my laptop to sleep, walking to a different floor in the building, opening the laptop, and unlocking it.
This prompt is also surprising because I would've thought that once I answered it as "Allow" the first time it wouldn't appear again. Maybe I'm misunderstanding how long the "allow" lasts.
Here is a link to chrome://media-router-internals output:
I closed my laptop around 2pm (Pacific) and then opened it again around 3:30pm (Pacific) and saw the message.
av...@chromium.org <av...@chromium.org> #56
This prompt is also surprising because I would've thought that once I answered it as "Allow" the first time it wouldn't appear again.
As a side note, this specific issue is a macOS bug that we reported to Apple as FB15683070. The “local networks” TCC dialog seems to track Chrome app identity in a way unlike every other TCC dialog, and that specific method causes it to lose track of the approval that users have given. Apple is working on it.
mu...@google.com <mu...@google.com> #57
mpearson@, could you help generate a
ch...@district145.org <ch...@district145.org> #58
mu...@google.com <mu...@google.com> #59
chris.keller@, I'm sorry to hear that you're not able to discover Chromecast devices from Chrome. The issue about multiple Chrome instances in the Local Network settings page is an issue with macOS, as is mentioned in #56. Apple's working on it.
It's possible that the prompt is triggered by Chrome's network interface change notification / interface enumeration code
Chrome tries to reconnect to previously discovered devices on network change
jo...@harrycow.fr <jo...@harrycow.fr> #60
rm...@google.com <rm...@google.com> #61
an...@gmail.com <an...@gmail.com> #62
ma...@chromium.org <ma...@chromium.org>
th...@chromium.org <th...@chromium.org> #63
I have 5 entries for Chrome in System Settings -> Privacy & Security -> Local Network (see screenshot). This is presumably the same bug as the bug here?
av...@chromium.org <av...@chromium.org> #64
I have 5 entries for Chrome in System Settings -> Privacy & Security -> Local Network (see screenshot). This is presumably the same bug as the bug here?
Nope, that one is
re...@ashley.school.nz <re...@ashley.school.nz> #65
Chrome version 136.0.7103.49
I manage IT at a school and have other devices on the same software versions but only one device has this issue.
Disabling the chrome flag as suggested above cleared the message and chrome looks for devices but can't find any
sa...@google.com <sa...@google.com> #66
Thanks!
Description
Steps to reproduce the problem
Chrome on macOS 15 "Google Chrome" would like to find devices on your local networks This will allow the app to discover, connect to, and collect data from devices on your networks.
Problem Description
unexpected prompt on macOS 15
Summary
macOS Google Chrome would like to find devices on your local networks
Additional Data
Category: Enterprise
Chrome Channel: Not sure
Regression: N/A