Di recente, la nostra app per Android ha iniziato a bloccarsi a causa di un NullPointerException
in un pacchetto chiamato com.walkfreestub
. Attualmente ci sono assolutamente no riferimenti a questo online (abbiamo provato tutti i tipi di altre ricerche relative al crash). Qualsiasi informazione su questo pacchetto o sulle possibili cause sarebbe meravigliosa. La nostra ipotesi migliore è che qualcuno abbia decompilato il nostro APK e modificato il codice originale, per poterlo ri-rilasciare in un app store non ufficiale.Che cos'è com.walkfreestub? (causando arresti anomali su Android)
In particolare, questo accade più spesso in India e in Nigeria, e spesso sul dispositivo Xiaomi 2014818 (ma potrebbe essere solo un dispositivo comune in quei paesi). Le versioni sono per lo più Android 4.2 e 4.4, ma anche alcuni arresti anomali su 5.1 e altri.
Aggiornamento:
Ora ci sono diversi forum online dove gli utenti si lamentano di minacce relative al com.walkfree
e com.walkfreestub
. Vedere i collegamenti here, here e here. Questo purtroppo conferma la nostra ipotesi che l'APK è stato effettivamente modificato con malware in un app store non ufficiale.
completa dello stack trace:
java.lang.NullPointerException: replacement == null
at java.lang.String.replace(String.java:1348)
at com.walkfreestub.trace.ReferrerTrack.checkTrackUrl(ReferrerTrack.java:158)
at com.walkfreestub.internal.PushServiceProxy.startDownloadApp(PushServiceProxy.java:454)
at com.walkfreestub.internal.PushServiceProxy.notifyToDownload(PushServiceProxy.java:239)
at com.walkfreestub.internal.PushServiceProxy.notifyMessage(PushServiceProxy.java:274)
at com.walkfreestub.internal.PushServiceProxy.onMessageLoaded(PushServiceProxy.java:342)
at com.walkfreestub.internal.push.WalkPushRequest$6.onResponse(WalkPushRequest.java:375)
at com.walkfreestub.internal.push.WalkPushRequest$6.onResponse(WalkPushRequest.java:1)
at com.walkfreestub.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:60)
at com.walkfreestub.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:1)
at com.walkfreestub.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5136)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:740)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
at dalvik.system.NativeStart.main(Native Method)
Sembra che alcune delle classi qui https: //android.googlesource.com/platform/framework/volley/+/master/src/main/java/com/android/volley appena clonato e spostato namespace – weston
Le classi '.internal' vengono chiamate perché sono registrate' ... volley.Response. Ascoltatore è così sono assenti da quel repo. – weston
Grazie a @weston. Usiamo Volley nella nostra app, che è probabilmente il motivo per cui questo incidente si sta verificando. Vorremmo capire da dove viene questo pacchetto clonato, in modo che possiamo determinare cosa fare al riguardo. –