去哪儿旅行JS逆向:__m__加密和请求头键值对加密(上篇)

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 去哪儿旅行JS逆向:__m__加密和请求头键值对加密(上篇)


🔍 引言

去哪儿旅行平台使用了复杂的加密手段。本篇将重点解析__m__请求头键值加密的实现,关于调试过程和逆向方法欢迎指正。

🔍 JS逆向步骤详解

1️⃣ 抓包关键参数

首先,我们使用抓包工具捕获目标网站的网络请求,找出加密的关键参数:

请求头:键值同时加密,pre参数加密

请求参数加密:m Bella

通过分析,我们发现__m__参数是经过加密的,接下来需要定位加密代码。

2️⃣ 断点调试

我们在浏览器的开发者工具中进行断点调试:

找到__m__参数加密位置:先定位到__m__参数的生成位置,跟踪函数调用,找到加密函数encrypt。

encrypt又调用了encryptFunction加密函数。

分析加密算法:通过跟踪加密函数的调用,发现使用了SHA1和MD5加密算法。

请求头加密位置:搜索headers,观察本地变量的值变化,找到请求头键值的赋值位置。

跟踪函数调用,找到实现为getToken方法。

3️⃣ 扣JS代码

将关键的加密代码扣取下来,根据其逻辑进行逆向分析。

4️⃣ Python调用

使用execjs库调用JS代码,实现参数的逆向解密,并打印结果。


toddli
+关注
目录
打赏
0
0
0
0
28
分享
相关文章
vite3+vue3 实现前端部署加密混淆 javascript-obfuscator
【11月更文挑战第10天】本文介绍了在 Vite 3 + Vue 3 项目中使用 `javascript-obfuscator` 实现前端代码加密混淆的详细步骤,包括安装依赖、创建混淆脚本、修改 `package.json` 脚本命令、构建项目并执行混淆,以及在 HTML 文件中引用混淆后的文件。通过这些步骤,可以有效提高代码的安全性。
235 2
vite3+vue3 实现前端部署加密混淆 javascript-obfuscator
【11月更文挑战第7天】本文介绍了在 Vite 3 + Vue 3 项目中使用 `javascript-obfuscator` 实现前端代码加密混淆的详细步骤。包括项目准备、安装 `javascript-obfuscator`、配置 Vite 构建以应用混淆,以及最终构建项目进行混淆。通过这些步骤,可以有效提升前端代码的安全性,防止被他人轻易分析和盗用。
585 0
js逆向实战之烯牛数据请求参数加密和返回数据解密
【9月更文挑战第20天】在JavaScript逆向工程中,处理烯牛数据的请求参数加密和返回数据解密颇具挑战。本文详细分析了这一过程,包括网络请求监测、代码分析、加密算法推测及解密逻辑研究,并提供了实战步骤,如确定加密入口点、逆向分析算法及模拟加密解密过程。此外,还强调了法律合规性和安全性的重要性,帮助读者合法且安全地进行逆向工程。
131 11
网易云音乐搜索接口JS逆向: Params、encSecKey加密和AES实战
网易云音乐搜索接口JS逆向: Params、encSecKey加密和AES实战
413 4
国标非对称加密:RSA算法、非对称特征、js还原、jsencrypt和rsa模块解析
国标非对称加密:RSA算法、非对称特征、js还原、jsencrypt和rsa模块解析
400 1
对称加密算法解析:DES、AES及其在`pycryptodome` 和 `crypto-js` 模块中的应用
对称加密算法解析:DES、AES及其在`pycryptodome` 和 `crypto-js` 模块中的应用
251 1
烯牛数据JS逆向:MD5数据加密?不存在的!
烯牛数据JS逆向:MD5数据加密?不存在的!
92 1
雪球JS逆向:阿里系加密acw_sc__v2和反debugger
雪球JS逆向:阿里系加密acw_sc__v2和反debugger
415 1
前程无忧搜索接口 JS 逆向:阿里系acw_sc__v2和Sign加密
前程无忧搜索接口 JS 逆向:阿里系acw_sc__v2和Sign加密
180 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等