由信息泄露到云账户接管

由信息泄露到云账户接管

由信息泄露到云账户接管

由images.1.vip牵扯出的漏洞

目录遍历

测试目标小程序头像上传功能时发现文件地址链接访问一手,可以正常显示图片。

尝试上传其他类型的后缀会拉黑ip,那只能测试其他漏洞。

先看看这个图片地址,把后面路由地址删除后爆装备了,目录遍历。使用工具统计共计泄露22万份文件。

任意文件上传

这个存储桶可以任意文件上传,造成文件覆盖。

备份文件泄露

存储桶中泄露的文件主要都是用户头像,和商品图片。通过筛选文件后缀发现存在数据库和网站源码的备份文件。下载下载,统统下载。

数据库是mysql的,网站源码是php的。本地用phpstudy搭建mysql数据库,由于phpmyadmin无法导入大于5md的文件所以只能通过命令导入了。

phpstudy数据库文件夹相对路径在:\phpstudy\Extensions\MySQL8.0.12\bin

mysql -u root -p -e "CREATE DATABASE IF NOT EXISTS 库名;" && mysql -u root -p 库名 < 目标文件地址

信息泄露

在ybwm_v3_config表中泄露了多个key,经过整理共获得6个key:1个七牛云、2个阿里云、3个微信id

其中一个阿里云账户存在两个存储桶,一个桶可以任意文件上传,造成文件覆盖

另外在数据库中找到了另一个存储桶:oss4.1.cn,这个后续会继续进行渗透。

弱口令

在ybwm_v3_admins表中泄露了管理员帐户,回到小程序找到商城的后台地址,并成功登录到后台

备份文件分析

分析站点源码时注意到在根目录下存在.env文件,里面存有数据库(canyin、canyin、354AJP7p23kTNJwX)、REDIS的账号密码(MiIsg4LBP0)但只能本地连接。在后续爆破目录得到数据库管理工具:1.vip/web/adminer.php,登录后得到数据库的控制权

想要深度利用命令执行时,对方服务器的宝塔拦截了

由oss4.1.cn牵扯出的漏洞

任意文件上传

测试后发现这个存储桶存在任意文件上传造成文件覆盖

目录遍历

访问该存储桶依旧可以目录遍历,工具统计一共泄露了6844份文件

备份文件泄露

这个存储桶同样泄露了数据库、网站的备份文件

信息泄露

导入数据库后在eb_system_admin表中泄露了管理员账户密码,但是没有找到商城的登录地址只能废弃。

在eb_system_config表中获得4个key:1个七牛云、1个企业微信、1个小程序id、1个阿里快递查询id

说一说阿里快递查询id,这个功能是需要充值的

如果后面有泄露阿里快递查询id泄露的可以使用下方官方提供的脚本

# coding=UTF-8
import requests
host = 'https://wuliu.market.alicloudapi.com'
path = '/exCompany'
method = 'GET'
appcode = '你自己的AppCode'#开通服务后 买家中心-查看AppCode
querys = 'no=快递单号'
bodys = {}
url = host + path + '?' + querys
header = {"Authorization":'APPCODE ' + appcode}
try:
    res = requests.get(url,headers=header)
except :
    print("URL错误")
    exit()
httpStatusCode = res.status_code

if(httpStatusCode == 200):
    print("正常请求计费(其他均不计费)")
    print(res.text)
else:
    httpReason = res.headers['X-Ca-Error-Message']
    if(httpStatusCode == 400 and httpReason == 'Invalid Param Location'):
        print("参数错误")
    elif(httpStatusCode == 400 and httpReason == 'Invalid AppCode'):
        print("AppCode错误")
    elif(httpStatusCode == 400 and httpReason == 'Invalid Url'):
        print("请求的 Method、Path 或者环境错误")
    elif(httpStatusCode == 403 and httpReason == 'Unauthorized'):
        print("服务未被授权(或URL和Path不正确)")
    elif(httpStatusCode == 403 and httpReason == 'Quota Exhausted'):
        print("套餐包次数用完")
    elif(httpStatusCode == 403 and httpReason == 'Api Market Subscription quota exhausted'):
        print("套餐包次数用完,请续购套餐")
    elif(httpStatusCode == 500 ):
        print("API网关错误")
    else:
        print("参数名错误 或 其他错误")
        print(httpStatusCode)
        print(httpReason)

官方说明文档:https://market.aliyun.com/detail/cmapi021863#sku=yuncode15863000017

©版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容