上样本:
链接:https://pan.baidu.com/s/1u9pmyYpL2v9bneghSC9lJA
提取码:z3w7
1,问题提出
发现有个聊天的app, 想看下能不能做到智能回复。
2,解决方案
2.1
Fart 砸壳,脚本批量导出java文件,安装模拟器准备运行,移动操作猛如虎,结果弹出不能模拟器运行。刚开始认为是native,360加固,是不是需要修复,想的很麻烦,后边直接打出堆栈,看到了代码。
2.2 刷新对话列表,找到有未读消息,然后自动回复
找到handler, 找到未读>0 ,然后点击中间的view,自动打开聊天窗口。
// var layoutcht ;
lcls.setDataProvider.overload("com.tencent.qcloud.tim.uikit.modules.chat.interfaces.IChatProvider").implementation = function(arg1) {
console.log("set data prd me" + arg1);
function getreps(rectxt,mainact,msg,input) {
}
大致意思是,hook 聊天窗口,找到最后一条,不是自己发送的消息,,然后调用智能接口,发送数据。
这里有人要问了,为什么不直接hook 发送消息,直接回复消息,还要打开界面,填入内容,然后点击发送按钮。因为风控,app 风控了这个接口
3,遗留问题
自动找人聊天,还有其他成品,或者合作,可以加我星球。
另外,出友盟的协议。