【JS逆向二】逆向解开某某教育网站的登录密码possword RSA加密参数

本文主要是介绍【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加密参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/683999

相关文章

SpringBoot中SM2公钥加密、私钥解密的实现示例详解

《SpringBoot中SM2公钥加密、私钥解密的实现示例详解》本文介绍了如何在SpringBoot项目中实现SM2公钥加密和私钥解密的功能,通过使用Hutool库和BouncyCastle依赖,简化... 目录一、前言1、加密信息(示例)2、加密结果(示例)二、实现代码1、yml文件配置2、创建SM2工具

Java内存分配与JVM参数详解(推荐)

《Java内存分配与JVM参数详解(推荐)》本文详解JVM内存结构与参数调整,涵盖堆分代、元空间、GC选择及优化策略,帮助开发者提升性能、避免内存泄漏,本文给大家介绍Java内存分配与JVM参数详解,... 目录引言JVM内存结构JVM参数概述堆内存分配年轻代与老年代调整堆内存大小调整年轻代与老年代比例元空

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

CSS3打造的现代交互式登录界面详细实现过程

《CSS3打造的现代交互式登录界面详细实现过程》本文介绍CSS3和jQuery在登录界面设计中的应用,涵盖动画、选择器、自定义字体及盒模型技术,提升界面美观与交互性,同时优化性能和可访问性,感兴趣的朋... 目录1. css3用户登录界面设计概述1.1 用户界面设计的重要性1.2 CSS3的新特性与优势1.

PostgreSQL数据库密码被遗忘时的操作步骤

《PostgreSQL数据库密码被遗忘时的操作步骤》密码遗忘是常见的用户问题,因此提供一种安全的遗忘密码找回机制是十分必要的,:本文主要介绍PostgreSQL数据库密码被遗忘时的操作步骤的相关资... 目录前言一、背景知识二、Windows环境下的解决步骤1. 找到PostgreSQL安装目录2. 修改p

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

在Spring Boot中实现HTTPS加密通信及常见问题排查

《在SpringBoot中实现HTTPS加密通信及常见问题排查》HTTPS是HTTP的安全版本,通过SSL/TLS协议为通讯提供加密、身份验证和数据完整性保护,下面通过本文给大家介绍在SpringB... 目录一、HTTPS核心原理1.加密流程概述2.加密技术组合二、证书体系详解1、证书类型对比2. 证书获

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

使用Python获取JS加载的数据的多种实现方法

《使用Python获取JS加载的数据的多种实现方法》在当今的互联网时代,网页数据的动态加载已经成为一种常见的技术手段,许多现代网站通过JavaScript(JS)动态加载内容,这使得传统的静态网页爬取... 目录引言一、动态 网页与js加载数据的原理二、python爬取JS加载数据的方法(一)分析网络请求1