"本文地址:https://www.cnblogs.com/zichliang/p/17346860.html

目标网站

aHR0cDovL2xkZ2d6eS5obmxvdWRpLmdvdi5jbi9sZGp5engvanl4eC9saXN0LnNodG1s

网站分析



经过浏览器抓包,我们可知这个网站会先发出一个412请求,然后附带一个js 然后返回正常的页面。

经过我们代码测试可知



如图所示 这两个cookie是我们所需要的。

抓包分析

然后我们通过fiddler去抓包看看这个412请求究竟返回给我们什么了,以及能否找到其他有用的信息。



结果刚用代理打开 就发现这个网站返回给我们一个崩溃的网站。



但是fiddler依然抓到了包,



流程分析

进过上面的抓包分析和浏览器抓包

我们就有个大题的思路了

然后我们画个思维导图

  • 第一个cookie 直接获取这个set_cookie 获得之即可。

  • 第二个cookie 我们还需要进到那个混淆的Zdrwk9P9he.js然后慢慢分析才能获得。

断点分析

首先进入这个混淆的Zdrwk9P9he.js

这类混淆一般来说底下都有个reload 以此来重载自己的网站

我们滑到最底下 然后打断点慢慢往上走



这个地方好像有点像我们需要的cookie 但是不太确定。

我们看看他的构成 即使不是我们现在的cookie 但感觉一定有点啥关系。

['ts=1682304195962',
'fp=3d50c2ad77e7457692ccfb0fab1b793b',
'ua=TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ…wLjAuMCBTYWZhcmkvNTM3LjM2IEVkZy8xMTIuMC4xNzIyLjU4',
'unknown=Y3B1Q2xhc3MsZGV2aWNlTWVtb3J5LGFyZUNvbG9yc0ludmVydGVkLG9zQ3B1']

之后清除cookie 然后把断点打在var m = o[d(1336, "Nuq%")]("&");这个位置

然后发现好像和我们刚刚看到的cookie不一样 说明还经过了一层加密

顺便按断点走



好像这个_0x312d0e(f, m) 就是二次加密的地方

扣代码

分析完毕,我们就开始扣代码了

这个代码在if 流程判断语句中 所以我们只需要看if里面的内容即可



其实在这上面已经暴露出来 o的生成逻辑了 之间扣就行了。

然而这个o 除了时间戳以外 其他写死就行。。。这是本人扣了大半天才发现的。

所以一定要 多测试几遍!!

所以要扣的其实只有_0x312d0e(f, m) 这个函数

如下图所示即是加密逻辑地点。

这里简单说一下

  1. AES加密
  2. 以第一个cookie的value 为 key
  3. cbc模式加密
  4. base64 加密
  5. ...

结果如下:

"本文地址:https://www.cnblogs.com/zichliang/p/17346860.html

