【安全测试】前端加密绕过!
原创
大表哥吆
大表哥吆
kali笔记
2026年7月2日 08:00
甘肃
在小说阅读器读本章
去阅读
在日常工作中,为了防止请求的数据被Burp等工具抓包,往往会在前端对请求数据进行加密,从而保证数据的安全性。而这要做真的会可靠吗?本篇文章,我们一起来探究!
这里,我们以某靶场为例。输入查询数据,进行查询,并在Burp中抓包。
抓到包后,明显看到数据是加密的。
接下来,让我们一起来看看他是如何加密的。
解密
查看前端 JS 文件:score-xxx.js,直接让AI分析这段JS
JS 中定义了以下常量:
// 被 XOR 混淆后的密钥 hex 字符串
CC = \"442d27187049c5828de39efdb0f1314827694a6941df9189eecba1aef03a5679\"
// XOR 混淆用的种子(seed)
EC = \"ln-score\"
// 两个混淆常数
SC = 17
bC = 31
解混淆函数 V0
// UTF-8 编码
function nn(e) {
return new TextEncoder().encode(e) // 字符串 → Uint8Array
}
// UTF-8 解码
function Fo(e) {
return new TextDecoder().decode(e) // Uint8Array → 字符串
}
// 核心解混淆函数
function V0(e, t) {
if (!e || !t) return \"\"
const r = aa(e) // hex字符串 → Uint8Array (待解密数据)
const n = nn(t) // seed字符串 → Uint8Array (XOR密钥)
const i = Uint8Array.from(r, (o, s) => {
// 对每个字节:先用公式生成混淆字节,再 XOR
const a = n[s % n.length] ^ (s * SC + bC) & 255
return o ^ a // 原文 = 密文 XOR 混淆字节
})
return Fo(i) // Uint8Array → 字符串
}
复现
接下来,就很简单了,将得到的Key给AI,让它写一个Burp插件,便可以很快解决数据加密问题。
安全建议
- • 只是简单的前端混淆加密只是起到了简单的障眼法,对安全影响意义不大。
- • 采用非对称加密,将私钥放服务端。
更多精彩文章 欢迎关注我们
基础教程 欢迎关注
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论