本帖最后由 陆伯言 于 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.本地运行出现的问题如下
- const _0x3d940d = CryptoJS[_0xfdc6(‘x30x78x65’, ‘x7ax65x6ax4d’)][_0xfdc6(‘x30x78x31x35’, ‘x38x4ex6ax5
- d’)][‘x70x61x72x73x65’](AES_KEY);
- ^
- TypeError: Cannot read properties of undefined (reading ‘Utf8’)
复制代码
一些疑惑 本地使用nodeJS无法运行上述js代码,但是在线的部分网站可以运行,在线JS运行时要是标注解释器时nodeJS的也无法使用,是不是解释器和该代码冲突,如果是应该换用什么解释器,同时可以用pycharm编写后续post发包表单数据构造。 1.这种就可以正常运行出结果 2.这种是nodeJS的就不能
需求 1、求助大佬帮忙解答下,小白摸石头过河找不到方向,本地是否应该换另外一种JS编译器,是的话应该是什么; 2、或者其他的解决办法,能在每次提交数据表单时获取到这个seKey值,seKey是实时改变的,应该和时间戳有很大关系,但是源代码混淆了无法阅读。 |