实战 | 记一次Spring boot任意文件上传

2023-03-15 7,877

前提:

在一次项目中获取了一套通用系统

框架是Spring boot

启动是War包启动

之前拿是通过替换私钥拿的,但小部分还是没开公钥登录

这时候就有人说为什么不通过写在定时任务反弹shell

也试过,不会返回,所以这个方案就取消了

咋不直接上传,因为上传的文件是到另外一个端口,而且不解析

所以就想到一个另外的思路,由于这套是通用的,包括他们安装目录也一样

替换他们的war包,先下载他们的war包

把war用压缩格式打开,然后添加马子

然后直接用burp上传抓包不太行,如图,会内容太大不显示,因为我们还是通过跨目录上传

所以写了个脚本

1.上传替换
2.要定时任务执行kill杀死当前进程 pkill -f ***.war
3.要启动war项目java -Dfile.encoding=utf-8 -jar ***.war --spring.config.location=application.properties

通用直接写脚本**

这里脚本是设置了代理,看看返回的包

显示是上传成功,看看web项目

如果直接替换,不重启war包是没效果的,如图

总结:

实战没用,只是说对于通用系统,部分利用的点不能利用的情况下,可以这样弄。所以个人觉得鸡助。

原创投稿作者:0003

本文作者:HACK_Learn

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/197601.html

Tags:
评论  (0)
快来写下你的想法吧!

HACK_Learn

文章数:142 积分: 323

微信公众号:HACK学习呀

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号