GrapheneOS / os-issue-tracker

Issue tracker for GrapheneOS Android Open Source Project hardening work. Standalone projects like Auditor, AttestationServer and hardened_malloc have their own dedicated trackers.
https://grapheneos.org/
354 stars 20 forks source link

Error in Google Play services #1716

Closed J3rr1ck closed 1 year ago

J3rr1ck commented 1 year ago
type: crash
osVersion: google/raven/raven:13/TP1A.221105.002/2022111800:user/release-keys
package: com.google.android.gms:224459044
process: com.google.android.gms.persistent
processUptime: 1952045 + 309 ms
GmsCompatConfig version: 16

java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.wifi.CONFIGURED_NETWORKS_CHANGE flg=0x4000010 (has extras) } in com.google.android.gms.wearable.node.WifiService$SavedNetworkBroadcastReceiver@440d5a5
    at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0$android-app-LoadedApk$ReceiverDispatcher$Args(LoadedApk.java:1800)
    at android.app.LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0.run(Unknown Source:2)
    at android.os.Handler.handleCallback(Handler.java:942)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:201)
    at android.os.Looper.loop(Looper.java:288)
    at android.app.ActivityThread.main(ActivityThread.java:7904)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
    at com.android.internal.os.ExecInit.main(ExecInit.java:49)
    at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
    at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:355)
Caused by: java.lang.SecurityException: WifiService: Neither user 10127 nor current process has android.permission.READ_WIFI_CREDENTIAL.
    at android.os.Parcel.createExceptionOrNull(Parcel.java:3021)
    at android.os.Parcel.createException(Parcel.java:3005)
    at android.os.Parcel.readException(Parcel.java:2981)
    at android.os.Parcel.readException(Parcel.java:2923)
    at android.net.wifi.IWifiManager$Stub$Proxy.getPrivilegedConfiguredNetworks(IWifiManager.java:2210)
    at android.net.wifi.WifiManager.getPrivilegedConfiguredNetworks(WifiManager.java:1697)
    at ccsl.e(:com.google.android.gms@224459044@22.44.59 (190400-488547955):4)
    at ccsl.i(:com.google.android.gms@224459044@22.44.59 (190400-488547955):3)
    at ccsl.g(:com.google.android.gms@224459044@22.44.59 (190400-488547955):1)
    at com.google.android.gms.wearable.node.WifiService$SavedNetworkBroadcastReceiver.a(:com.google.android.gms@224459044@22.44.59 (190400-488547955):6)
    at com.google.android.gms.libs.punchclock.tracing.TracingBroadcastReceiver.onReceive(:com.google.android.gms@224459044@22.44.59 (190400-488547955):2)
    at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0$android-app-LoadedApk$ReceiverDispatcher$Args(LoadedApk.java:1790)
    ... 11 more
Caused by: android.os.RemoteException: Remote stack trace:
    at android.app.ContextImpl.enforce(ContextImpl.java:2285)
    at android.app.ContextImpl.enforceCallingOrSelfPermission(ContextImpl.java:2313)
    at android.content.ContextWrapper.enforceCallingOrSelfPermission(ContextWrapper.java:948)
    at com.android.server.wifi.WifiServiceImpl.enforceReadCredentialPermission(WifiServiceImpl.java:1070)
    at com.android.server.wifi.WifiServiceImpl.getPrivilegedConfiguredNetworks(WifiServiceImpl.java:3029)
aidandenlinger commented 1 year ago

I'm also having this issue - seems very similar to the previously resolved #1358. Changing from WiFi to cellular or vice versa consistently causes a crash and I have a wearos device paired on the affected device. Started occurring today after the reboot from updating to GrapheneOS 2022111800. Happens on GmsCompatConfig v16 and 17. My Play Services is managed by Apps and is on the stable release channel.

type: crash
osVersion: google/barbet/barbet:13/TP1A.221105.002/2022111800:user/release-keys
package: com.google.android.gms:224113044
process: com.google.android.gms.persistent
processUptime: 2167215 + 632 ms
GmsCompatConfig version: 17

java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.wifi.CONFIGURED_NETWORKS_CHANGE flg=0x4000010 (has extras) } in com.google.android.gms.wearable.node.WifiService$SavedNetworkBroadcastReceiver@24b4f1f
    at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0$android-app-LoadedApk$ReceiverDispatcher$Args(LoadedApk.java:1800)
    at android.app.LoadedApk$ReceiverDispatcher$Args$$ExternalSyntheticLambda0.run(Unknown Source:2)
    at android.os.Handler.handleCallback(Handler.java:942)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:201)
    at android.os.Looper.loop(Looper.java:288)
    at android.app.ActivityThread.main(ActivityThread.java:7904)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
    at com.android.internal.os.ExecInit.main(ExecInit.java:49)
    at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
    at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:355)
Caused by: java.lang.SecurityException: WifiService: Neither user 10118 nor current process has android.permission.READ_WIFI_CREDENTIAL.
    at android.os.Parcel.createExceptionOrNull(Parcel.java:3021)
    at android.os.Parcel.createException(Parcel.java:3005)
    at android.os.Parcel.readException(Parcel.java:2981)
    at android.os.Parcel.readException(Parcel.java:2923)
    at android.net.wifi.IWifiManager$Stub$Proxy.getPrivilegedConfiguredNetworks(IWifiManager.java:2210)
    at android.net.wifi.WifiManager.getPrivilegedConfiguredNetworks(WifiManager.java:1697)
    at cbwo.e(:com.google.android.gms@224113044@22.41.13 (190400-480714934):4)
    at cbwo.i(:com.google.android.gms@224113044@22.41.13 (190400-480714934):3)
    at cbwo.g(:com.google.android.gms@224113044@22.41.13 (190400-480714934):1)
    at com.google.android.gms.wearable.node.WifiService$SavedNetworkBroadcastReceiver.a(:com.google.android.gms@224113044@22.41.13 (190400-480714934):6)
    at com.google.android.gms.libs.punchclock.tracing.TracingBroadcastReceiver.onReceive(:com.google.android.gms@224113044@22.41.13 (190400-480714934):2)
    at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$getRunnable$0$android-app-LoadedApk$ReceiverDispatcher$Args(LoadedApk.java:1790)
    ... 11 more
Caused by: android.os.RemoteException: Remote stack trace:
    at android.app.ContextImpl.enforce(ContextImpl.java:2285)
    at android.app.ContextImpl.enforceCallingOrSelfPermission(ContextImpl.java:2313)
    at android.content.ContextWrapper.enforceCallingOrSelfPermission(ContextWrapper.java:948)
    at com.android.server.wifi.WifiServiceImpl.enforceReadCredentialPermission(WifiServiceImpl.java:1070)
    at com.android.server.wifi.WifiServiceImpl.getPrivilegedConfiguredNetworks(WifiServiceImpl.java:3029)
muhomorr commented 1 year ago

It's a regression in the current OS release, should be fixed in the next OS release. As a workaround, you can revoke the "Nearby devices" from Play services, it should stop these crashes.

muhomorr commented 1 year ago

@JanglePlatformTeam Do you have a paired Wear OS device?

J3rr1ck commented 1 year ago

@JanglePlatformTeam Do you have a paired Wear OS device?

Yes sorry meant to follow up last night but this occurs occasionally when pixel watch reconnects

aidandenlinger commented 1 year ago

Can confirm that GrapheneOS 2022112500 has resolved this for me - thanks for the quick resolution!