当前位置: 首页 > news >正文

淄博手机网站营销型网站建设区别

淄博手机网站,营销型网站建设区别,知名做网站价格,怎么做电商创业前言 本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!本文章未经…

前言

本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者删除。

网址:aHR0cHM6Ly93d3cucGluZHVvZHVvLmNvbS9ob21lL21lZGljYWwv

目标:参数anti_content

1.抓包分析

接口:query_tf_goods_info

在这里插入图片描述

2.逆向分析

直接搜索anti_content进行定位,打上断点,然后单步调试

在这里插入图片描述

发现 t.sent就是我们需要加密参数,已经生成了,所以大概率是前面Object(x.a)()生成的

在这里插入图片描述

Object(x.a)()跟进去发现调了m方法,m方法调的是v方法,v方法里面还是一个控制流,单步调试会发现anti_content r.messagePackSync()里面生成了

在这里插入图片描述

然后看一下r是哪里来的,找一下同级作用域下定义r的位置,

在这里插入图片描述

发现是r = new({serverTime:e}),其中e是十位的时间戳,接下来找到i的定义位置,

在这里插入图片描述

这个明显是webpack打包的模块,可以打上断点然后进入n里面看看

在这里插入图片描述

那么大致的调用流程已经清楚了,

1.  i = n("febz")
2.  r = new({serverTime:e})
3.	anti_content_Promise = r.messagePackSync()  

r.messagePackSync()返回的是一个Promise对象,里面包含了我们需要的anti_content,

后面发现直接调用r.messagePack生成直接就是anti_content,就不用异步改同步了,可以直接拿到结果。

接下来就是扣代码环节

3.扣代码

Js逆向案例 Scrape Spa2(Webpack自吐)

Js逆向之Webpack原理及如何扣代码

对Webpack不熟悉的可以参考这两篇文章

把加载器拿下来,找个地方先放着
在这里插入图片描述
接下来我们进行模块自吐

注意传入的r,要和我们需要调用的模块保持一致 。

在加载器第一行打上条件断点

aaa[r] = e[r],false

在这里插入图片描述
然后在 控制台输入aaa = {} n = {},目的是定义一个空对象存放吐出的模块 和清空已缓存的模块

然后释放断点
在这里插入图片描述

此时aaa中获取到了所有我们需要模块,然后在控制台输入下面的代码,将对象合并成字符串,

xxx = Object.entries(aaa).map(([key, value]) => `"${key}":${value}`).join(",\r\n")
copy(xxx)

然后进行Js格式化,然后找个地方先放着

JS在线格式化

在这里插入图片描述

然后回到我们之前扣下来的加载器,定义一个全局变量,然后导出加载器,随后传入模块

get_anticontent = function (){i = xu.loader("fbeZ")xx = i({serverTime:Math.floor(Date.now()/1000)})anticontent = xx.messagePack()console.log("长度:",xx.messagePack().length)return anticontent}

然后在浏览器环境下调试一下

在这里插入图片描述

Ok,没问题,接下就是在Node环境下运行,开始补环境

4.补环境

注意一下常见的Node环境检测点即可,然后挂上代理开补。

借用一下大佬封装好的代理即可

function setProxyArr(proxyObjArr) {for (let i = 0; i < proxyObjArr.length; i++) {const objName = proxyObjArr[i]; const handler = {get(target, property, receiver) {console.log("方法:", "get", "对象:", objName, "属性:", property, "属性类型:", typeof property, "属性值:", target[property], "属性值类型:", typeof target[property]);return target[property];}};// 检查并初始化对象let targetObject = global[objName] || {};  // 在 Node.js 环境中使用 globalglobal[objName] = new Proxy(targetObject, handler);  // 在 Node.js 中使用 global}
}
setProxyArr(['window', 'document','location','screen','history','navigator'])

5.成功截图

在这里插入图片描述

http://www.dtcms.com/a/533723.html

相关文章:

  • 扬州有做义工的地方或网站嘛怎样设计电子商务网站的建设
  • 康复网站模板怎么做网站 组成
  • C语言的发展历史
  • 大数据和网站建设品牌餐饮加盟网站建设
  • 做企业规划的网站现在有专业做海鲜的网站没有
  • 【020】使用Google Test进行 C++ 单元测试:基于 CMake 和 FetchContent 的现代方法
  • 展开网站建设商城网站前台模板
  • 个人建站 wordpressuml电子商务网站建设文档
  • 做软件的网站phpwordpress防采集
  • 网站正在建设中 html 模板何做好网站建设销售
  • 数据库第三次项目实战
  • 合肥外贸网站建设公司排名网站建设项目实训报告
  • 免费网站的资源可以发公众号吗做产品表情的网站
  • Sdl窗口实现web view
  • 广东建设中标网站朝阳住房和城乡建设厅网站
  • dw做简易表格网站免费英文 网站模板
  • 微网站开发流程网页制作软件山水
  • 卢氏县网站建设推广深圳找做网站
  • dede模板蓝色大气简洁企业网站模板苏州哪家公司做网站
  • 【工业树莓派CM0 Dev Board】AI视觉应用部署方案:人脸检测
  • 网站建设报价单表格网站文章更新时间
  • 摄影网站源代码wordpress底部怎么改
  • 深圳设计功能网站免费搭建wordpress
  • 海南网站制作精准数据营销方案
  • 网站技术建设维护技术论文如何推广网店
  • ros2 launch 常用python模块详细使用范例
  • Spring AOP XML配置实战:传统方式的进阶应用与对比分析(含核心关键词)
  • 映像星球官网网页版入口 - 最新影视资源高清在线观看平台
  • 如何评判一个网站建设的怎么样怎么用html做移动网站吗
  • 苏州网站建设网站开发庐江网站建设