JS逆向实战13——某市公共资源交易中心Cookie混淆加密的更多相关文章

  1. JS逆向实战3——AESCBC 模式解密

    爬取某省公共资源交易中心 通过抓包数据可知 这个data是我们所需要的数据,但是已经通过加密隐藏起来了 分析 首先这是个json文件,我们可以用请求参数一个一个搜 但是由于我们已经知道了这是个json ...

  2. JS逆向实战4--cookie——__jsl_clearance_s 生成

    分析 网站返回状态码521,从浏览器抓包来看,浏览器一共对此地址请求了三次(中间是设置cookie的过程): 第一次请求:网站返回的响应状态码为 521,响应返回的为经过 混淆的 JS 代码:但是这些 ...

  3. JS逆向实战9——cookies DES加密混淆

    cookie加密 DES 混淆 目标网站:aHR0cHM6Ly90bGNoZW1zaG9wLnlvdXpoaWNhaS5jb20vbWFpbi90ZW5kP05vdGljZUNhdGVJZD0xJk5 ...

  4. JS逆向实战5--JWT TOKEN x_sign参数

    什么是JWT JWT(JSON WEB TOKEN):JSON网络令牌,JWT是一个轻便的安全跨平台传输格式,定义了一个紧凑的自包含的方式在不同实体之间安全传输信息(JSON格式).它是在Web环境下 ...

  5. JS逆向实战2--cookie-AcwScV2加密—某招标信息网

    cookies的获取 首先拿到第一次访问原链接 拿到acw_tc的值,然后放到session中去 再用这个session再次访问原链接拿到js加载的加密的真实数据.用了一些反混淆. 最后获取这个数据中 ...

  6. JS逆向实战8——某网实战(基于golang-colly)

    其实本章算不上逆向教程 只是介绍golang的colly框架而已 列表页分析 根据关键字搜索 通过抓包分析可知 下一页所请求的参数如下 上图标红的代表所需参数 所以其实我们真正需要的也就是Search ...

  7. JS逆向实战7-- 某省在线审批网站params 随机生成

    参数分析 我们首先通过抓包 发现这个就是我们所需要的数据 然后我们通过fidder 发起请求 结果: 通过我们反复测试 发现这个params的参数是每次请求中都会变化的 断点查找 我们通过 这个t参数 ...

  8. JS逆向实战6-- x轴 y轴 过点触验证码

    点触验证码是一种常见的反爬手段 解决方案有两种:一种是直接解决,这需要深度学习机器学习等图像处理技术,以大量的数据训练识别模型,最终达到模型足矣识别图片中的文字提示和应该点击的区域之间的对应关系. 这 ...

  9. JS逆向实战1——某省阳光采购服务平台

    分析 其实这个网站基本没有用到过什么逆向,就是简单的图片base64加密 然后把连接变成2进制存成文件 然后用ocr去识别即可 !! 注意 在获取图片连接 和对列表页发起请求时一定要用一个请求,也就是 ...

  10. JS逆向之浏览器补环境详解

    JS逆向之浏览器补环境详解 "补浏览器环境"是JS逆向者升职加薪的必备技能,也是工作中不可避免的操作. 为了让大家彻底搞懂 "补浏览器环境"的缘由及原理,本文将 ...

随机推荐

  1. 点击按钮触发div颜色改变的几种写法

    目录 JavaScript 行内事件 onclick绑定 关于选取元素 关于改变颜色 addEventListener jQuery 获取元素 绑定事件 设置样式 css() 添加class Vue ...

  2. git命令2

    git status git status -s git diff git diff --cached --添加到暂存区成为快照 git add -A git add . --删除被git追踪的文件 ...

  3.  NuGet国内镜像

    NuGet国内镜像 https://nuget.cdn.azure.cn/v3/index.json

  4. squad经验总结

    啊美丽卡:M1A2 - TANKM2A3 - BLDL/M2A3M1126 - SCKMATV - RWS(电摇),ZCC(手摇)MATV(TOW) - TOW车M989 - 补给卡/运兵卡 俄军 8 ...

  5. find . -name "*.php" -execdir grep -nH --color=auto foo {} ';'

    find . -name "*.php" -execdir grep -nH --color=auto foo {} ';'

  6. Linux命令之定时调度-crontab

    以上cron命令格式为:* * * * * [root run-parts] command 前面五个*号代表时间,用数字,数字的取值范围和含义如下: 第一个*:分钟 (0-59)[整数] 第二个*: ...

  7. 为什么对1e9 + 7取模

    在刷题的时候,很多题目答案都要求结果对1e9 + 7取模 刚开始我非常不理解,为什么要取模,取模难道结果不会变吗? 答案是结果会变,但因为原本需要得出的答案可能超出int64的范围,比如他叫你计算50 ...

  8. Linux centos7.6 安装 docker

    1.安装官网教程 https://docs.docker.com/engine/install/centos/ 2.卸载之前的 docker sudo yum remove docker \ dock ...

  9. NET 实现 Cron 定时任务执行,告别第三方组件

    原文连接: (96条消息) NET 实现 Cron 定时任务执行,告别第三方组件_.net 定时任务_Phil Arist的博客-CSDN博客 代码: using System.Globalizati ...

  10. appium之手机操作的方法

    Appium内置方法,来操作手机.在做app自动化时,可以内置方法的基本上,对一些常用的手机操作进行方法的封装. 常用的方法有: 获取手机分辨率: driver.get_window(size) # ...