目标网页:https://m.gojoy.cn/pages/login/ 将我删除i ndex?from=%2Fpages%2Fuser%2Findex

需要工具:chrome和油猴

油猴代码:

// ==UserScript==
// @name Json.stringify
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @include *
// @grant none
// ==/UserScript== (function(){
"use strict";
var rstringify = JSON.stringify;
JSON.stringify = function(a){
console.log("Detect Json.stringify", a);
return rstringify(a);
}
})();

第一步,F12,在第三行数字上,右键选择 Add conditional breakpoint, 用于越过反调试

如果还是卡住那么,点击这个,变成蓝色

然后点击 

第二步,如果已经加载完成了, 随便输入账号密码,点击登录,查看Network里的新url。发现是login为登录请求

点击查看,发现下面有一串看不懂的参数,猜测这就是将账号密码等东西进行加密得出来的

尝试一、全文搜索username , password   以找不到,失败告终

尝试二、查看以什么格式加载的

首先看到Response Headers中有个Access-Control-Allow-Credentials:true 说明这个是个跨域请求

关掉详细信息后看到是  xhr 方式加载

打 XHR断点,输入 相应的字串,进行HOOK

上述完成后,再次输入好账号密码,登录

如果没问题的话就会停在

call stack(回调调用栈)中,一个个往下点击,直到看到类似于ajax加载的格式代码

so,找到了s这个位置就很像ajax,然后在3643那个位置点击左键,设置断点

先点击让当前代码先执行完毕,重新点击页面的登录按钮

没什么意外就会停在s这个位置,从上到下将t,y,h,Q,u,d,全部在console中打印出来

看到u的值证明没找错!!!说明就是通过这里进行与后端的通信,且根据Q这个函数进行的将u内容进行不知名的操作

所以可以猜测应该是这里得出了上面request中那一串很长的参数

双击上面输出内容中native code 就会跳转到函数定义 (一般而言,natvie code是跟不进去的)

跳转后,找到这个函数return,所以点击 { ,找到对应的 } ,找到返回值位置return a[o.m[[o.m.i[";"]]].q](o.m[[o.m.i[";"]]].x),给其打上断点

然后,还是先让当前跑完,重新点击登录,然后就会停在新增加的断点位置

接下来,在console打印出返回值

出现个与login网页中很相似的参数值,那么还是让当前跑完,然后点击Network查看最新的login的详细信息,看看是不是一样的

然而很显然一模一样!!!!

所以说这个函数 , 对username和password操作后的出来的

那么此时入口发现了,之后只需要execjs包执行或者,将js代码翻译为python代码放进爬虫中操作就可以了

上面为最常用的操作

============================================================================

接下来油猴脚本操作方式效果一样,但是更快速定位!!!!

建好脚本后开启,如何使用脚本,写脚本这里暂不论述

输入好账密后点击登录,console就会打印出下图 ,然后点击红框位置,跳转后打上断点

先执行完毕后,再重新点击登录,查看调用栈,点击s

跳转后,拖动滑动条到最左边,看到位置2就和上面的所找到的js函数一摸一样,方便很多对吧!!!!

最新文章

  1. 使用bootstrap tooltip控件动态修改提示内容
  2. 一次Redis的使用Bug记录(exec)
  3. C#使用委托进行异步编程。
  4. HDU 1011 (树形DP+背包)
  5. Swift实战-QQ在线音乐(第二版)
  6. 更改Android AVD路径
  7. ssh 设置免password登录
  8. mysql 一个较特殊的问题:You can't specify target table for update in FROM clause
  9. 前端图片预览,上传前预览,兼容IE7、8、9、10、11,Firefox,Chrome(学习到的知识)
  10. hibernate api
  11. 福州大学 Problem 2168 防守阵地 I
  12. Delphi的核心优势:三快一多
  13. mysql随记
  14. 初始化openresty开发环境
  15. sass学习小记
  16. LOJ.6235.区间素数个数(Min_25筛)
  17. bootstrap之navbar
  18. 洛谷3084 [USACO13OPEN]照片Photo
  19. getServletContext()接口解析(收藏)
  20. ora01219数据库未打开

热门文章

  1. flutter Oops; flutter has exited unexpectedly
  2. linux/windows/Mac平台生成随机数的不同方法
  3. IntelliJ IDEA 设置护眼背景色
  4. OpenID简介
  5. 导模块的细节:(跨文件导入模块 &模块的两种执行方式) | 包的概念与使用 | 包中的相对导入语法
  6. Win10无线网络配置VMware的nat网络
  7. 【科普杂谈】一文看懂大数据的技术生态圈,Hadoop,hive,spark都有了
  8. 色彩空间RGB/CMYK/HSL/HSB/HSV/Lab/YUV基础理论及转换方法:RGB与YUV
  9. 使用 docsify 創建自己的 markdown 文檔系統
  10. nginx一些高级配置