某校家园登录(z科必然懂ta)

某校家园登录 如有侵权 深感抱歉,找我删除:

本文章仅供学习 如有 非法获动 与本人无关

抓包

抓包分析

请求头 信息

请求体 信息​编辑

请求头参数逆向

token

sign

请求体参数逆向

PassWord


某校家园登录 如有侵权 深感抱歉,找我删除:

wx : abcEGF618

本文章仅供学习 如有 非法获动 与本人无关

本程序是加壳的 直接找好心人脱一下

抓包

抓包检测 客户端证书校验 某安 或者 某巴克 文章中有讲

抓包分析

请求头 信息

请求体 信息

请求头参数逆向

token

全局搜索 发现有这么多 尝试 hook了 几个 发现没有我想要的

看抓包 在第一个数据包里 返回了个 token

猜测是不是 登录用的这个 token 通过对比 确实是的

那么 可以看到 在返回 token 的数据包 里 也有 sign token 的值 怎么来的呢

猜测 当前 token 是 下一次 打开app获取token 用的

因为在发的第一个请求包里 就有加密 然后 通过 frida hook 又无收获

其实猜测是对的

当前token

在次打开app 请求头的token

突发好奇 如果app清除数据打开 他是怎么 加密的 会不会是固定值呢

下图可以看到 清除数据 打开 没了token

sign值呢 我多清除数据 打开app 发现他固定

下面就是写请求获取token 不要懒 自己写 请求

sign

搜索一下 没多少 定位到这个方法

进去 看

CameraQuirks.m3016q(obj3 + c) 这个方法出的值 sign

接着往里进 成功找到加密方法

hook方法 加密值 和 登录的sign 值进行对比 (包一样的)

看入参 前面的是 请求体的值 后面是之前拿的token

使用 SHA-256 哈希函数计算 HMAC 值 之后 每个字节转换为两位小写十六进制字符串,然后将这些字符串连接成一个完整的十六进制字符串

加密代码

import hmac
import hashlib
import json


def Login_Sign(phone,password_encrypt,Token):
    key = "Anything_2023"
    data = json.dumps({"phone":phone,"password":password_encrypt,"dtype":6,"dToken":"0"}) + Token

    hmac_result = hmac.new(key.encode('utf-8'), data.encode('utf-8'), hashlib.sha256).digest()
    hex_result = ''.join(format(x, '02x') for x in hmac_result)

    return hex_result

请求体参数逆向

请求体 就一个 password 是密文 其他都是明文 具体可以看抓包分析

PassWord

一看就是哈希 只是不知道是不是 无加盐的哈希

通过工具 对我输入的密码 进行hash计算 然后就对上了

md5加密代码

import hashlib

def MD5(password):
    m = hashlib.md5()
    m.update(password.encode("utf8")) 
    return m.hexdigest()

然后本次 登录 圆满结束

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值