您的位置:首页 > 房产 > 建筑 > 合肥新闻 今天 最新消息_开发商不给办房产证怎么办_国外网站排名 top100_seo优化工具软件

合肥新闻 今天 最新消息_开发商不给办房产证怎么办_国外网站排名 top100_seo优化工具软件

2024/12/23 3:12:10 来源:https://blog.csdn.net/Duke_LH/article/details/142381050  浏览:    关键词:合肥新闻 今天 最新消息_开发商不给办房产证怎么办_国外网站排名 top100_seo优化工具软件
合肥新闻 今天 最新消息_开发商不给办房产证怎么办_国外网站排名 top100_seo优化工具软件

最开始扒的时候版本号还是4.1,现在已经到了4.8了,原来的AES也没有了,现在都是魔改的加密方法,还整成了vmp。跟了一下整个流程,和原来的流程大差不差,h5st变长了,一共分9部分。简单走一下流程。

第一个加密参数 body
在这里插入图片描述
这里就是原生的SHA256,直接调crypto-js生成。
接着往下走跟到 sign方法里面

第二个参数也就是h5st第八段

在这里插入图片描述
跟进去就开始走vmp控制流了,对所有call这种调用方法的地方下断点。
先是通过_$y8方法生成一系列的环境值

在这里插入图片描述

在这里插入图片描述
对于这个参数可以写死,里面随机字符串生成方法直接用的4.1版本的代码

function bw() {var t, r = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {},n = r.size,e = void 0 === n ? 10 : n,o = r.dictType,i = void 0 === o ? "number" : o,u = r.customDict,a = "";if (u && "string" == typeof u) t = u;else switch (i) {case "alphabet":t = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";break;case "max":t = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-";break;default:t = "0123456789"}for (; e--;) a += t[Math.random() * t.length | 0];return a}console.log(bw({size: 11,dictType: "max",customDict: null}))

然后用上面生成的对象转json,先调用的Utf8.parse,再调用Base64.encode生成第八段。
接着走到下一个方法,它直接生成h5st,跳进方法里面下断点。

第三个参数是h5st第一段,日期格式化,直接用原来的代码

_$vF = function(e) {return e.concat};function xb() {var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : Date.now(), t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "yyyy-MM-dd", r = new Date(e), n = t, a = {"M+": r.getMonth() + 1,"d+": r.getDate(),"D+": r.getDate(),"h+": r.getHours(),"H+": r.getHours(),"m+": r.getMinutes(),"s+": r.getSeconds(),"w+": r.getDay(),"q+": Math.floor((r.getMonth() + 3) / 3),"S+": r.getMilliseconds()};return /(y+)/i.test(n) && (n = n.replace(RegExp.$1, "".concat(r.getFullYear()).substr(4 - RegExp.$1.length))),Object.keys(a).forEach((function(e) {if (new RegExp("(".concat(e, ")")).test(n)) {var t, r = "S+" === e ? "000" : "00";n = n.replace(RegExp.$1, 1 == RegExp.$1.length ? a[e] : _$vF(t = "".concat(r)).call(t, a[e]).substr("".concat(a[e]).length))}})),n}var b = Date.now();
var s = xb(b, "yyyyMMddhhmmssSSS");

继续往下走就到了test方法里面,生成一串字符串key

在这里插入图片描述

下一个加密参数是h5st的第五段Sign,调用魔改的SHA256,传参和4.1版本的__gensign一样,前后为test生成的key,中间夹着查询信息拼接成的键值对。

最后一个参数是h5st的第九段SignDefault,和上面一样调用魔改的SHA256,加密参数也是两边是key中间夹着键值对。

整个过程调用的加密算法都是魔改的,可以先把加密算法扣下来。全抠下来,加上一些小方法不到2000行,最后导出直接调用就好。

在这里插入图片描述

注意一点就是里面用到的那些大数组不要在定义的地方去复制,要在调用的时候去复制,有些中间做了变动。

最后放上访问成功的截图

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com