某不知名博客 某不知名博客
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Carsaid

安全界的小学生
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Web应用程序

  • 云漏洞库

    • 腾讯云

      • Bucket任意文件上传
        • 1. 环境搭建
        • 2. 漏洞复现
        • 3. 漏洞修复
        • 4. 销毁环境
          • (1)销毁方式一
          • (2)销毁方式二
      • COS对象遍历
  • 漏洞库
  • 云漏洞库
  • 腾讯云
clincat
2023-04-17
目录

Bucket任意文件上传

# 腾讯云 COS 任意文件上传

# 1. 环境搭建

使用 TerraformGoat (opens new window) 搭建漏洞环境。

第一步,通过 docker 来运行工具 TerraformGoat :

  • 获取 TerraformGoat 镜像;
  • 运行 TerraformGoat 容器;
  • 进入 TerraformGoat 容器。
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_tencentcloud:0.0.7
docker run -itd --name terraformgoat_tencentcloud_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_tencentcloud:0.0.7
docker exec -it terraformgoat_tencentcloud_0.0.7 /bin/bash
1
2
3

第二步,为相应的环境 配置腾讯云访问密钥:

cd /TerraformGoat/tencentcloud/cos/unrestricted_file_upload/
vim terraform.tfvars
1
2

进入对应的环境配置目录,打开配置文件。

配置文件如下:

填写你自己的腾讯云 AK 与 KEY :

第三步,初始化 并 部署环境:

terraform init
terraform apply
1
2

初始化(时间可能较长,需耐心等待)。

部署环境,需要输入 yes 确认操作:

部署完成之后,将会返回存储桶的域名:

存储桶页面:

# 2. 漏洞复现

抓取存储桶的 HTTP 请求数据包,尝试访问a.txt文件,提示 404 不存在。

使用PUT方法 向目标存储桶上传一个a.txt文件。

PUT /a.txt HTTP/1.1
Host: hxlab-yyr41-1308708518.cos.ap-beijing.myqcloud.com
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
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
Connection: close
Content-Length: 12

This is aaa.
1
2
3
4
5
6
7
8
9

再次访问a.txt,可以看到文件内容,说明上传成功,存在任意文件上传漏洞。

再次上传一个a.txt文件,文件内容有所不同。

访问a.txt,可以看到新的文件内容,说明原先存在的文件会被覆盖。

# 3. 漏洞修复

注:修复方式不唯一。

修复前,可以上传任意文件:

进入腾讯云控制台,选择对象存储 --> 存储桶列表 --> 配置管理。

进入配置管理,修改配置项权限管理 --> Policy权限设置 --> 公有读写 --改为--> 公有读私有写,修改完成后点击保存。

再次上传文件,响应 403 拒绝访问,修复成功。

# 4. 销毁环境

练习完成之后,请立马销毁环境,防止:

  • 环境一直运行,持续扣费;
  • 环境是公网访问的,容易遭受攻击;
  • ...等问题

# (1)销毁方式一

运行以下命令,并输入 yes 确认销毁:

terraform destroy
1

# (2)销毁方式二

通过控制台进行销毁:

再次访问存储桶页面,将会提示 NoSuchBucket(没有找到存储桶),说明销毁成功。

编辑 (opens new window)
weblogic-cve-2021-2109
COS对象遍历

← weblogic-cve-2021-2109 COS对象遍历→

最近更新
01
API测试笔记
04-30
02
msfvenom
03-29
03
Metasploit
03-29
更多文章>
Theme by Vdoing | Copyright © 2023-2024 Carsaid | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式