看了志远的公开课,自己做一下练手。
全国建筑市场监管公共服务平台(四库一平台)
先点到 数据这里打开f12看一眼 第一个就是
https://jzsc.mohurd.gov.cn/api/webApi/dataservice/query/comp/list?pg=1&pgsz=15&total=450
取这个地址的最后两个 comp/list 先全局搜索,在点开搜索,找到对应js,进souce下一下断点看看
,
好 ,断出来到这个地方,然后单步调试追栈找到他的加密方法哪里
好到了这里我们看到iv是m那么key就是f,复制个未解密的字符串,打开wt-js试一下(注意复制过来是16进制的,不是base64,记得选hex,要注意区分
ok,拿到解密,其他流程就不做赘述了,逆向完成。
总结
断到能确定的位置,再在此处下断,断住之后找第一个参数数组的第一个方法,此方法大概率是解密或加密方法
没找到有一种可能可以跳过这个异步,因为这个异步没有参与加解密,核心是找明文密文交界处
正常的往下追基本都能拿下
调试异步
第一个原则 能跳过就跳过
第二 遇见跳不过的要确定异步类型
(Promise.then这种的找他下面的 n=n.then(t.shift(),t.shift()) 然后找他的第一个
找到加密找不到明文key就对这个key.tostring()