Public bug reported:
Summary
A single Chromium Snap desktop session using a fresh profile failed to navigate
to a private HTTPS page with net::ERR_ACCESS_DENIED. Existing kernel audit
records contain three nearby receive denials under snap.chromium.chromium
involving the loopback SOCKS proxy. The specific defect has not been
identified. This report describes correlation, not a proven causal chain or a
confirmed reproducible bug.
Software versions observed
- Ubuntu 24.04.4 LTS
- Kernel: 6.17.0-1021-nvidia
- Chromium Snap: 155.0.8059.79, revision 3560, latest/stable, publisher
Canonical
- snapd: 2.77.1
- AppArmor parser: 4.0.1
- Ubuntu apparmor/libapparmor1 package version:
4.0.1really4.0.1-0ubuntu0.24.04.7
Existing proxy relationship
The desktop GNOME proxy settings observed after the failure were:
org.gnome.system.proxy mode = 'manual'
org.gnome.system.proxy.socks host = '127.0.0.1'
org.gnome.system.proxy.socks port = 10889
org.gnome.system.proxy ignore-hosts = ['localhost', '127.0.0.1', '::1']
org.gnome.system.proxy use-same-proxy = true
The HTTP and HTTPS proxy host fields were empty.
127.0.0.1:10889 is an existing OpenSSH dynamic SOCKS listener, managed by an
enabled, active user-level systemd service. Its relevant command structure is:
/usr/bin/ssh -N [authentication and connection options omitted] -D
127.0.0.1:10889 <REDACTED_REMOTE_ENDPOINT>
The listener predated this browser session. No proxy override was present in
the browser launch arguments. These observations support inheritance of desktop
proxy settings, but no per-request proxy-resolution trace was captured.
Sanitized launch arguments (historical record, not a request to reproduce)
/snap/bin/chromium
--user-data-dir=<FRESH_TEMP_PROFILE>
--host-resolver-rules="MAP <PRIVATE_HOST> <PRIVATE_IP>"
--remote-debugging-pipe
--no-first-run
--no-default-browser-check
--disable-background-networking
--window-size=1280,960
about:blank
After startup, CDP Page.navigate requested the private HTTPS page. The
hostname mapping was limited to this browser session. Chromium
sandboxing and normal HTTPS certificate verification were retained. No
ignore-certificate-errors or no-sandbox flag was used.
Actual CDP failure excerpts (identifiers and destination removed)
Network.loadingFailed:
{"requestId":"<REQUEST_A>","type":"Document","errorText":"net::ERR_ACCESS_DENIED","canceled":false}
Page.navigate result:
{"frameId":"<FRAME_A>","loaderId":"<REQUEST_A>","errorText":"net::ERR_ACCESS_DENIED","isDownload":false}
Three related kernel audit excerpts
Absolute timestamps, audit serials and the task ID are redacted. <TASK_A>
consistently denotes the same observed task. The two occurrences using source
port 48964 were separate original audit entries, not duplicate copying. Entry C
followed A/B by approximately 4 ms.
A: apparmor="DENIED" operation="file_perm" class="net"
profile="snap.chromium.chromium" pid=<TASK_A> comm="Chrome_ChildIOT"
laddr=127.0.0.1 lport=48964 faddr=127.0.0.1 fport=10889 family="inet"
sock_type="stream" protocol=6 requested="receive" denied="receive"
B: apparmor="DENIED" operation="file_perm" class="net"
profile="snap.chromium.chromium" pid=<TASK_A> comm="Chrome_ChildIOT"
laddr=127.0.0.1 lport=48964 faddr=127.0.0.1 fport=10889 family="inet"
sock_type="stream" protocol=6 requested="receive" denied="receive"
C: apparmor="DENIED" operation="file_perm" class="net"
profile="snap.chromium.chromium" pid=<TASK_A> comm="Chrome_ChildIOT"
laddr=127.0.0.1 lport=48976 faddr=127.0.0.1 fport=10889 family="inet"
sock_type="stream" protocol=6 requested="receive" denied="receive"
Evidence limits and request
The audit records and browser launch used the same boot session. Journal
monotonic timestamps place the first network denial about 94 ms before the CDP
loading failure. However, NetLog and a complete child-process/thread
association were not captured. We cannot associate each denied socket with a
particular URL or establish that these denials were the sole cause. No
successful application response or browser TLS verification result was recorded.
The existing chromium:network interface was connected. Read-only
preprocessing of the on-disk snap.chromium.chromium profile included
network inet stream permission; this does not prove the exact compiled
policy loaded in the kernel. Reading the complete loaded-policy list was
denied to the unprivileged account.
The browser session was closed normally, with no download produced. It
has not been restarted or retried for this report. No system-level
security, proxy, DNS or network configuration was changed during the
browser attempt or this investigation.
Please advise whether this software combination has a known Chromium
Snap/AppArmor policy-loading or compatibility issue, and which minimal,
privacy-preserving read-only evidence would distinguish it from another
cause. A supported correction is requested only after the responsible
component is established.
Privacy
This text is prepared for a public issue. Private usernames, host/device
identifiers, boot ID, real private hostname/IP, business URL, private paths,
remote SSH endpoint, credentials and application data have been removed.
Placeholder values are not executable reproduction inputs. No full logs,
configuration files or project archive are attached.
** Affects: chromium-browser (Ubuntu)
Importance: Undecided
Status: New
** Tags: snap
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2171566
Title:
[snap] ERR_ACCESS_DENIED with GNOME SOCKS settings and nearby AppArmor
receive denials
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/2171566/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs