python调用js文件

2023-11-13

python调用js文件生成参数

JS逆向

我就随便找了一个网站https://cloud.kingdee.com/passport/#/auth/login
随手输入一个账号密码,抓包后发现请求带着加密的密码(相同密码每次请求字符串都不同)和加密的验证码(有时候不出现),判断是个动态加密,那就针对密码下手把
在这里插入图片描述
1、进入第一步JS中打上断点
在这里插入图片描述
在这里插入图片描述
2、回溯发现,前面三个栈的方法里没有出现加密的js语句,这里继续打断点在第四个异步请求的地方
在这里插入图片描述
3、发现在call之后密码就被加密了,这里需要打个断点,F9进入
在这里插入图片描述
4、进来就是一个循环,首先之前就确定,密码是在这里加密出来的,可以F9一步一步找到,但我顺手下滑了一下哎嘿。。。。。瞧瞧 password: this.encryptedData(this.passwordInput) ,写法多么正规

在这里插入图片描述
在这里插入图片描述
5、进入这个方法,一看关键词setpublickey,估摸着就是RSA加密,再看是webpackJsonp格式,意思就是用了n(442)里面的RSA加密方法处理了我的密码“123456”
在这里插入图片描述

安装exejs与nodejs

pip3 install PyExecJS 安装execjs
https://nodejs.org/en/download/ 下载安装nodejs,过程全部下一步,结束关闭
cmd中用node -v查看安装成功与否,成功的话会显示node版本

调用js生成参数

import execjs
node = execjs.get() #获取js环境
with open('./test.js', encoding='utf8') as f:
    js_code = f.read() #读取js文件

js_compiled = node.compile(js_code)#编译js
pwd = js_compiled.call("getpwd", "123456")#调用getpwd方法,传入密码
print(pwd)

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python调用js文件 的相关文章

随机推荐

  • 第6章 Linux目录文件与系统启动知识

    第6章 Linux目录文件与系统启动知识 6 1 Linux系统目录结构介绍 6 1 1 Linux与Windows目录结构对比 相信很多读者已经熟悉了Linux的目录结构 图6 1可以进一步帮助读者对比Windows和Linux这两个系统
  • 模糊图像数据集

    去模糊算法笔记博客 去模糊算法笔记 AI视觉网奇的博客 CSDN博客 GoPro https drive google com file d 1KStHiZn5TNm2mo3OLZLjnRvd0vVFCI0W view GoPro提供的模糊
  • umi request和mock(mock文件夹下的js文件)请求传递和接收参数

    目录 utils request js services test js mock test js 拓展 utils request js const fetch require dva fetch const checkStatus re
  • alien指令 linux,使用alien命令让deb包和rpm包互相转换

    OS version CentOS7 Debian9 发现alien这个命令时很惊喜 之前在debian上安装etcd找不到安装包感觉很不科学 有了alien命令事情一下就变简单了 这里以etcd为例 将etcd从rpm包转换成deb包 然
  • 【Redis7】--2.十大数据类型

    文章目录 Redis十大数据类型 1 Key通用命令 1 1keys 1 2EXISTS 1 3DEL 1 4EXPIRE 1 5TTL 1 6TYPE 1 7DBSIZE 1 8SELECT 1 9MOVE 1 10FLUSHDB 1 1
  • Python自动化测试专栏——元素定位不到常见问题及解决办法

    1 元素id动态变化 以如下图片举例 当我们要定位到该元素时 如果采用id属性定位 那么很有可能定位不到 原因 当我们刷新一遍网页时 会发现id值发生变化 表明它是个动态id 每次自动化时会因为值不同无法定位到该元素 解决方法 采用其他属性
  • SQL Server(三)-查询数据(1)

    一 普通查询1 查询stu info表中所有数据 SELECT FROM table source 2 查询表中指定字段的数据 查询出stu info表中 depart 院系 字段的值 即可知道有哪些院系的学生 SELECT depart
  • 9.4 sobel算子和scharr算子的比较

    点击此处返回总目录 这一节我们看一下sobel算子和scharr算子的比较 首先我们看一下他们的卷积核 sobel算子和scharr算子他们的卷积核大小是一样的 这意味着他们计算起来 工作量是一样的 不同在哪呢 sobel计算起来 精确度不
  • js判断输入框不能为空格或null值

    var sno sno val var sname sname val if sno indexOf gt 0 sno null sname indexOf gt 0 sname null alert 学号和名称不能为空格或null值 re
  • Git安装(Windows)

    一 下载 官网下载页面 https git scm com downloads 我选择的是Win 64位的安装版本 地址 https github com git for windows git releases download v2 3
  • ElasticSearch (五) Postman查询数据

    match all size from size match 返回指定字段 排序 sort range wildcard查询 合并查询语句 1 match all 匹配所有文档 match all 下面为查询结果 result size 例
  • 了解Wi-fi频段概念

    前言 信道带宽 应该了解wi fi频段 这样才能分析有多少信道带宽可用 以及如何在没有任何干扰 失真 的情况下有效地使用它 2 4GHz和5GHz频段可用于wi fi 2 4 GHz Wi Fi频段 在2 4 GHz频段 可用带宽为100
  • QT窗口缩放,自定义边框,无边框缩放拉伸

    目录 什么情况下需要自定义边框 效果图 一 基本思路 二 参考程序一 2 1 源码 2 2 思路说明 2 3 缺点说明 三 参考程序2 3 1 源码 3 2 思路说明 3 3 优缺点说明 四 参考程序3 4 1源码 4 2 思路说明 4 3
  • 无缘

    何时相逢 何时相见 闲暇的日子中 总抱着那一份的想念 昨日的黄昏 急匆匆赶到那约定的地点 道旁的杨树枝繁叶茂 晚风随着鸟鸣声悠扬 我徘徊在你的身旁 你驻足于她的身边 笑语从月牙一般的屋顶上掠过 而我却不屑看上你一眼 能否相逢 能否相见 寂静
  • React完整上手攻略(转)

    转自https typescript bootcss com tutorials react html 这篇快速上手指南会教你如何将TypeScript与React结合起来使用 在最后 你将学到 使用TypeScript和React创建工程
  • JDBC注册多个驱动

    我们可以在静态块中注册多个JDBC驱动 如下同时注册了mysql oracle驱动 try Class forName com mysql jdbc Driver Class forName oracle jdbc driver Oracl
  • ClearCanvas 源码解析 1

    国内 网上关于ClearCanvas开源的文章太少 最近刚好在做PACS 发现这个源码后 调试了一下 运行效果还可以 ClearCanvas是C 开源源码 对PACS的解析操作 底层和C 开源fo dicom有什么关系 还没有时间去研究 看
  • Python嵌套字典的遍历

    对于字典 d 1 1 2 2 3 4 44 5 55 6 7 7 1024 8 88 9 9 1 如何获取到 7 1024 中的1024 2 如何获取到所有key为7的value值 方法一 直接输出 d 1 1 2 2 3 4 44 5 5
  • C/C++面试题

    1 指针和引用的区别 答 引用是在C 中引入的 它们之间的区别有 1 非空区别 指针可以为空 而引用不能为空 2 可修改区别 如果指针不是常指针 那么就可以修改指向 而引用不能 3 初始化区别 指针在定义时可以不用初始化 而引用在定义的同时
  • python调用js文件

    python调用js文件生成参数 JS逆向 安装exejs与nodejs 调用js生成参数 JS逆向 我就随便找了一个网站https cloud kingdee com passport auth login 随手输入一个账号密码 抓包后发