Hello,
I have an app I built and when I install the APK directly to the device it runs fine.
Recently I wanted to show it to a client so I had them install Ionic View and made the app available to them.
They ran it, but none of the plugins seemed to work. This was very strange to me because I only use the ngCordova versions of Barcode Scanner and Camera.
So I pulled up adb logcat and my jaw dropped when I saw this.
If I’m reading it right then Ionic View has been compromised and is injecting malicious code.
I’ll post the log so you can read it for yourself.
D/CordovaActivity( 7878): Resuming the App
E/CordovaBridge( 7878): Bridge access attempt with wrong secret token, possibly from malicious code. Disabling exec() bridge!
W/System.err( 7878): java.lang.IllegalAccessException
W/System.err( 7878): at org.apache.cordova.CordovaBridge.verifySecret(CordovaBridge.java:104)
W/System.err( 7878): at org.apache.cordova.CordovaBridge.jsRetrieveJsMessages(CordovaBridge.java:85)
W/System.err( 7878): at org.apache.cordova.ExposedJsApi.retrieveJsMessages(ExposedJsApi.java:50)
W/System.err( 7878): at com.android.org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
W/System.err( 7878): at com.android.org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:53)
W/System.err( 7878): at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err( 7878): at android.os.Looper.loop(Looper.java:135)
W/System.err( 7878): at android.os.HandlerThread.run(HandlerThread.java:61)
I/OpenGLRenderer( 7878): Initialized EGL, version 1.4
E/CordovaBridge( 7878): Bridge access attempt with wrong secret token, possibly from malicious code. Disabling exec() bridge!
W/System.err( 7878): java.lang.IllegalAccessException
W/System.err( 7878): at org.apache.cordova.CordovaBridge.verifySecret(CordovaBridge.java:104)
W/System.err( 7878): at org.apache.cordova.CordovaBridge.jsRetrieveJsMessages(CordovaBridge.java:85)
W/System.err( 7878): at org.apache.cordova.ExposedJsApi.retrieveJsMessages(ExposedJsApi.java:50)
W/System.err( 7878): at com.android.org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
W/System.err( 7878): at com.android.org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:53)
W/System.err( 7878): at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err( 7878): at android.os.Looper.loop(Looper.java:135)
W/System.err( 7878): at android.os.HandlerThread.run(HandlerThread.java:61)
D/CordovaLog( 7878): file:///android_asset/www/cordova.js: Line 962 : Uncaught Error: Java exception was raised during method invocation
I/chromium( 7878): [INFO:CONSOLE(962)] "Uncaught Error: Java exception was raised during method invocation", source: file:///android_asset/www/cordova.js (962)
D/CordovaLog( 7878): file:///android_asset/www/cordova.js: Line 962 : Uncaught Error: Java exception was raised during method invocation
I/chromium( 7878): [INFO:CONSOLE(962)] "Uncaught Error: Java exception was raised during method invocation", source: file:///android_asset/www/cordova.js (962)
E/CordovaBridge( 7878): Bridge access attempt with wrong secret token, possibly from malicious code. Disabling exec() bridge!
W/System.err( 7878): java.lang.IllegalAccessException
W/System.err( 7878): at org.apache.cordova.CordovaBridge.verifySecret(CordovaBridge.java:104)
W/System.err( 7878): at org.apache.cordova.CordovaBridge.jsRetrieveJsMessages(CordovaBridge.java:85)
W/System.err( 7878): at org.apache.cordova.ExposedJsApi.retrieveJsMessages(ExposedJsApi.java:50)
W/System.err( 7878): at com.android.org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
W/System.err( 7878): at com.android.org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:53)
W/System.err( 7878): at android.os.Handler.dispatchMessage(Handler.java:102)
W/System.err( 7878): at android.os.Looper.loop(Looper.java:135)
W/System.err( 7878): at android.os.HandlerThread.run(HandlerThread.java:61)
D/CordovaLog( 7878): file:///android_asset/www/cordova.js: Line 962 : Uncaught Error: Java exception was raised during method invocation
I/chromium( 7878): [INFO:CONSOLE(962)] "Uncaught Error: Java exception was raised during method invocation", source: file:///android_asset/www/cordova.js (962)
Nothing like this appears in the APK version so it’s something that ionic view is doing. Removing Ionic View and installing directly on the client’s device did in fact resolve the problem.
Someone should look into this right away.
Thanks!