吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1316|回复: 7
收起左侧

[求助] 完美世界登陆接口js逆向问题

[复制链接]
Wxylkxy 发表于 2021-8-1 16:20
在做完美世界js逆向时遇到的几个问题。在找到了需要的rsa数据包时 我直接整个扔进了js调试工具里 第一个问题来了,部分数据出现了乱码, 图1
第二个诡异的问题,我如果手动打出 s = "…" 中间这三个点 这个字符串搜索会搜不到  复制原文中的却可以搜到  s = "…"  这两个明明一样啊  图2
即便我手动修改了 s = "…" 这个字符串 后面仍然有其他的错误 图3
这时我想会不会这个js调试工具格式化的问题   索性我没有格式化直接加载的 仍然有这个s字符串问题好在不是方块了而且只有这一处问题了  我手动修改了它成功加载

最大的问题来了
这是原本代码块的实现
公钥我也拿到了但是python执行会爆错找不到这个变量  求解!!            

我想不明白这个点 实测在js调试工具里是可以的拿到密文的。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

幽溪左畔 发表于 2021-8-1 22:11
没网址 也没图 =  =  怎么帮你
 楼主| Wxylkxy 发表于 2021-8-2 07:41
幽溪左畔 发表于 2021-8-1 22:11
没网址 也没图 =  =  怎么帮你

啊第一次发帖 当时有图 但是发出来就没了。。。不知道哪里错了我补上
 楼主| Wxylkxy 发表于 2021-8-2 07:42
Jack2002 发表于 2021-8-2 09:06
混淆过的JS片段看得头晕。
python报的错是没有定义JSEncrypt,检查一下js代码全不全,另外要注意文件的编码,不同的编码可能会影响代码的运行结果。
浏览器的控制台上也能写js调用加密解密函数,写完按回车就能看到运行结果;
我遇到了登陆需要加密的直接模拟登陆,登陆成功截取cookie后续使用,简单粗暴。
幽溪左畔 发表于 2021-8-2 09:17
本帖最后由 幽溪左畔 于 2021-8-2 09:22 编辑

乱码可能是因为 这款JS工具开发时的问题 不算大问题 目测是易语言开发的 你可以勾选UTF8解码试试

搜索不到是因为 双引号里面的是一个中文的省略号 (中文模式下shift + 6) 不是三个点

既然有了publicKey  为什么不用python的RSA加密呢?使用execjs执行需要补充不少变量

pip install pycryptodome
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_v1_5 as Cipher_pkcs1_v1_5
    def encryptPassword(self,password, publicKeyStr):
        # 1、base64解码
        publicKeyBytes = base64.b64decode(publicKeyStr.encode())
        # 3、生成publicKey对象
        key = RSA.import_key(publicKeyBytes)
        cipher = Cipher_pkcs1_v1_5.new(key)
        cipher_text = base64.b64encode(cipher.encrypt(password.encode())).decode()
        # 4、对原密码加密
        #encryptPassword = base64.b64encode(rsa.encrypt(password.encode(), key)).decode()
        return cipher_text
 楼主| Wxylkxy 发表于 2021-8-2 10:04
Jack2002 发表于 2021-8-2 09:06
混淆过的JS片段看得头晕。
python报的错是没有定义JSEncrypt,检查一下js代码全不全,另外要注意文件的编 ...

确实 控制台也可以正常拿到加密后的那个密码。 应该是python模块问题把感觉  我把我最后那个图的2827行 前面的 t. 去掉后可以正常拿到了。
 楼主| Wxylkxy 发表于 2021-8-2 10:07
幽溪左畔 发表于 2021-8-2 09:17
乱码可能是因为 这款JS工具开发时的问题 不算大问题 目测是易语言开发的 你可以勾选UTF8解码试试

搜索 ...

嗷嗷是六个点啊。        我还没学过 这个模块因为。我去试试!
我把 我那个js代码2827行 前面的t. 去掉以后execjs可以拿到了。 应该是变量的问题。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 00:32

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表