某保险影像上传接口浅记

好久没写文章了,目前的工作基本不涉及到逆向,都快忘了还有这项技能了,刚好,最近遇到一个加密参数问题,浅记一下

接口分析

选择图片后上传

图中请求为我们需要分析的接口以及加密参数信息,浅搜一下

打上断点重新请求后,此处发现content_md5已经被计算出来了,换一种思路

找到content_md5第一次出现的位置进行分析,下xhr断点,重新执行

寻找加密点

打上断点,取消xhr,向上查看堆栈

找到这个断点,下上后,一直下一步找到加密点

由此看到主要加密函数为u.a.base64,加密值类型为arrayBuffer(base64转)

加密参数逆向

断点进入u.a.base64

也就是这个函数了,扣代码和其他方式都行,此处我偷懒了,往上翻发现了加密函数地址

进入对应的地址,copy下来地址,进行执行,也就是这里的md5函数

直接调用md5.base64("imgbase64")

比较

哦吼,不对。难道分析错了,淡定,网站上加密的是arraybuffer,此处需要进行转换一下。

function _base64ToArrayBuffer(base64) {
    var binary_string = window.atob(base64);
    var len = binary_string.length;
    var bytes = new Uint8Array(len);
    for (var i = 0; i < len; i++) {
        bytes[i] = binary_string.charCodeAt(i);
    }
    return bytes.buffer;
}

转换后执行,结果

一致,撒花

posted @ 2023-02-19 23:41  是四不是十  阅读(33)  评论(0编辑  收藏  举报