目标网站:aHR0cHM6Ly93d3cubm1wYS5nb3YuY24vZGF0YXNlYXJjaC9zZWFyY2gtcmVzdWx0Lmh0bWw=

看这篇文章的前提是:读者已经成功请求到了200页面

一、抓包分析
打开F12,首先映入眼帘的是无限debugger,这是那三个经过ob混淆过的js做的手脚,这里我是用本地替换的方法过的(即找到启动debugger的函数然后把他删掉),在文末我会放出那三个js的代码(util.js、api.js、ajax.js)

然后需要解决的是某数独有的debugger,下面是解决方法

把这些反调过了之后就开始真正的抓包分析需要逆向的参数了

可以看到有三个参数是加密过的(sign、hKHnQfLv、8X7Yi61c),那就先看的sign,第一个解决了通过一些蛛丝马迹找到另外两个参数的加密位置

二、跟栈分析
sign参数生成:

先打个xhr断点

然后刷新一下,跟到箭头所指的位置

在sign这行打个断点再刷新一下,进到jsonMD5ToStr方法里,可以看到这是个平坦流,直接在return处下断,就可以知道其实他是对所请求的url进行了encodeURIComponent操作然后再MD5一下(经过测试该加密没有经过魔改)

sign参数解决后我们来看下剩下两个比较重要参数

hKHnQfLv、8X7Yi61c参数生成:

回到一开始下断的地方

这个this是XMLHttpRequest,现在很多站都喜欢对XMLHttpRequest.send和XMLHttpRequest.open进行暗改,从而让我们很难找到加密参数生成的位置(比如某数,某音)

那我们在控制台打印验证一下

这里的话,他是在XMLHttpRequest.open做手脚的,我们直接跟进来下断

可以看到原始数据经过_$45后,就有hKHnQfLv、8X7Yi61c了,我们继续跟进去看看

上图中红色框部分都是对url进行了一些判断操作(如果你的采集接口只有一个的话可以写死)

下面这句是对url进行一个toUpperCase操作,再通过HD方法生成16位数组,这个方法在生成200页面的时候用到所以不用扣

var _$L0 = _$HD(_$pi(_$6X(_$oa._$Gl + _$4p)));

然后携带刚才生成的16位数组进入生成 hKHnQfLv 的方法里

下面是这个方法的具体解释

function _$Sb(_$P7, _$2o) {  //_$2o是上面所生成的16位数组var _$DP = [];var _$jJ = '';var _$4p = _$J7(_$7b()); //这里生成32位数组,这两个方法在生成200页面的时候都用到 不用扣_$DP = _$DP[_$6_[1]](_$2o, _$P7, _$4o || 0, _$4p); //这里将16位数组和32位数组拼接 生成50位数组var _$L0 = _$14(744, 6, true, _$DP);  //将50位数组传入生成hKHnQfLvvar _$Vo = _$Ow + _$L0;_$ca = _$RD(_$k$(_$Vo), 2);  //跟8X7Yi61c有关return _$QZ[_$6_[5]](_$jJ, _$Eu, _$6_[6], _$Vo);
}

我这里就不跟进_$14方法再演示了,因为这个方法就是生成200页面的逻辑
这是跟完128位数组后面的操作截图

继续,我们跳出_$14方法,下面这句代码注意,这两个方法需要去扣,200页面的逻辑没用到

_$ca = _$RD(_$k$(_$Vo), 2);  //这里根据生成hKHnQfLv后的值经过两个方法生成一个字符串,这很重要 因为8X7Yi61c的生成跟这个小小的字符串有关

到此 hKHnQfLv 参数已经完毕,我们然后跳出_$Sb方法,来到这

箭头所指的就是生成 8X7Yi61c 的函数,跟进去

跟进来后可以看到他先给url加了点东西,然后Bg方法就是生成8X7Yi61c的,继续跟进来

这里的_$3V是需要自己扣的,里面需要用到window.ts的东西(第19个),还有_$6w方法也是需要扣的,这几个方法都是相对独立的,跟其他方法没有什么关联,所以比较好解决

其他的一些小细节只能靠你们自己去踩坑了,篇幅太长了,不想写了溜了溜了

三、请求验证

