frida - 5.hook实战

本文通过Frida hook技术分析apk【嘟嘟牛在线】的加密登录过程。首先通过抓包发现user/login接口的加密POST请求,接着使用jadx-gui反编译并定位可能的加密代码。通过frida加载hook脚本验证,确认了加密方法。进一步深入,分析并模拟了数据生成逻辑,包括MD5加密和特定参数处理。最后,展示了将找到的逻辑转换为Python代码的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实战apk是【嘟嘟牛在线】

apk可以百度自己下载,apk图标如下:

App抓包分析

1.抓包分析接口

打开app输入信息、可以看见这个包 user/login 发的post请求。里面包含的表单值是加密的

2.jadx-gui反编译分析java代码

通过要分析的这个关键字的key,搜索了一下,发现有2个地方是比较像的,点击第一个先进入看看

看着

在Vue移动端应用中,若需要通过微信登录获取用户手机号码,你需要利用微信的JS-SDK,这个过程通常涉及以下几个步骤: 1. **引入微信JS-SDK**: 首先要在项目中引入微信的JSSDK,可以在`index.html`文件的`<head>`部分添加微信提供的`jsapi_ticket`和`config`函数。 ```html <script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js" async defer></script> ``` 2. **配置微信安全域名**: 在微信公众平台上设置你的AppID对应的页面域名白名单,因为微信会对跨域请求做限制。 3. **注册事件监听**: 使用Vue的生命周期钩子或者自定义指令,在适当的时候调用微信的`onMenuShareTimeline`或`onMenuShareAppMessage`等方法,打开微信的授权界面。 ```javascript mounted() { this.$once('hook:beforeDestroy', () => { wx.removeStorageSync('code') // 清除缓存的临时code }) if (!wx.ready()) { wx.error({ errMsg: 'config:fail' }) } else { wx.login({ success (res) { // 获取到临时code,可以进一步换取access_token this.tempCode = res.code // 进行授权获取手机号码的流程... }, cancel() { console.log('用户取消授权') } }) } } ``` 4. **获取用户信息**: 调用`wx.getUserInfo()`,传入一个`options`对象,包含`success`回调函数,里面能得到用户的详细信息,包括手机号。 ```javascript getUserInfo() { wx.getUserInfo({ success(res) { const userInfo = res.userInfo let phoneNum = '' try { phoneNum = JSON.parse(userInfo).phoneNumber } catch (e) {} // 接下来处理手机号,比如发送验证码等 }, fail(err) { console.error('获取用户信息失败:', err) } }) }, ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值