vps交流

[疑问] JS混淆后的代码扒到本地无法运行


本帖最后由 陆伯言 于 2022-7-16 15:04 编辑

JS混淆后的代码扒到本地无法运行
背景表述:工作需要在一个网站上填报数据,数据已经本地excel收集好,但是填报只能单项填写,故想用python编写小脚本程序批量提交。因工作原因无法放出网址。

网站分析
1、每次提交数据前,需要点开一个填表框架,会加载2个JS代码
NwVqIEYG3ebdApP.js;crypto-js.min.js
2、每次提交数据会产生一个值
seKey:e85cacbf856bec1835290aa45b56a8e20fe231a6b056b89df30b858ca83225d4774aa8a4ac069bb7dc003c561f069662

该值由上述两个js代码生成,但是NwVqIEYG3ebdApP.js是被混淆的无**常读取,seKey数据加密方式为AES,将代码扒下来后因为混淆无法在本地正常运行,求大佬支招。
但是在-部分在线JS网站上是可以正常运行
https://www.dute.org/js-run
https://jsrun.net/new?mode=black
代码放在这里
https://txtpad.cn/0716demo

本地环境问题
1.本地使用pycharm专业版,已经安装nodejs插件,配置好环境变量,运行别的不加密的JS代码可以正常使用。
2.本地运行出现的问题如下

  1.   const _0x3d940d = CryptoJS[_0xfdc6(‘x30x78x65’, ‘x7ax65x6ax4d’)][_0xfdc6(‘x30x78x31x35’, ‘x38x4ex6ax5
  2. d’)][‘x70x61x72x73x65’](AES_KEY);
  3.                                                                            ^
  4. TypeError: Cannot read properties of undefined (reading ‘Utf8’)

复制代码

一些疑惑
本地使用nodeJS无法运行上述js代码,但是在线的部分网站可以运行,在线JS运行时要是标注解释器时nodeJS的也无法使用,是不是解释器和该代码冲突,如果是应该换用什么解释器,同时可以用pycharm编写后续post发包表单数据构造。
1.这种就可以正常运行出结果
[疑问]  JS混淆后的代码扒到本地无法运行
2.这种是nodeJS的就不能
[疑问]  JS混淆后的代码扒到本地无法运行

需求
1、求助大佬帮忙解答下,小白摸石头过河找不到方向,本地是否应该换另外一种JS编译器,是的话应该是什么;
2、或者其他的解决办法,能在每次提交数据表单时获取到这个seKey值,seKey是实时改变的,应该和时间戳有很大关系,但是源代码混淆了无法阅读。