29.安卓逆向-抓包-实战3

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

内容参考于:图灵Python学院

工具下载:

链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3

提取码:6tw3

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:28.安卓逆向-抓包-实战2

上一个内容里写了找anti-token(登录标志)没找完,只是找到了它,没有进一步分析,本次接着继续

首先来到获取anti-token值的位置,如下图红框方法,上一个内容中可以知道它的如参数hi请求地址和false

然后开始分析它,参数z在下图红框位置进行了使用,然后下图红框的if里调用了h方法

然后双击h进入h方法里,如下图,下图红框返回了true,现在的if是if(!false&&!true),所以if里面的代码不会执行

也就是下图红框里的代码不会执行

如下图,接下来hookf方法看看它是什么

双击f进入f方法,发现它是一个接口,方法名字是f,没法搜

然后点击反混淆

代码就会变成下图的样子了,这样就可以去搜索了

如下图红框,搜索出了一个接口的实现

然后它又调用了下图红框的方法

继续双击进入

最终来到一个native的方法,目前来说就没法追了,后面会写怎样去看native的方法

然后现在尝试hook deviceInfo2方法看看它的返回值和入参,如下图点击复制为Frida片段

然后可以通过hook看到它的返回值是我们想要的,如下图

然后接下来尝试使用Frida调用这方法,通过模拟调用可以正常得到

Frida代码,为避免被句柄代码没法运行,包名不正确

function hookPxx(){
    var result = null;
    Java.perform(function (){

            let SecureNative = Java.use("com.xunmeng.xxx.secure.SecureNative");

            let BaseApplication = Java.use("com.xunmeng.xxx.basekit.BaseApplication")
            var context = BaseApplication.getContext()

            let time = Java.use("com.xunmeng.xxx.basekit.util.TimeStamp")
            let _ts = time.getRealLocalTime().longValue();
            let Long = Java.use("java.lang.Long");
            // 上下文、时间戳
            result = SecureNative.deviceInfo2(context, Long.valueOf(_ts));

    })
    return result

}

rpc.exports = {
    xialuo:hookPxx
}

Python rpc Frida代码

# -*- coding: utf-8 -*-
import frida
import requests
import json

session = frida.get_usb_device().attach('com.xunmeng.xxx')# 通过app的包名得到一个frida
with open("./pdd-rpc.js",encoding='utf-8') as f:
    jsCode = f.read()
# print("加载代码", jsCode)
script = session.create_script(jsCode)#得到一个Frida脚本
script.load()#加载脚本
res = script.exports.xialuo()#调用脚本里的方法
# print(res)



headers = {
    "Host": "api.xxx.com",
    "etag": "fZX3dcnP",
    "accesstoken": "GI7ZRD2AZFBTAHZH354CHXM76VJMGRPKUAVYJB7XUHDAKIQB3NUQ123e577",
    "referer": "Android",
    "lat": "R4FW4U75DUVAGAPHUESC6Y73I4FQBXVH2BYLRADYR23WRGJN6SZQ123e577",
    "al-sa": "{\"ads\":\"!!!;B:kp#&!\\-/ju6E!!#&!\\\\/I0h0=!!\"}",
    "p-appname": "pinduoduo",
    "p-proc-time": "3908001",
    "x-pdd-info": "bold_free%3Dfalse%26bold_product%3D%26front%3D1",
    "x-pdd-queries": "width=1080&height=2236&net=1&brand=google&model=Pixel+4&osv=10&appv=6.26.0&pl=2",
    "x-yak-llt": "1729768744077",
    "p-proc": "main",
    "p-mediainfo": "player=1.0.3&rtc=1.0.0",
    "x-b3-ptracer": "hctrue67687bf104c6491db0c2420ca0",
    "user-agent": "android Mozilla/5.0 (Linux; Android 10; Pixel 4 Build/QQ3A.200705.002; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.186 Mobile Safari/537.36  phh_android_version/6.26.0 phh_android_build/43953171301671e3b3baf01f859eed5581323a9e phh_android_channel/hw pversion/0",
    "pdd-config": "V4:001.062600",
    "multi-set": "1,0",
    "content-type": "application/json;charset=UTF-8",
    "anti-token": res,
    "vip": "81.69.105.47"
}
cookies = {
    "acid": "1f0bdb7edf06a93ff54bff400ea44ab3",
    "api_uid": "CiR1DWcaHK+gdwC6G5v9Ag=="
}
url = "https://api.xxx.com/search"
params = {
    "source": "index",
    "pdduid": "2656368057317"
}
data = {
    "install_token": "377c48c8-9dc1-4114-ba4d-7faa2972bfd3",
    "item_ver": "lzqq",
    "list_id": "51MO72nF",
    "track_data": "refer_page_id,10002_1730123512416_1951733667;refer_search_met_pos,3",
    "search_met": "history",
    "max_offset": "0",
    "source": "index",
    "sort": "default",
    "exposure_offset": "0",
    "q": "手机",
    "page_sn": "10015",
    "page_id": "search_result.html",
    "size": "20",
    "requery": "0",
    "page": "1",
    "engine_version": "2.0",
    "is_new_query": "1",
    "back_search": "false"
}
data = json.dumps(data, separators=(',', ':'))
response = requests.post(url, headers=headers, cookies=cookies, params=params, data=data)

print(response.text)
print(response)


img

Frida逆向抓包实战是一本关于移动端应用逆向抓包技术的实践指南。本书主要介绍了Frida这一强大的逆向工具的使用方法,并结合实际案例进行讲解。 首先,Frida是一款强大的动态分析工具,可以在运行中的应用程序中注入自定义的JavaScript代码,从而实现应用程序的行为监控与控制。本书以Frida为基础,详细介绍了如何使用Frida进行Android和iOS应用程序的逆向分析。读者可以学习到如何使用Frida的API来动态修改应用程序的行为,如动态调试、函数替换、Hook等。 其次,本书还介绍了抓包技术在移动应用逆向中的应用。通过抓包技术,读者可以捕获应用程序与服务器之间的通信数据,分析应用程序的网络请求和响应,了解应用程序的数据传输方式和协议。本书讲解了常用的抓包工具和技术,如使用Fiddler、Charles等工具进行HTTPS抓包分析加密通信数据等。 本书还通过实例演示了如何使用Frida和抓包技术进行实际的应用分析。例如,通过使用Frida获取应用程序的敏感数据并进行修改,探测应用程序中的漏洞,发现应用程序的安全问题等。通过抓包技术,读者可以分析应用程序的通信过程,了解应用程序与服务器之间的交互,发现潜在的数据泄漏风险等。 综上所述,Frida逆向抓包实战是一本介绍了Frida工具的基本原理和实际应用的实践指南。通过学习本书,读者可以了解到Frida的使用方法以及如何利用抓包技术进行移动应用逆向分析,并能够应用这些技术进行实际的应用分析与调试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值