爬虫逆向实战(三)--天某云登录

一、数据接口分析

主页地址:天某云

1、抓包

通过抓包可以发现登录接口是account/login
在这里插入图片描述

2、判断是否有加密参数

  1. 请求参数是否加密?
    通过“载荷”模块可以发现passwordcomParam_signaturecomParam_seqCode是加密的
    在这里插入图片描述
  2. 请求头是否加密?
  3. cookie是否加密?
  4. 响应数据是否加密?

二、加密位置定位

1、password

(1)查看启动器

查看启动器发现里面包含异步,所以无法正确找到加密位置在这里插入图片描述

(2)搜索关键字

搜索关键字password:发现有一处位置类似加密位置
在这里插入图片描述
在此处打上断点,再次点击登录,返现可以断住,并且a.value是明文,断点的一行是加密的,所以可以断定密码是在此处加密的
在这里插入图片描述

2、comParam_signature和comParam_seqCode

直接搜索comParam_signature可以发现只有一处位置有,并且是在请求拦截器中
在这里插入图片描述
在此处打断点,然后点击登录,发现可以断住,并且生成方法在这一行上方
在这里插入图片描述

三、扣js代码

将上方找到的加密位置代码扣出,缺啥补啥即可
源代码:

var CryptoJS = require('crypto-js')function desEncrypt(text, n) {var key = CryptoJS.enc.Utf8.parse(n),srcs = CryptoJS.enc.Utf8.parse(text),// CBC 加密模式,Pkcs7 填充方式encrypted = CryptoJS.TripleDES.encrypt(srcs, key, {mode: CryptoJS.mode.ECB,padding: CryptoJS.pad.Pkcs7});return encrypted.toString();
}function password_g() {var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "";return e.replace(/\s+/g, "")
}function password_f(e) {var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {};if (e && "string" === typeof e) {var t = n.text || "0", r = n.length || 24;if (e.length < r)for (var a = e.length; a < r; a++)e += t;elsee = e.substring(0, r);return e}
}function param_k() {var e, n, t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 32,r = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 16,a = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""), o = [];if (r = r || a.length,t)for (e = 0; e < t; e++)o[e] = a[0 | Math.random() * r];elsefor (o[8] = o[13] = o[18] = o[23] = "-",o[14] = "4",e = 0; e < 36; e++)o[e] || (n = 0 | 16 * Math.random(),o[e] = a[19 === e ? 3 & n | 8 : n]);return o.join("")
}function i(t, e) {var n = (65535 & t) + (65535 & e), r = (t >> 16) + (e >> 16) + (n >> 16);return r << 16 | 65535 & n
}function a(t, e) {return t << e | t >>> 32 - e
}function c(t, e, n, r, o, c) {return i(a(i(i(e, t), i(r, c)), o), n)
}function u(t, e, n, r, o, i, a) {return c(e & n | ~e & r, t, e, o, i, a)
}function s(t, e, n, r, o, i, a) {return c(e & r | n & ~r, t, e, o, i, a)
}function f(t, e, n, r, o, i, a) {return c(e ^ n ^ r, t, e, o, i, a)
}function l(t, e, n, r, o, i, a) {return c(n ^ (e | ~r), t, e, o, i, a)
}function param_p(t, e) {var n, r, o, a, c;t[e >> 5] |= 128 << e % 32,t[14 + (e + 64 >>> 9 << 4)] = e;var p = 1732584193, h = -271733879, d = -1732584194, v = 271733878;for (n = 0; n < t.length; n += 16)r = p,o = h,a = d,c = v,p = u(p, h, d, v, t[n], 7, -680876936),v = u(v, p, h, d, t[n + 1], 12, -389564586),d = u(d, v, p, h, t[n + 2], 17, 606105819),h = u(h, d, v, p, t[n + 3], 22, -1044525330),p = u(p, h, d, v, t[n + 4], 7, -176418897),v = u(v, p, h, d, t[n + 5], 12, 1200080426),d = u(d, v, p, h, t[n + 6], 17, -1473231341),h = u(h, d, v, p, t[n + 7], 22, -45705983),p = u(p, h, d, v, t[n + 8], 7, 1770035416),v = u(v, p, h, d, t[n + 9], 12, -1958414417),d = u(d, v, p, h, t[n + 10], 17, -42063),h = u(h, d, v, p, t[n + 11], 22, -1990404162),p = u(p, h, d, v, t[n + 12], 7, 1804603682),v = u(v, p, h, d, t[n + 13], 12, -40341101),d = u(d, v, p, h, t[n + 14], 17, -1502002290),h = u(h, d, v, p, t[n + 15], 22, 1236535329),p = s(p, h, d, v, t[n + 1], 5, -165796510),v = s(v, p, h, d, t[n + 6], 9, -1069501632),d = s(d, v, p, h, t[n + 11], 14, 643717713),h = s(h, d, v, p, t[n], 20, -373897302),p = s(p, h, d, v, t[n + 5], 5, -701558691),v = s(v, p, h, d, t[n + 10], 9, 38016083),d = s(d, v, p, h, t[n + 15], 14, -660478335),h = s(h, d, v, p, t[n + 4], 20, -405537848),p = s(p, h, d, v, t[n + 9], 5, 568446438),v = s(v, p, h, d, t[n + 14], 9, -1019803690),d = s(d, v, p, h, t[n + 3], 14, -187363961),h = s(h, d, v, p, t[n + 8], 20, 1163531501),p = s(p, h, d, v, t[n + 13], 5, -1444681467),v = s(v, p, h, d, t[n + 2], 9, -51403784),d = s(d, v, p, h, t[n + 7], 14, 1735328473),h = s(h, d, v, p, t[n + 12], 20, -1926607734),p = f(p, h, d, v, t[n + 5], 4, -378558),v = f(v, p, h, d, t[n + 8], 11, -2022574463),d = f(d, v, p, h, t[n + 11], 16, 1839030562),h = f(h, d, v, p, t[n + 14], 23, -35309556),p = f(p, h, d, v, t[n + 1], 4, -1530992060),v = f(v, p, h, d, t[n + 4], 11, 1272893353),d = f(d, v, p, h, t[n + 7], 16, -155497632),h = f(h, d, v, p, t[n + 10], 23, -1094730640),p = f(p, h, d, v, t[n + 13], 4, 681279174),v = f(v, p, h, d, t[n], 11, -358537222),d = f(d, v, p, h, t[n + 3], 16, -722521979),h = f(h, d, v, p, t[n + 6], 23, 76029189),p = f(p, h, d, v, t[n + 9], 4, -640364487),v = f(v, p, h, d, t[n + 12], 11, -421815835),d = f(d, v, p, h, t[n + 15], 16, 530742520),h = f(h, d, v, p, t[n + 2], 23, -995338651),p = l(p, h, d, v, t[n], 6, -198630844),v = l(v, p, h, d, t[n + 7], 10, 1126891415),d = l(d, v, p, h, t[n + 14], 15, -1416354905),h = l(h, d, v, p, t[n + 5], 21, -57434055),p = l(p, h, d, v, t[n + 12], 6, 1700485571),v = l(v, p, h, d, t[n + 3], 10, -1894986606),d = l(d, v, p, h, t[n + 10], 15, -1051523),h = l(h, d, v, p, t[n + 1], 21, -2054922799),p = l(p, h, d, v, t[n + 8], 6, 1873313359),v = l(v, p, h, d, t[n + 15], 10, -30611744),d = l(d, v, p, h, t[n + 6], 15, -1560198380),h = l(h, d, v, p, t[n + 13], 21, 1309151649),p = l(p, h, d, v, t[n + 4], 6, -145523070),v = l(v, p, h, d, t[n + 11], 10, -1120210379),d = l(d, v, p, h, t[n + 2], 15, 718787259),h = l(h, d, v, p, t[n + 9], 21, -343485551),p = i(p, r),h = i(h, o),d = i(d, a),v = i(v, c);return [p, h, d, v]
}function param_d(t) {var e, n = [];for (n[(t.length >> 2) - 1] = void 0,e = 0; e < n.length; e += 1)n[e] = 0;var r = 8 * t.length;for (e = 0; e < r; e += 8)n[e >> 5] |= (255 & t.charCodeAt(e / 8)) << e % 32;return n
}function param_h(t) {var e, n = "", r = 32 * t.length;for (e = 0; e < r; e += 8)n += String.fromCharCode(t[e >> 5] >>> e % 32 & 255);return n
}function param_v(t) {return param_h(param_p(param_d(t), 8 * t.length))
}function param_b(t) {return unescape(encodeURIComponent(t))
}function param_m(t) {return param_v(param_b(t))
}function param_g(t) {var e, n, r = "0123456789abcdef", o = "";for (n = 0; n < t.length; n += 1)e = t.charCodeAt(n),o += r.charAt(e >>> 4 & 15) + r.charAt(15 & e);return o
}function param_(t) {return param_g(param_m(t))
}function param_c(t, e, n) {return param_(t)
}function get_password(account, password) {return encodeURI(desEncrypt(password, password_f(password_g(account))))
}function get_params() {var n = (new Date).getTime() - 1884var t = "s54zv9bm1vd5czfujy6nnuxj1l4g2ny6"var r = param_k()var a = param_c(n + r + param_c(r + t + n));return {'referrer': 'wap','mainVersion': 300031500,'comParam_curTime': n,'comParam_seqCode': r,'comParam_signature': a,'isCheck': true,'locale': 'zh-cn',}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/96257.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Lnton羚通关于PyTorch的保存和加载模型基础知识

SAVE AND LOAD THE MODEL (保存和加载模型) PyTorch 模型存储学习到的参数在内部状态字典中&#xff0c;称为 state_dict, 他们的持久化通过 torch.save 方法。 model models.shufflenet_v2_x0_5(pretrainedTrue) torch.save(model, "../../data/ShuffleNetV2_X0.5.pth…

港科夜闻|香港科大校长叶玉如教授、香港科大(广州)校长倪明选教授等两校领导共同出席香港科大(广州)首批本科新生见面会...

关注并星标 每周阅读港科夜闻 建立新视野 开启新思维 1、香港科大校长叶玉如教授、香港科大(广州)校长倪明选教授等两校领导共同出席香港科大(广州)首批本科新生见面会。8月16日&#xff0c;香港科大(广州)首批本科新生参加了一次具有特殊意义的见面会。香港科大、香港科大(广州…

山西电力市场日前价格预测【2023-08-20】

日前价格预测 预测明日&#xff08;2023-08-20&#xff09;山西电力市场全天平均日前电价为341.71元/MWh。其中&#xff0c;最高日前电价为367.66元/MWh&#xff0c;预计出现在20: 30。最低日前电价为318.47元/MWh&#xff0c;预计出现在04: 15。 价差方向预测 1&#xff1a; 实…

Flink CDC系列之:基于 Flink CDC 构建 MySQL 和 Postgres 的 Streaming ETL

Flink CDC系列之&#xff1a;基于 Flink CDC 构建 MySQL 和 Postgres 的 Streaming ETL 一、技术路线二、MySQL数据库建表三、PostgreSQL数据库建表四、在 Flink SQL CLI 中使用 Flink DDL 创建表五、关联订单数据并且将其写入 Elasticsearch 中六、Kibana查看商品和物流信息的…

【Hibench 】完成 HDP-Spark 性能测试

&#x1f341; 博主 "开着拖拉机回家"带您 Go to New World.✨&#x1f341; &#x1f984; 个人主页——&#x1f390;开着拖拉机回家_Linux,Java基础学习,大数据运维-CSDN博客 &#x1f390;✨&#x1f341; &#x1fa81;&#x1f341; 希望本文能够给您带来一定的…

【C++】map和set的封装

回顾&#xff1a;之前我们一起学习了map&#xff0c;set&#xff0c;multimap&#xff0c;multiset的接口和相关介绍map和se详细介绍 还实现了AVL树以及RB树&#xff0c;旋转&#xff0c;旋转变色相信大家已经很熟悉啦手撕AVL和红黑树 本文将带大家一起封装map和set 目录 1.找…

在海外如何进行应用商店的关键词优化

分析市场&#xff0c;了解我们的应用类别&#xff0c;将我们的应用与竞争对手的优点和缺点进行比较&#xff0c;找到市场上的空白或所谓未满足的需求&#xff0c;并思考如何填补。 1、应用商店关键词优化。 关键词优化的目的是找到最相关的关键词 &#xff0c;并测试应用元数据…

[保研/考研机试] KY26 10进制 VS 2进制 清华大学复试上机题 C++实现

题目链接&#xff1a; 10进制 VS 2进制http://www.nowcoder.com/share/jump/437195121691738172415 描述 对于一个十进制数A&#xff0c;将A转换为二进制数&#xff0c;然后按位逆序排列&#xff0c;再转换为十进制数B&#xff0c;我们称B为A的二进制逆序数。 例如对于十进制…

创作的1024天 分享月入5K的副业心得

机缘 今天早上醒来打开电脑&#xff0c;和往常一样点开csdn&#xff0c;看见有一封私信&#xff0c;原来是系统通知&#xff0c;今天是我成为创作者的1024天&#xff0c;那就趁着这个机会&#xff0c;分享一下目前我月入5K的副业心得。我是一个普通人&#xff0c;最初想成为创…

ARM 作业1

一、思维导图 二、 1. 2. .text 文本段 .globl _start 声明_start:mov r0,#0mov r1,#0fun:cmp r1,#100bhi stopadd r0,r0,r1add r1,r1,#1b fun stop:b stop .end

【python办公自动化】PysimpleGUI中的popup弹窗中的按钮设置居中

PysimpleGUI中的popup弹窗中的按钮设置居中 背景问题解决背景 默认的popup弹窗中的OK按钮是在最下面偏左侧一些,有时需要将按钮放置居中 问题解决 首先找到pysimplegui源代码文件中popup的部分 然后定位到19388行,源文件内容如下 关于popup弹窗OK按钮的设置,将pad属性…

《合成孔径雷达成像算法与实现》Figure3.10

代码复现如下&#xff1a; clc clear close all% 参数设置 TBP 100; % 时间带宽积 T 7.2e-6; % 脉冲持续时间 t_0 1e-6; % 脉冲回波时延% 参数计算 B TBP/T; …

STM32 cubemx CAN

接收用到的结构体如下&#xff1a;CAN概念&#xff1a; 全称Controller Area Network&#xff0c;是一种半双工&#xff0c;异步通讯。 物理层&#xff1a; 闭环&#xff1a;允许总线最长40m&#xff0c;最高速1Mbps&#xff0c;规定总线两端各有一个120Ω电阻&#xff0c;闭环…

马上七夕到了,用各种编程语言实现10种浪漫表白方式

目录 1. 直接表白&#xff1a;2. 七夕节表白&#xff1a;3. 猜心游戏&#xff1a;4. 浪漫诗句&#xff1a;5. 爱的方程式&#xff1a;6. 爱心Python&#xff1a;7. 心形图案JavaScript 代码&#xff1a;8. 心形并显示表白信息HTML 页面&#xff1a;9. Java七夕快乐&#xff1a;…

Jenkins改造—nginx配置鉴权

先kill掉8082的端口进程 netstat -natp | grep 8082 kill 10256 1、下载nginx nginx安装 EPEL 仓库中有 Nginx 的安装包。如果你还没有安装过 EPEL&#xff0c;可以通过运行下面的命令来完成安装 sudo yum install epel-release 输入以下命令来安装 Nginx sudo yum inst…

【实战】十一、看板页面及任务组页面开发(二) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(二十四)

文章目录 一、项目起航&#xff1a;项目初始化与配置二、React 与 Hook 应用&#xff1a;实现项目列表三、TS 应用&#xff1a;JS神助攻 - 强类型四、JWT、用户认证与异步请求五、CSS 其实很简单 - 用 CSS-in-JS 添加样式六、用户体验优化 - 加载中和错误状态处理七、Hook&…

【C++】STL---list

STL---list 一、list 的介绍二、list 的模拟实现1. list 节点类2. list 迭代器类&#xff08;1&#xff09;前置&#xff08;2&#xff09;后置&#xff08;3&#xff09;前置- -、后置- -&#xff08;4&#xff09;! 和 运算符重载&#xff08;5&#xff09;* 解引用重载 和 …

科大讯飞星火模型申请与chatgpt 3.5模型以及new bing的对比

科大讯飞星火模型 申请科大讯飞星火认知大模型账号科大讯飞星火认知大模型使用1.界面介绍2. 在编程能力上与chatgpt 3.5对比科大讯飞星火模型chatgpt 3.5模型 3. 在图片生成能力上与new bing对比 总结 申请科大讯飞星火认知大模型账号 注册网址&#xff1a; 科大讯飞星火认知大…

CW12B-3A-RCWW12B-6A-RCW12B-10A-RCWW12B-20A-RCWW12B-30A-RCWW12B-40A-R导轨式滤波器

CW4L2-3A-R1 CW4L2-6A-R1 CW4L2-10A-R1 CW4L2-20A-R1 CW4L2-30A-R1导轨式滤波器 CW12B-3A-R CWW12B-6A-R CW12B-10A-R CWW12B-20A-R CWW12B-30A-R CWW12B-40A-R导轨式滤波器 CW12C-3A-R CWW12C-6A-R CWW12C-10A-R CW12C-20A-R CW12C-30A-R导轨式滤波器 CW4L2-3A-R…

步入React正殿 - State进阶

目录 扩展学习资料 State进阶知识点 状态更新扩展 shouldComponentUpdate PureComponent 为何使用不变数据【保证数据引用不会出错】 单一数据源 /src/App.js /src/components/listItem.jsx 状态提升 /src/components/navbar.jsx /src/components/listPage.jsx src/A…