本文主要是介绍【JS逆向二】逆向解开某某教育网站的登录密码possword RSA加密参数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
逆向日期:2024.02.06
使用工具:Node.js
加密方法:RSA标准库
文章全程已做去敏处理!!! 【需要做的可联系我】
可使用AES进行解密处理(直接解密即可):AES加解密工具
1、打开某某网站(请使用文章开头的AES在线工具解密):MJ9s9FZ2/sLDGq7EbriaLloZegcK1DJ96H7S/mpFF92p+krvp83CtS4dq8HsHDpT4h1gXkawbRtZDJ6KiOUdeQ==
2、账号随便11位即可,密码随便,人机验证输入一下,点击登录后可在控制台的网络面板进行查看
3、ctrl+shift+F全局搜索【poaaword】,经过我七七九百天终于找到了,他在这里被加密,每次加密的结果任然不一样,但我在加密代码里看到了RSA,有可能是使用了RSA加密方法
4、当晚看到encrypt的参数值,发现这四个键值,幺,这不就是RSA加密吗,1024位的加密,还有key,他这个key里有参数,说明他已经把key密钥添加进了RSA里
5、哎幺,这密钥就搁上面呢,翻一下就找到了,而且我还看到他这个好像是调用的标准库,哪我们也直接调用标准库
6、我们本地调用库需要先安装库,然后将源代码的key给复制粘贴到我们本地的代码里,然后运行一下,每次结果都不一样
【附上源代码】
npm install jsencrypt --save 安装库
window = global;
// 安装 jsencrypt 非对称加密包
// npm install jsencrypt --save
// RSA非对称加密算法 可以加密任何字符串
// RSA为非对称加密算法,每次的加密结果都将不一样
const JSEncrypt = require('jsencrypt');
var encrypt = new JSEncrypt();
// 公钥
const publicKey = `
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDURMBwbg3EFHr7D0KtZV3f7SHf
Dp+M22VRys+HIHl/4mjGJivm5PbWLqlJnub/tZ+QUlO9IXjSXBWciGXhg8CRBd4S
vD9xLVvH6YrgpD1B3zar14bn8DV1WaimyWV1JwC5CMLUkC6qTkVGdbbpoaZvy/NT
kPkgp5AlLz7TZxoT8QIDAQAB
-----END PUBLIC KEY-----
`;
// RSA使用公钥进行加密
function encryptMessage(message, publicKey) {encrypt.setPublicKey(publicKey);var encrypted = encrypt.encrypt(message);return encrypted;
};// 加密需要加载公钥
console.log(encryptMessage('qweqweqweqweqwe',publicKey));
这篇关于【JS逆向二】逆向解开某某教育网站的登录密码possword RSA加密参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!