当前位置: 首页 > news >正文

某XX自考小程序的AES加密分析

前言

主要是报了自考在这个小程序上面做题,就研究了一下这个接口本文仅供学习交流使用,请勿随意传播。
如有侵犯你的权益及时联系我删除。

一、抓包分析
打开小程序,打开devtools 工具,这里就不啰嗦,直接上过程。

点击红框进入 。
一般的加解密的关键字都是decrypt,encrypt ,反正各种关键字使劲搜就完事了 。
我这里搜的是解密的关键词 decrypt 。。找到好多处。下断点测试 。

 

此处下断点 。

 可以看到加密方式是AES加密的 。其实他这里用到的是 CryptoJS 的前端解密的 。加密方式是 CBC-128 。

二、结束
CryptoJS 是一个三方的JS库。写一段代码证明一下。

function cryptoDecrypt_(e) {
var t = n.crpytoConfig.AES_IV
, o = n.crpytoConfig.AES_KEY
, c = e.replace(/\_/g, "/").replace(/\-/g, "+")
, a = CryptoJS.enc.Utf8.parse(o)
, u = CryptoJS.enc.Utf8.parse(t)
, p = CryptoJS.enc.Base64.parse(c)
, f = CryptoJS.enc.Base64.stringify(p);
return CryptoJS.AES.decrypt(f, a, {
iv: u,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
}).toString(CryptoJS.enc.Utf8).toString()
}
 
console.log(cryptoDecrypt_(str));

得到了明文

加密的方式也是一样的。整体来说还是比较简单的。

相关文章:

  • 【LeetCode刷题笔记】栈和队列
  • STM32——NVIC中断优先级管理分析
  • Spring Boot (三)
  • python实现全向轮EKF_SLAM
  • ip数据包
  • 媒体聚焦丨四维图新旗下杰发科技王璐:设计决定芯片质量
  • Nginx学习(在 Docker 中使用 Nginx)
  • JavaEE初阶学习:JVM(八股文)
  • CPS:实现销售和广告的完美结合
  • 安全框架SpringSecurity-1(认证入门数据库授权)
  • 开发知识点-NodeJs-npm/Pnpm/Vite/Yarn包管理器
  • 前后端开发迭代
  • 计算机毕业设计项目选题推荐(免费领源码)Springboot+MySQL智能购房推荐系统09040
  • Django——orm模块创建表关系
  • Rust教程6:并发编程和线程通信
  • 基于pytorch使用特征图输出进行特征图可视化
  • Spring Boot 校验用户上传的图片文件
  • 【Qt】撤销/恢复的快捷键
  • Git基本概念和使用方式
  • 【MySQL系列】第二章 · SQL(上)
  • 霍步刚任辽宁沈阳市委书记
  • 上海制造佳品汇大阪站即将启幕,泡泡玛特领潮出海
  • 1至4月全国铁路发送旅客14.6亿人次,创同期历史新高
  • 哪种“网红减肥法”比较靠谱?医学专家和运动专家共同解答
  • 金砖国家召开经贸联络组司局级特别会议,呼吁共同抵制单边主义和贸易保护主义
  • 外媒:初步结果显示,菲律宾前总统杜特尔特当选达沃市市长