攻防演练-信息收集源码getshell

admin 2024年10月10日17:11:54评论16 views字数 1088阅读3分37秒阅读模式

分享一下前段时间攻防演练中信息收集到源码getshell的思路(信息敏感,以厚码展示)。

一、信息收集源码

打开该gov靶标网站,暂时无法判断是否由建站系统搭建的。

攻防演练-信息收集源码getshell

通过右键查看html源码,看看是否有特征关键字。

这段内容看起来具有唯一性,尝试复制到github中搜索,看看是否可以找到对应的cms。

攻防演练-信息收集源码getshell

成功搜到了一套代码,下载下来看看是否是靶标系统的cms。

攻防演练-信息收集源码getshell

本地运行该cms系统,主页面很类似,应该就是同一套系统。

攻防演练-信息收集源码getshell

二、代码审计

1、fastjson反序列化

首先先看组件,使用了fastjson,该版本存在反序列化漏洞。

攻防演练-信息收集源码getshell

看看代码哪里使用了该组件

攻防演练-信息收集源码getshell

传入的参数可控,但不完全可控,accesstoken要先进入doget方法赋值给userinfo,再进行json转换。

攻防演练-信息收集源码getshell

进入doget方法

攻防演练-信息收集源码getshell

攻防演练-信息收集源码getshell

传入的accesstoken进入该方法后返回出来的参数无法控制,就算打入poc也无法利用漏洞。

攻防演练-信息收集源码getshell

代码中其他json.parse的地方也类似,请求无法完全控制,所以直接pass,看看是否还有其他漏洞可利用

2、shiro鉴权绕过

shiro1.4版本存在鉴权绕过漏洞,无需登录就可以未授权访问

攻防演练-信息收集源码getshell

看看定义了哪些 URL 路径是可匿名访问。

bypass方法:http://xxxx/可匿名访问路径/..;/鉴权路径/xxxx/攻防演练-信息收集源码getshell

在本地复现一下,成功绕过权限校验,可未授权访问后台。

攻防演练-信息收集源码getshell

3、sql注入

mybatis xml中有使用拼接的sql语句

攻防演练-信息收集源码getshell

跟进到对应的content层接口代码。

攻防演练-信息收集源码getshell

攻防演练-信息收集源码getshell

构造数据包,本地复现延时成功

攻防演练-信息收集源码getshell

sqlmap也跑出来了。

攻防演练-信息收集源码getshell

这个sql注入可配合刚才的shiro鉴权绕过漏洞实现前台sql注入。但是sql注入也不太好拿shell,看看是否还有其他漏洞点。

4、shiro反序列化

在ApacheShiro<=1.2.4版本中AES加密时采用的key是硬编码在代码中的,于是我们就可以构造Remembe Me的值,然后让其反序列化执行。

一般来说shiro1.4.0版本是很难进行反序列化利用的,因为该版本的shiro密钥不是硬编码在代码里的,每次运行代码都会随机生成新的shiro密钥,通过爆破密钥是很难爆破出来的,如果开发将密钥手动硬编码在代码里面,即使使用的是高版本shiro,也可以利用shiro反序列化。

亏前面审了这么久,原来该cms直接将shiro的密钥手动硬编码在代码里面了,这不是直接送漏洞上门了吗。只要该靶标搭建系统的时候没有将shiro密钥修改,就可以利用shiro反序列化漏洞。

攻防演练-信息收集源码getshell

三、漏洞复现

直接使用工具梭哈靶标系统,居然没有waf,直接拿下。

攻防演练-信息收集源码getshell

攻防演练-信息收集源码getshell

原文始发于微信公众号(有恒安全):攻防演练-信息收集源码getshell

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月10日17:11:54
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   攻防演练-信息收集源码getshellhttps://cn-sec.com/archives/3249256.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息