一、访问目标网站,打开F12开发者工具,然后开始抓包
二、抓到一个登录包,密码加密了,我们输入的是123456,在这里显示的是
三、全局搜索,点击开发者工具右上角的三个点,选择搜索,输入关键字“Password”
四、搜索结果有好多个,挨个排查,发现这个login.js有点可疑,双击进入
五、明文数据都在formData里面,继续往下单步跟踪
六、走到这里,还是明文,但是执行完这句代码就变成了加密密文,所以关键代码是
dataPass.value = encrypted.toString();
七、往上看看加密过程,iv、key、des、Pkcs7,这明显是一个des加密的
八、继续放开这个数据包,查看提交的数据,和加密的结果一样的
九、算法实现
1、获取iv、key的值,在这里下断即可查看
2、代码实现
const key = CryptoJS.enc.Utf8.parse("151R715Z");
const iv = CryptoJS.enc.Utf8.parse("9Z83R3X6");
const encrypted = CryptoJS.DES.encrypt("123456", key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
}).toString();
console.log("加密后的密文:", encrypted);
3、另外,他这里iv和key每次刷新页面都会变化
关 注 有 礼
欢迎关注公众号:小酒馆文案
获取免费抽奖送书
原文始发于微信公众号(Web安全工具库):JS逆向 -- 某网站DES算法分析
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论