手注大佬带你如何误打误撞搞渗透
2020-07-19 21:31:45 Author: mp.weixin.qq.com(查看原文) 阅读量:5 收藏

本文记录一次springboot站点渗透,其实没有多高深的技术,仅分享思路。

手上接到一个站点测试任务,就一个登陆框,简单直接,只能硬着头皮上了。

信息搜集,目标为阿里云,发现目标主机开放80,3306,3389。mysql无法外连。3389开着,但暂时放一放,不到万不得已先不爆破。

先看web吧,看到tab上的小绿叶比较熟悉。

正好最近看到一些师傅写的相关springboot漏洞利用文章[1]。其中有说如何判断系统是否为springboot。小绿叶就是明显特征。还有就是报错页面,确实也是存在的(后面再说)。因此可基本判断站点为springboot框架编写。那就先扫一下是否有actuator配置不当。

emm,运气不佳,没扫出来(根目录下扫不出可以扫一下二三级目录,本次测试均失败)。那只能关注web功能本身了。幸好路还没给我们堵绝,注册看一下。

看到需要审核直接心里凉了半截。无奈先注册再说。注意图中框出的参数。

点击注册按钮后触发了报错页面(这条路也断了?)。

虽然报错了,但尝试登陆是成功的 :-)。但登陆进去之后。

WTF... 啥功能没有,这,,,怎么测?

ok,继续搞吧,不搞没饭吃啊 :-)。猜测用户没有审核通过,所以没有菜单和功能。但一个功能都没有是没想到的。在登陆页面看到一个html页面。访问一下

抓包尝试注入,全部返回ok,不像有注入。

自闭。。。

必须要柳暗花明啊,要不然没这篇文章了。。。

此处登陆框有验证码,人看着都有点困难,暂时没想要识别验证码爆破。手动试个弱口令,admin返回密码错误,乱输的用户名返回无用户,典型可爆破用户名,但一看验证码,em。。。先搁在一边。试了几个弱口令无果。又研究了注册功能。

可以改一下roleid,改成了0和1都没用,该没功能还是没功能。当时也不知道咋想的,把姓名改成了admin,注意这里的姓名其实没啥意义,登陆名用的是下面的一个红框框出的名字。

然后再次登陆后,我呆住了,菜单栏出来了,这算什么,逻辑漏洞?用name来判断是否为admin?

一瞬间狂喜,然后点了一下各个功能

果然,还是没有权限,大部分为403

不过好在多了那么多接口,随手在查询框出输了个',springboot 报错。sql注入存在

sqlmap跑了一下,由于是aliyun,表还没跑出来就被封了。换ip手注吧。奇怪的是使用报错注入竟然没拦截,sqlmap被拦可能发包频率太快。正好练一下手注的能力。常规的报错注入,最后拿到管理员密码hash。各大md5解密网站无解:-(

user表存在roleoid一列,看到admin的roleid为1(这里的roleid就是之前我们注册修改的roleid,当时修改为1,没成功,可能还有其他验证。)找到其他roleid为1的用户,

可以找到我们之前注册的一些测试用户。还有一个用户,用户名直接是中文,这谁受得了。搞一波密码,MD5解密

哦吼,结束了。

登陆系统

再也没有烦人的403了。

不过最终没有getshell,算是有点小遗憾。。。

References

[1] 文章: https://www.freebuf.com/news/193509.html

写在结尾

文章转自圈子社区成员srat1999的精华贴,特此感谢srat1999的分享输出。

文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!

扫二维码|关注我们

引领实战潮流,回归技术本质
汇聚行业新锐力量 推动网络安全进步
这是一个实战派白帽子的聚集地


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg5MTA3NTg2MA==&mid=2247484590&idx=1&sn=53b7223c12c684a4c677f45326d66081&chksm=cfd3a8d5f8a421c3bf4565ccc673e82c46b53611a6720158ad84ffd325d744d90b58497f1920&mpshare=1&scene=24&srcid=07190lLWqwJ8MtfERnww1DLB&sharer_sharetime=1595165501296&sharer_shareid=5191b3dcb328f693d5261ba6bca8d267#rd
如有侵权请联系:admin#unsafe.sh