Python 爬虫进阶必备 | 某小众电商请求参数加密逻辑分析

咸鱼学Python

共 1474字,需浏览 3分钟

 ·

2021-08-17 19:21

点击上方“咸鱼学Python”,选择“加为星标

第一时间关注Python技术干货!


959db5ff0dfd1b453c2e117bda39b23d.webp

今日网站

aHR0cHM6Ly9saXN0Lm1vZ3UuY29tL3NlYXJjaC9nb29kcz9xPSVFNSVCNyVBNSVFOCVBMyU4NSVFOCVBMyVBNA==

加密分析

在这个站的页面上按 F12 没有反应,我以为有什么防 debugger 的操作,结果防了个寂寞,啥都不是

打开控制台,向下滑动刷新请求,找到页面的请求是下面这个

457f12e7de0808ec9f07097afbe882ab.webp

注意:

虽然往下滑动可以加载新页面,但是这个请求并不是xhr

Networkxhr过滤器下是没有这个请求的,这个请求是个jsonp请求,是由js发起的,在Networkjs过滤器下可以找到这个请求,所以意味着用xhr断点无法调试这个请求。

这个请求的参数如下

38daf6607e8de8ce2edf47ba56b037f9.webp

一个个检索看看,感觉是比较简单的

485836c90723b8f1ab642549903a3d1b.webp

提交参数一般逻辑都写在一块,比较好维护,所以可能就会像下面这样检索一个就能把参数找的七七八八

40b13c0a0eac7af51bd4ab35ac70f946.webp

还有一个mw-sign在同一个文件里也能找到

c025388e1b31e95c5e25be159f8f9e06.webp

接下来一个个看逻辑,mw-appkey是一个switch逻辑

cac7aa8dd25697c6110cb6944b28dd40.webp

mw-ttid是一个字符串拼接的操作

this.__ttid = "NMMain@" + [this._type, this._platform, this._version].join("_")
// this._type = "mgj"
// this._platform = "pc"
// this._version = "1.0"

mw-t获取是当前的时间戳

mw-t = String(Date.now())

mw-uuid获取的cookie中的__mgjuuid

那么这个 cookie 是怎么生成的呢?经过分析cookie里的值是set-cookie返回的

f0086caed591b3d166f04c165ee18b4f.webp3e076b04ab7b52dba77802f8e16538d9.webp
// t = __mgjuuid
s = function(t{
            var e = document.cookie.match(new RegExp("(^| )" + t + "=([^;]*)(;|$)"));
            return null !== e ? decodeURIComponent(e[2]) : ""
}

mw-h5-os是一个固定值unkown

完成以上这些值的获取之后,合并到并传入到buildQuery方法中

e.headers["mw-sign"] = z(this.buildQuery(e))

这里的buildQuery是将e的内容用&拼接,然后将结果传入z

7f3b05ae1127e66c9c405fd57b092b30.webp

经过buildQuery得到的值如下

100028&pc-search-wall&unknown&1628739222904&NMMain@mgj_pc_1.0&c6603e42-558f-45b7-8423-9c7cba8990df&mwp.pagani.search&19&694b9a6ca4529f328a60392d782ec9a5&8f6d59b5ec26d24c15b05a608b1389da_1628668322693

将这串值传入z,得到的值是下面这串

bf7abd56fb1d32caf9ec62b21fc3d95b.webp

这串值就很简单啦,长度为 32 ,估计是hash相关的算法,对于1632的长度密文大家要有一定的敏感度

1febcbfd99d6288010d47f003e36d5b0.webp

放到网站上验证一下想法

c6b40a9b3df2106481e4f4a490557784.webp

md5的结果完全一致,所以z的逻辑就是一个md5算法。

以上就是本次的全部内容了,咱们下次再会~

安卓逆向快速入门适合初中高级爬虫攻城狮
67b38867239ecfd0938627b547e4b2ca.webp对了,看完记得一键四连,这个对我真的很重要。
浏览 44
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报