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

相关推荐
彼岸花开了吗7 分钟前
构建AI智能体:八十、SVD知识整理与降维:从数据混沌到语义秩序的智能转换
人工智能·python·llm
小璐猪头12 分钟前
专为 Spring Boot 设计的 Elasticsearch 日志收集 Starter
java
山土成旧客21 分钟前
【Python学习打卡-Day40】从“能跑就行”到“工程标准”:PyTorch训练与测试的规范化写法
pytorch·python·学习
ps酷教程33 分钟前
HttpPostRequestDecoder源码浅析
java·http·netty
闲人编程33 分钟前
消息通知系统实现:构建高可用、可扩展的企业级通知服务
java·服务器·网络·python·消息队列·异步处理·分发器
大神君Bob1 小时前
【AI办公自动化】如何使用Pytho让Excel表格处理自动化
python
Heorine1 小时前
数学建模 绘图 图表 可视化(6)
python·数学建模·数据可视化
栈与堆1 小时前
LeetCode-1-两数之和
java·数据结构·后端·python·算法·leetcode·rust
OC溥哥9991 小时前
Paper MinecraftV3.0重大更新(下界更新)我的世界C++2D版本隆重推出,拷贝即玩!
java·c++·算法
星火开发设计1 小时前
C++ map 全面解析与实战指南
java·数据结构·c++·学习·算法·map·知识