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

记录下,用油猴Tampermonkey监听所有请求,绕过seesion

油猴Tampermonkey监听所有请求,绕过seesion

    • 前因后果
    • 脚本编写

前因后果

原因是要白嫖一个网站的接口,这个接口的页面入口被隐藏掉了,不能通过页面调用,幸好之前有想过逆向破解通过账号密码模拟登录后拿到token,请求该接口,不过网站有很多混淆代码,调试的头大了就放弃了;那么换个思路,登录成功后必定有个token存在seesion,那么我怎么拿呢,肯定在登录成功后,拿的响应的数据set到localStorage上,在写个点击监听器,实时把localStorage的token发到后端保存起来,那来实践下。

脚本编写

// ==UserScript==
// @name         chek
// @namespace    http://tampermonkey.net/
// @version      2024-11-15
// @description  try to take over the world!
// @author       You
// @match        *://*/*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @run-at       document-start
// @grant        unsafeWindow
// @grant        GM_xmlhttpRequest
// ==/UserScript==

重要参数
@run-at document-start //文档加载完成开始录制
@grant unsafeWindow //windwos权限产生
@grant GM_xmlhttpRequest //获取请求能力权限

关键代码:

(function() {function addXMLRequestCallback(callback){//实现逻辑省略.......//需要完整的例子关注  ++++++++++++++++++++++++++}'use strict';// 确保脚本只绑定一次点击事件window.addEventListener('load', function() {document.body.addEventListener('click', function() {var api_token = localStorage.getItem('API_TOKEN')console.log(api_token)GM_xmlhttpRequest({//这里发送请求到自己服务接口 把token固化下来});});});addXMLRequestCallback( function( xhr ) {xhr.addEventListener("load", function(){//判断页面加载状态的if ( xhr.readyState == 4 && xhr.status == 200 ) {console.log(xhr.responseURL);//判断是不是自己想要监听的URl地址  字符串就是 你需要监听的地址if ( xhr.responseURL.includes("返回token的url") ) {var data = JSON.parse(xhr.response)console.log('data2    :' + data.data.accessToken);localStorage.setItem('API_TOKEN',data.data.accessToken)}}});});
})();

看↓↓↓方格或搜索: 码猿趣事,回复关键字:monkey脚本持续更新中~

在这里插入图片描述

http://www.lryc.cn/news/487681.html

相关文章:

  • 服务器产品
  • pyhton django web集群基于linux定时任务
  • 探索 Python 字典的奥秘:Future 对象为何能成为字典的键?
  • 多品牌摄像机视频平台EasyCVR视频融合平台+应急布控球:打造城市安全监控新体系
  • Spark 中 RDD checkpoint 是通过启动两个独立的 Job 完成的。
  • 如何下载TikTok视频没有水印
  • 天童美语:提升孩子的自信心的方法
  • 【网络编程】字节序:大端序和小端序
  • 视频融合×室内定位×数字孪生
  • RK3568平台开发系列讲解(platform虚拟总线驱动篇)注册 platform 驱动
  • Jmeter进阶篇(26)杀掉Tomcat的几种方法
  • Solana 区块链的技术解析及未来展望 #dapp开发#公链搭建
  • SMO算法-核方法支持向量机
  • Java项目实战II基于微信小程序的科创微应用平台(开发文档+数据库+源码)
  • HTTP代理是什么,有什么用?
  • Postman之newman
  • 数据库查询表结构和数据量以及占用空间
  • android 性能分析工具(03)Android Studio Profiler及常见性能图表解读
  • vscode 执行 vue 命令无效/禁止运行
  • C++语言系列-STL容器和算法
  • 【Web前端】Promise的使用
  • TDK推出第二代用于汽车安全应用的6轴IMU
  • 免费S3客户端工具大赏
  • 前端访问后端实现跨域
  • TCP和UDP通信基础
  • 微服务中的技术使用与搭配:如何选择合适的工具构建高效的微服务架构
  • 找出字符串第一个匹配项的下标
  • 面向FWA市场!移远通信高性能5G-A模组RG650V-NA通过北美两大重要运营商认证
  • Matlab实现北方苍鹰优化算法优化随机森林算法模型 (NGO-RF)(附源码)
  • 搭建环境 配置编译运行 mpi-test-suite