实战-搞定小程序加解密通过遍历导致信息泄露
Yater 发表于 山东 渗透测试 1946浏览 · 2024-08-01 12:58

某次项目中常规打点结束后想着测一测逻辑漏洞,找到某公司的小程序
找了几个感觉可能存在越权的点,通过抓包看到请求数据和需要的返回数据都做了加密处理。

请求体还做个签名一次性校验,无法改包和重放

漏洞点:调用接口进行获取当前用户信息
http://xxx/xxid_info

随后对小程序进行反编译数据,由于反编译的源码并不是很完整,没办法动态调试。只能查看代码逻辑发现加密密钥的逻辑如下:
1、定义了两个常量
2、自实现了一个简单算法
3、对这两个常量进行混淆并将结果转为hex格式
4、取hex的前16位转为字符串作为aes的key

然后使用ecb模式,pkcs7填充得到加密数据

加密后的密文编码为base64格式,并将密文字符串中的+替换为-,将/替换为_

写个脚本还原真正的base64,成功解密数据

其中sign的计算逻辑为:md5(json数据+时间戳)

由于其中的id值不是随机生成,可通过遍历获取到他人敏感信息。
编写脚本实现可批量获取

未经允许,禁止转载

0 条评论
某人
表情
可输入 255
目录