记一次机缘巧合的 Shiro 反序列化
目标服务器是使用 “富深协通(Finstone)- 协通智联(住房公积金)” 搭建的,平常还挺常见的。
这套系统环境中通常存在 tomcat + shiro + weblogic 三个服务,相关漏洞都可以尝试下。
使用工具对网站 web 界面(不放图了,看不出来啥,没参考意义)进行 shiro 反序列化扫描:
找到 key,但没找到利用链。此时换各类 shiro 工具都试了一遍也没有用,要放弃了。
但在后续对公众号进行测试时,发现从公众号获取到的域名与 web 站点域名一致。
尝试对公众号获取到的 URL 进行测试,成功触发 shiro 反序列化漏洞,获取到 root 权限:
注:此时的 key 居然和前面 web 站点的不一样,是 shiro-550 的默认值
kPH+bIxk5D2deZiIxcaaaA==
😶🌫️。
注:存在 shiro 反序列化的路径地址,不同地方搭建的系统可能会不一样,比如
/wechatxx/wx_oauth2ywbl.do
等。
在后续向服务器注入内存马时出现了问题,工具提示注入内存马成功,但实际却无法成功连接。
命令执行功能正常,尝试向 root 用户目录下写入 SSH 公钥,但连接服务器失败,发现服务器配置了不允许 root 用户无密码远程登录。
在 /opt/
目录下发现该服务器上还搭建了个 tomcat 服务。利用工具执行 curl cip.cc
命令确认服务器的外网 IP 地址,并且在 8090 端口发现存在默认 tomcat 界面。
使用 echo 成功向服务器上 tomcat 所在 web 目录写入 webshell,测试连接成功:
在获取服务器权限后,还在服务器中发现了 weblogic 相关服务目录:
从公众号进去的,当然可以找到微信 AppID 和 AppSecret 配置: