New issue
Advanced search Search tips

Issue 686028 link

Starred by 2 users

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

LogcatExtractionCallable over-redacts inner classes and file-line information

Project Member Reported by rsesek@chromium.org, Jan 27 2017

Issue description

Version: 57.0.2987.9
OS: Android

The LogcatExtractionCallable redacts PII web addresses and other data. But it also redacts the names of anonymous inner classes and the file-line information from stack traces.

As an example, this is from a collected logcat, where some critical method names are redacted:

01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: Failed to setup connection.
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: android.os.DeadObjectException
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.os.BinderProxy.transactNative(Native Method)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.os.BinderProxy.transact(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at org.chromium.content.common.IChildProcessService$Stub$HTTP://WEBADDRESS.ELIDED(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at org.chromium.content.browser.ChildProcessConnectionImpl.doConnectionSetupLocked(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at org.chromium.content.browser.ChildProcessConnectionImpl$HTTP://WEBADDRESS.ELIDED(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.app.LoadedApk$HTTP://WEBADDRESS.ELIDED(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.app.LoadedApk$ServiceDispatcher$HTTP://WEBADDRESS.ELIDED(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.os.Handler.handleCallback(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.os.Handler.dispatchMessage(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.os.Looper.loop(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at android.app.ActivityThread.main(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at java.lang.reflect.Method.invoke(Native Method)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at com.android.internal.os.ZygoteInit$HTTP://WEBADDRESS.ELIDED(HTTP://WEBADDRESS.ELIDED)
01-27 08:51:58.136 29951 29951 E cr_ChildProcessConnect: at com.android.internal.os.ZygoteInit.main(HTTP://WEBADDRESS.ELIDED)

This is what the un-redacted stacktrace should look like:

01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect: Failed to setup connection.
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect: android.os.DeadObjectException
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.os.BinderProxy.transactNative(Native Method)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.os.BinderProxy.transact(Binder.java:692)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at org.chromium.content.common.IChildProcessService$Stub$Proxy.setupConnection(IChildProcessService.java:131)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at org.chromium.content.browser.ChildProcessConnectionImpl.doConnectionSetupLocked(ChildProcessConnectionImpl.java:405)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at org.chromium.content.browser.ChildProcessConnectionImpl.access$1000(ChildProcessConnectionImpl.java:33)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at org.chromium.content.browser.ChildProcessConnectionImpl$ChildServiceConnection.onServiceConnected(ChildProcessConnectionImpl.java:202)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:1502)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:1530)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.os.Handler.handleCallback(Handler.java:751)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.os.Handler.dispatchMessage(Handler.java:95)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.os.Looper.loop(Looper.java:154)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at android.app.ActivityThread.main(ActivityThread.java:6313)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at java.lang.reflect.Method.invoke(Native Method)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:226)
01-27 06:47:17.494 11427 11427 E cr_ChildProcessConnect:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:726)

Something probably needs to be adjusted in this regexp: https://cs.chromium.org/chromium/src/chrome/android/java/src/org/chromium/chrome/browser/crash/LogcatExtractionCallable.java?q=webaddress.elided&sq=package:chromium&dr=C&l=79
 

Comment 1 Deleted

Sign in to add a comment