渗透项目|越权跳转导致的flowable命令执行
2022-11-3 08:10:13 Author: 系统安全运维(查看原文) 阅读量:18 收藏

项目中遇到的问题,进行记录。

过程

在目标系统测试一段时间没有收获过后发现一个叫做学习平台功能模块处发生跳转到8092端口上去。

后续观察数据包的时候发现,跳转形式是
http://xxx.com:8092/login?username=xx&token=xxx

抱着试一试的心态试了一下,将userName换成了admin,重新访问后,直接以管理员的身份进入这个系统的后台。

后续了解到之前有人挖到过这个洞,但是甲方不收,就准备简单看一下这边的功能。

绕了半天在一个流程模板的功能点发现使用了一款叫做flowable的工作流引擎。

然后看了一下,发现了一个叫做shell任务的模块。

试了一下,在里面写入命令,但好像没有地方可以让这个任务直接运行起来,后续去看了一下文档,也没有找到特别多的可利用信息。

找了一圈得shell任务是怎么写的。

<serviceTask id="shellEcho" flowable:type="shell" >
<extensionElements>
<flowable:field name="command" stringValue="cmd" />
<flowable:field name="arg1" stringValue="/c" />
<flowable:field name="arg2" stringValue="echo" />
<flowable:field name="arg3" stringValue="EchoTest" />
<flowable:field name="arg4" stringValue=">" />
<flowable:field name="arg5" stringValue="D:\content\sec.txt" />
<flowable:field name="wait" stringValue="true" />
<flowable:field name="outputVariable" stringValue="resultVar" />
</extensionElements></serviceTask>

这边是图形化界面,可以直接进行配置,如下(当时写的是echo一个txt文件,没有截图):

但还需要让shell任务运行,后续看到他已经配好了一个完整的流程,就在开始流程后插入了这个shell任务。

然后保存后通过另一个点将这个新的模板进行部署,到现有的功能中去,意味着我只要去发起这个流程就能触发我的shell命令。

部署:

发起对应的流程:

开始尝试的是写入了一个txt文件,成功

然后尝试写入jsp文件,访问直接下载,其他目录也不行,应该是jar包那种环境

由于系统是Windows,将命令改成powershell的指令

再次发起流程,ok

总结

误打误撞,如果上次甲方接受了越权跳转的漏洞,那么可能就遇不到这个功能点了,存在运气成分。

作者:yueryou 原文地址:https://xz.aliyun.com/t/11144

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

如有侵权,请联系删除

好文推荐

红队打点评估工具推荐
干货|红队项目日常渗透笔记
实战|后台getshell+提权一把梭
一款漏洞查找器(挖漏洞的有力工具)
神兵利器 | 附下载 · 红队信息搜集扫描打点利器
神兵利器 | 分享 直接上手就用的内存马(附下载)
推荐一款自动向hackerone发送漏洞报告的扫描器
欢迎关注 系统安全运维

文章来源: http://mp.weixin.qq.com/s?__biz=Mzk0NjE0NDc5OQ==&mid=2247511692&idx=3&sn=46a99ee3137b0f9185559de8c0734f1b&chksm=c3087dfcf47ff4ea7de2a0a13666ad92601dd8a45eca552a6f1d4b1cdd5d89372b394ef4062b#rd
如有侵权请联系:admin#unsafe.sh