Java--jscmd RCE

jscmd rce

了解一下

ScriptEngineManager:是一个工厂的集合,可以通过name或者tag的方式获取某一个脚本的工厂,并且生成一个脚本的ScriptEngine.

ScriptEngine engine=new ScriptEngineManager().getEngineByName("JavaScript");

而ScriptEngine是一个脚本引擎,有一些操作方法

eval()用于执行命令

createBindings()生成Bingding对象

 

写一个js文件

 

 

首先传入jsurl

 

 

 

第一个是通过获取传入的jsurl,去访问获取js文件

eval(String script, Bindings n)
在脚本执行期间使用Bindings参数作为 的ENGINE_SCOPE Bindings执行ScriptEngine脚本。

 

 

 

然后生成engine去bing,存放数据

接着格式化jsurl参数,然后去eval解析执行js里面的内容

 

posted @ 2022-03-03 15:44  Erichas  阅读(381)  评论(0编辑  收藏  举报