如何实现一次基于CryptoJS的前端AES解密过程?
- 内容介绍
- 文章标签
- 相关推荐
本文共计734个文字,预计阅读时间需要3分钟。
1. 背景及业务需求,需要联动多个平台,包括各平台的模拟登录功能。已知加密前明文且常规登录。无验证码需求。某平台验证方式为:.login接口POST一串JSON字符串,格式如下:{account: ****}
1.背景业务需求,需要联动多个平台,涉及到各平台的模拟登录。
已知加密前明文且正常登录。(无验证码要求)
某平台验证验证方式为.\login接口POST一串json字符串
{ "account": "********", "password": "uR+dmpMdF9MRXfkBG3wQ+w==" }
其中account为用户名,是明文,而password是加密后的密文
2.准备工作ctrl+F5,未发现XHR请求,推测是前端本地加密.
F12 Network中选取JS项目。
显而易见,vue框架,方法应该就是在app.7d23ae43.js中
ctrl+F 键入encrypt
用过CryptoJS看得出,显而易见是CryptoJS的AES加密,模式为ECB,
但是并没有明文密钥,密钥是一个o(t)方法根据t参数动态改变的。
前面测试过,每次登录加密密文不变,所以肯定不是时间加密,那t应该是一个固定的值。
3.借尸/还魂这里我用了借尸还魂的方法
正巧本地有nginx,把该网页另存为下来,准备借尸。
本文共计734个文字,预计阅读时间需要3分钟。
1. 背景及业务需求,需要联动多个平台,包括各平台的模拟登录功能。已知加密前明文且常规登录。无验证码需求。某平台验证方式为:.login接口POST一串JSON字符串,格式如下:{account: ****}
1.背景业务需求,需要联动多个平台,涉及到各平台的模拟登录。
已知加密前明文且正常登录。(无验证码要求)
某平台验证验证方式为.\login接口POST一串json字符串
{ "account": "********", "password": "uR+dmpMdF9MRXfkBG3wQ+w==" }
其中account为用户名,是明文,而password是加密后的密文
2.准备工作ctrl+F5,未发现XHR请求,推测是前端本地加密.
F12 Network中选取JS项目。
显而易见,vue框架,方法应该就是在app.7d23ae43.js中
ctrl+F 键入encrypt
用过CryptoJS看得出,显而易见是CryptoJS的AES加密,模式为ECB,
但是并没有明文密钥,密钥是一个o(t)方法根据t参数动态改变的。
前面测试过,每次登录加密密文不变,所以肯定不是时间加密,那t应该是一个固定的值。
3.借尸/还魂这里我用了借尸还魂的方法
正巧本地有nginx,把该网页另存为下来,准备借尸。

