百度翻译逆向Acs-Token逆向百度翻译爬虫(技巧篇)

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

文章声明

本文章中所有内容仅供学习交流,严禁用于商业用途和非法用途,否则由此产生的一切后果均与文章作者无关,若有侵权,请联系我立即删除!

概要

- 该篇文章是基于translate接口的分析
- 用到的工具 Edge浏览器

逆向目标

求参数 Acs-Token

开始整活

抓包

- 直接输入中文或者英文, 翻译的顺序无所谓
- 打开F12, 定位到该数据包,可以看到请求头中携带了一个 Acs-Token 加密参数

在这里插入图片描述

参数定位及逆向

  • 使用搜索大法全局搜 Acs-Token

在这里插入图片描述

  • 搜索到两处,分别打上断点, 然后触发请求,最终定位到这里

    在这里插入图片描述

  • 遇到这种情况,往上找e是不太好找的, 直接从堆栈找,点击到这里发现是一个异步操作

    在这里插入图片描述

  • 这里打个断点,释放前面的断点,重新触发请求,断到zv(i, n, o, a, u, "next", e)这里,然后再去向上找堆栈

  • 然后你框框一顿找,发现怎么找都找不到啊, 几个函数来回调用,就是找不到在哪生成的加密,这个时候就要使用点非常规手段了

  • 直接搜索关键词encrypt,不要问我为啥搜这个,你玩多了你就明白了,搜到的地方也不多,其中看着比较关键的位置都打上断点,最终断在了这里
    在这里插入图片描述

  • 有没有发现很熟悉的画面,其实就是我们最常见的AES/DES加密

  • 加密的明文内容就是t

在这里插入图片描述

  • key和iv我这里就不泄露了,你们自己去调吧

加密测试

- 测试的网站: https://tool.lmeee.com/jiami/aes

在这里插入图片描述

  • 解密时把前面的两个时间戳给去掉,_也别忘记了

JS实现

// 声明.我没有测试,大致模板就是这样,如果网站的加密结果和这个结果不一样,就在下面代码的基础上修改一下即可
// 安装插件
npm install crypto-js
const CryptoJS = require("crypto-js");

let key = CryptoJS.enc.Utf8.parse(key); 
let iv = CryptoJS.enc.Utf8.parse(iv); 
let info = {
    mode: CryptoJS.mode.CBC,
    iv: iv,
    padding: CryptoJS.pad.Pkcs7
}
// 加密
let encrypt = CryptoJS.AES.encrypt('明文', key,info);
let Data = encrypt.toString(CryptoJS.enc.Utf8);
console.log(Data);

 
 
//解密
let decrypte  = CryptoJS.AES.decrypt('密文数据', key, info);
let text = decrypte.toString(CryptoJS.enc.Utf8);
console.log(text);

贴一下我的名片

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dh_浩开玩笑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值