拼多多 anti-token unidbg 分析

声明:

本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
逆向分析

版本7.3-7.4 都试过加密没什么改变。

由于我账号被封了(大号之前搞web被封了)所以只能找一个检测的接口来做测试。如图。不带数据返回40002.找了很久大部分都是走缓存返回的假如你被封号只有一小部分接口可以使用并且做检测。拼多多也是真狠检测。京东淘宝就很人性化一定限度允许爬虫研究学习。也分别在这两个平台买过手机也算补偿马哥和强哥了。简单说一下anti-token。

这是加密hook位置。学习了2个星期app现在基本看一下就知道他在那里太刻意的做反爬我也总结出了一些技巧找这些加密位置。加固那些另外说还没到那个阶段。

复制代码
function hook_java(){
    Java.perform(function(){
        var DeviceNative = Java.use("xxxxxxxx.secure.DeviceNative");
        // DeviceNative.info3.implementation = function(a,b,c){
        //     console.log("DeviceNative.info3 invoked");
        //     console.log("a: " + a)
        //     console.log("b: " + b)
        //     console.log("c: " + c)
        //     let ret = this.info3(a,b,c);
        //     console.log("ret: " + ret)
        //     return ret;
        // }
        DeviceNative.info2.implementation = function(ctx,b) {
            console.log("DeviceNative.info2 invoked");
            console.log("ctx: " + ctx)
            console.log("ctx.getSystemService", ctx.getSystemService("phone"))
            console.log("b: " + b)
            let ret = this.info2(ctx, b);
            console.log("ret: " + ret)
            return ret;
        }

    })


}

unidbg hook

他需要什么就去hook看看值是什么hook不到说明设置了禁止hook和反射获取有些库是什么这样直接问ai返回什么叫就行了。例子。

复制代码
let telephonyManager = Java.use('android.telephony.TelephonyManager')
telephonyManager.getSimOperatorName.overload().implementation = function(){
    console.log("telephonyManager.getSimOperatorName invoked")
    let result = this.getSimOperatorName()
    console.log("result: " + result)
    return result;
}
telephonyManager.getSimOperatorName.overload('int').implementation = function(a){
    console.log("telephonyManager.getSimOperatorName invoked",a)
    let result = this.getSimOperatorName(a)
    console.log("result: " + result)
    return result;
}

结果

总结

1.出于安全考虑,本章未提供完整流程,调试环节省略较多,只提供大致思路,具体细节要你自己还原,相信你也能调试出来。

相关推荐
apcipot_rain5 小时前
C++转Java日记(06)
java·开发语言
锋行天下8 小时前
langgraph 后端发自定义数据,前端接收方法概括
人工智能·python
金銀銅鐵10 小时前
带您看懂字节码指令(一):一帧里有什么
java·后端·ai编程
benchmark_cc10 小时前
用 QuantDash 读取单只股票五档盘口:抽样、缺失值检查与复现记录
python·数据分析·pandas·量化交易·股票数据·quantdash
曲径海盗10 小时前
【Python 学习第 55 天】列表基础
python·学习笔记·编程入门
专注仿真11 小时前
知识问答模型用到的算法集详解及代码实例
python·算法·代码·大模型训练·控制算法
jyOverQ11 小时前
我写了一个 CSDN Markdown 图片助手:告别本地图片逐张上传
python·工具·csdn
nice_lcj52011 小时前
【从零理解 Spring AI · 14】RAG 的四个环节:加载、切分、向量化、检索
java·spring boot·embedding·向量数据库·rag·spring ai·ai应用开发
学长毕设13 小时前
基于springboot科创竞赛信息平台-附源码
java·spring boot·后端
聪明的笨猪猪14 小时前
Java 工程案例:AI 生成 @Async 异步线程池踩坑
java·经验分享·面试·ai编程