闲鱼消息hook更新

闲鱼消息hook更新

今天下午开始,两个账号陆续不能通过之前(com.tekartik.sqflite.SqflitePlugin.onInsertCall())的hook接收到新消息,感觉应该是闲鱼升级了,并下发了补丁,即使在没有主动升级APP版本的情况下,接收消息的逻辑出现了较大变化。

更新后消息似乎并没有写入本地数据库。

尝试hook Sting.toString搜索字符串,轻轻松松找到了一个可以获取最新消息的方法com.taobao.fleamarket.push.plugin.MessagePaasAccsPlugin.sendEvent

1
2
3
4
5
6
7
8
9
var String = Java.use("java.lang.String");
String.toString.implementation = function () {
var s = this.toString();
if(s.indexOf('zzzzzz') >-1){
console.log(s)
console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Exception").$new()))
}
return s
}

image-20250318212419389

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
java.lang.Exception
at java.lang.String.toString(Native Method)
at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:172)
at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:373)
at io.flutter.plugin.common.StandardMethodCodec.encodeMethodCall(StandardMethodCodec.java:17)
at io.flutter.plugin.common.MethodChannel.invokeMethod(MethodChannel.java:3)
at io.flutter.plugin.common.MethodChannel.invokeMethod(MethodChannel.java:1)
at com.taobao.fleamarket.push.plugin.MessagePaasAccsPlugin.sendEvent(MessagePaasAccsPlugin.java:21)
at com.taobao.fleamarket.push.XPushService.onData(XPushService.java:56)
at com.taobao.accs.utl.AccsHandler$3.run(AccsHandler.java:86)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:224)
at android.app.ActivityThread.main(ActivityThread.java:7584)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)