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

Js逆向最新boss直聘__zp_stoken__-某boss逆向

           仅供学习交流使用,请勿用作非法用途,如有侵权,联系删除文章!!! 

           仅供学习交流使用,请勿用作非法用途,如有侵权,联系删除文章!!!    

url = "aHR0cHM6Ly93d3cuemhpcGluLmNvbS93ZWIvZ2Vlay9qb2JzP3F1ZXJ5PWphdmEmY2l0eT0xMDAwMTAwMDA="

        打开这个网站,刷新一下抓包,找到需要的数据接口。

        这里就不强调了,众所周知boss最有名的参数就是这个__zp_stoken__了,如果不携带这个参数请求,就会直接出现你的访问行为异常的情况,开始逆向分析,定位就不多说了,直接找到这里,进去就是一个大的控制流。

        这里也是直接把这个代码全部拿下来,开始补环境

        接下来就是补环境了,这个boss的环境特别多,这里我是使用一个脱环境脚本补的,这样就比较快,接下来说一些环境检测点吧

        1.最直接的就是top.self,frames,parent他们和window的关系,以及他们之间的关系,location里面是空的,值在top.location里面。

        2.一些比较常规的检测,原型检测和属性描述符检测和函数的toString检测,这里我直接通过重写Object.defineProperty进行绕过。

//保护Window原型
ldvm.toolsFunc.safeProto(Window, "Window");
//设置Window的原型链
Object.setPrototypeOf(Window.prototype, WindowProperties.prototype);
//设置Window原型属性
ldvm.toolsFunc.defineProperty(Window, "TEMPORARY", {configurable: false,enumerable: true,writable: false,value: 0
});

        需要注意的是原型的指向问题,这里可以看出来他们的区别了。

        3.navigator.plugins和navigator.mimeTypes,这里通过代理也可以补出来,通过一些补环境框架基本可以和游览器一样。

       4.这个boss没有检测canvas,它基本上没有怎么检测其他的对象,主要就是window对象里面的属性特别多,还有个关键的dcoumenta.all检测,这里找到了一个简单的绕过方法,当然还有其他的办法。

const v8 =require('v8');
const vm=require('vm');
v8.setFlagsFromString('--allow-natives-syntax');
let undetectable = vm.runInThisContext("%GetUndetectable()");
v8.setFlagsFromString('--no-allow-natives-syntax');document = {all:undetectable
};
document.all[0] = null;
document.all[1] = {"标签对象":"测试"};
console.log(document.all == undefined);
console.log(document.all !== undefined);
console.log(document.all[0] === document.all(0));
console.log(document.all[1]);

        5.一些node关键字检测,直接删除,还有就是in检测,就是这个方法hasOwnProperty方法。

        6.报错检测,比如这里有些对象可以被new,但是有些对象被new了,就会报错,这个时候,你需要主动抛出这个错误,包括下面那个也是的,调用报错。

        7.堆栈检测,这个直接hook就可以了。

        补完成后,再对Object对象进行hook,这里主要就是Object.keys和Object.getOwnPropertyNames

        然后就是这个网站的风控了,除了这个参数,还有就是ip和一个极验的九宫格验证码,这里不做分析。

        生成这个参数后。我请求的时候发现成功率在50%左右,后面发现同一个ip如果请求频繁了,就算这个参数生成正确,也可能通不过,还有就是请求的时候,需要请求两次,在第二次请求的时候,加一个time.sleep,这样的成功率又高一点。

        最后看一请求结果吧

        boss的这个参数我之前也是一直在补环境研究,终于还是功夫不负有心人,相信你们也可以的!!!

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

相关文章:

  • Oracle ORA-01653 错误检查以及解决笔记
  • wordpress 做购物网站购买主机可以做网站吗
  • C#合并产品价格对比实战
  • 链表OJ(十六)146. 模拟LRU 缓存 双向链表+哈希
  • 旧物新生:一款回收小程序如何让环保成为举手之劳
  • seo网站优化服务去哪个网站找题目给孩子做
  • MATLAB实现对角加载波束形成算法
  • 从嵌入式到社区物联网:基于Pegasus智能家居套件的全栈实验方案
  • Vue + Spring Boot 实现 Excel 导出实例
  • 服务器关闭 网站被kseo搜索引擎优化策略
  • 【Android】六大设计原则
  • 液压位置控制源代码实现与解析(C语言+MATLAB联合方案)
  • 技术拆解:基于成品源码的海外外卖跑腿平台部署指南
  • 宽城网站制作山东网站建设网站
  • 申论素材学习笔记-把握好人才工作辩证法
  • 深度学习入门(三)——优化算法与实战技巧
  • 最新短视频AI智能营销询盘获客系统源码及搭建教程 源码开源可二次开发
  • 易优cms仿站教程wordpress文章搜索排序
  • 什么网站能免费做简历wordpress汉字注册
  • 喜报!网易灵动荣获2025全球数贸创新大赛机器人赛道金奖
  • AI IDE/插件(二)
  • 一文掌控系统网络性能:Linux环境时延与带宽测试指南
  • Effective Python 第44条:用纯属性与修饰器取代旧式的 setter 与 getter 方法
  • 中国网站排名站长之家有哪些好玩的网页游戏
  • 从零开始:Godot打造2D像素冒险游戏
  • 全球十大互联网企业深圳网站设计专家乐云seo品牌
  • 如何进行后端开发:一个详细指南
  • 基于Spring Boot的酒店管理系统
  • 怎么用腾讯云服务器做网站建个人网站做导购怎么备案
  • 单页面网站设计有人做网站吗