yjj某数后缀生成(1-15,js逆向)相关推荐

  1. 瑞数5维普期刊js逆向

    网址首页http://lib.cqvip.com/ 瑞数5跟瑞数4区别不大,检测的东西多了一点,不会补的话可以看前面的瑞数4补环境.瑞数五有几个小版本,加密入口隐藏了,正则匹配直接能找到入口.\S{4 ...

  2. 【瑞数5】浅谈某普期刊JS逆向的环境检测点

    [瑞数5]浅谈某普期刊JS逆向的环境检测点 前言 JS加载流程 第一个JS 第二个JS 第三个JS AST简单解混淆 环境检测 前奏 异步执行JS流程 高潮 运行结果 总结 鸣谢 前言 这几天把某期刊 ...

  3. JS逆向之补环境过瑞数详解

    JS逆向之补环境过瑞数详解 "瑞数" 是逆向路上的一座大山,是许多JS逆向者绕不开的一堵围墙,也是跳槽简历上的一个亮点,我们必须得在下次跳槽前攻克它!! 好在现在网上有很多讲解瑞数 ...

  4. JS逆向瑞数4算法专题一

    遇到无限Debugger怎么办 1.选择这个Never pause here 就可以了 或者 点击第三个 里面填上False 都是可以的 2. 使用本地替换 就可以了 3. 当我们遇到这种 异步的 就 ...

  5. js逆向之补环境过瑞数5.0某银河证券,你还在拿某药监局做案例?该换换啦.

    网址: aHR0cDovL3d3dy5jaGluYXN0b2NrLmNvbS5jbi9uZXdzaXRlL2Nncy1zZXJ2aWNlcy9zdG9ja0ZpbmFuY2UvYnVzaW5lc3NB ...

  6. js逆向案例-某数美

    目录 一.案例分析 二.fveify校验分析-滑块/点选 1.滑块 2.点选 三.动态的js参数名以及密钥获得方式 四.DES/滑块缺口/轨迹xyt代码 一.案例分析 点击查看案例网址 如图regis ...

  7. js 动态生成html(js根据后台返回数据生成html页面中的table标签)(转义字符)

    js 动态生成html table标签中内容js生成 html代码 js代码 js 动态生成html 触发事件传参字符转义 table标签中内容js生成 html代码 <div><t ...

  8. React学习笔记三 脚手架生成的index.js内容简介

    React脚手架生成的index.js内容简介 import React from 'react'; import ReactDOM from 'react-dom'; import App from ...

  9. 爬虫破解瑞数js逆向动态混淆

    巧用selenium破解瑞数js逆向 实战站点:湖北省生态环境厅:http://sthjt.hubei.gov.cn/site/sthjt/search.html?searchWord=%E7%A2% ...

  10. JS逆向寻找生成bid变量的加密算法,一顿操作猛如虎,结果发现原来是混淆代码

    分享一下最近我JS逆向的心得. 我最近使用Python爬取某个网站某个链接,用requests的get发送请求得到的status_code不是200,请求失败.在浏览器的开发者工具里查看该链接的详细信 ...

最新文章

  1. github上的图片当网络图片使用
  2. ajax返回一段html代码,【提问】ajax请求返回整个html页面
  3. poj - 3786 Repeater
  4. 微博运营与微博营销最易犯的20种错误,你犯了吗?
  5. 模拟数据库,表空间和数据文件损坏后的恢复操作
  6. Apache AB 压力测试
  7. python简单数据类型变量_python-2-变量和简单数据类型
  8. Atitit  深入理解命名空间namespace  java c# php js
  9. 解决microsoft visual c++ build tools安装包丢失或损坏
  10. 中班音乐计算机反思,中班音乐游戏打字机教案反思
  11. 第三方登陆之微博登录
  12. 如何找到刑事案件的辩点(律师角度)
  13. Uncaught DOMException: Blocked a frame with origin null from accessing a cross-origin frame.
  14. python 对文件夹下的所有图片进行重命名
  15. 【SwiftUI学习笔记】Git Repository Creation FailedEnsure the author information supplied in Xcode ...
  16. unity 碰撞检测的四种检测模式
  17. 【基操】word插入的表格无法修改列宽
  18. 为什么学python十大理由-python用于什么
  19. LeetCode第一题两数之和
  20. mysql的altertable_【编程词典】mysql ALTER TABLE语句

热门文章

  1. wince tcpmp移植相关
  2. FireMonkey 界面的玩法
  3. javaee 与mysql留言簿_基于jsp的留言板系统-JavaEE实现留言板系统 - java项目源码
  4. android p正式版一加6,一加6T出厂搭载Android P 将于11月5日发布tokyo hot n0727
  5. eclipse插件下载地址
  6. 23_Open_Loop
  7. 网络编程-UDP编程
  8. 超链接小点html,html超链接取消鼠标点指显示小手
  9. 小米原生浏览器标识.
  10. AdminLTE-2.4.10源码包