云上攻防--云服务&&对象存储(域名接管)&&弹性计算(元数据泄露)

对象存储

各个厂商对于对象存储的叫法不同,但是除了叫法基本没有其他区别。

  • 对象存储各大云名词:

阿里云:OSS 腾讯云:COS 华为云:OBS

谷歌云:GCS 微软云:Blob 亚马逊云:S3

对于对象存储的漏洞或者说错误配置点如下

权限配置错误

  • 权限Bucket授权策略:设置ListObject显示完整结构(类似于目录遍历)
  • 权限Bucket读写权限:公共读写直接PUT文件任意上传,由于管理员配置对象存储时错误配置公共读写权限,使得任何人都可以进行写入,通过PUT方法即可任意上传文件。

域名接管

对象存储可以配置域名映射,接管域名即是Bucket存储桶绑定域名后,访问域名即访问对象存储中的存储桶,当存储桶被删除而域名解析未删除,访问域名时候显示关键信息NoSuchBucket时可以尝试接管。

接管流程:

  1. 确认域名绑定存储桶(通过ping命令出现对象存储解析地址)
2. 通过域名访问存储桶提示NoSuchBucket(没有这样的桶)
3. 通过对象存储地址信息推断出存储桶名称、对象存储厂商、云存储所在城市
4. 去对应得厂商创建对应城市对应名称的存储桶
5. 再次访问域名即可访问到所创建的存储桶

当Bucket显示NoSuchBucket说明是可以接管的,如果显示AccessDenied则不行。

参考文章

阿里云 OSS 对象存储攻防

AK/SK泄漏:

通过泄露的AK/SK进行接管

  • APP逆向源代码
  • 小程序反编译
  • JS代码泄露
  • 代码托管平台泄露
  • 接口泄露

得到AK/SK之后可以利用云服务工具直接连接相应服务进行任意操作,例如各云厂商的官方工具、CF利用工具等。

云业务 AccessKey 标识特征整理

弹性计算

元数据泄露

  • 元数据

关于什么是元数据以下引用阿里云对于元数据的解释:

实例元数据(metadata)包含了弹性计算云服务器实例在阿里云系统中的信息,您可以在运行中的实例内方便地查看实例元数据,并基于实例元数据配置或管理实例。(基本信息:实例ID、IP地址、网卡MAC地址、操作系统类型等信息。实例标识包括实例标识文档和实例标识签名,所有信息均实时生成,常用于快速辨别实例身份。)

总的来说,元数据就是存储了一些服务器的关键信息。每个厂商的服务器都存在元数据,但是各个厂商的获取元数据的地址不同。

各厂商元数据获取地址:

阿里云元数据地址:http://100.100.100.200/latest/meta-data/
腾讯云元数据地址:http://metadata.tencentyun.com/latest/meta-data/
华为云元数据地址:http://169.254.169.254/openstack/latest/meta_data.json
亚马逊云元数据地址:http://169.254.169.254/latest/meta-data/
微软云元数据地址:http://169.254.169.254/
谷歌云元数据地址:http://metadata.google.internal/

具体查询方式可以查询云厂商官方说明

查询样式如下图:

  • 访问控制

访问控制是云厂商提供的一种运维手段,可以将管理员用户的权限进行拆分,将部分权限交给其他用户。从而控制对于云服务资源的访问。

各云厂商对于访问控制的名称不同,阿里云称之为RAM。

  • 利用条件
  1. 弹性计算配置RAM访问控制管理角色
  2. 获取服务器权限、发现SSRF漏洞、RCE等可以控制目标机器访问其他地址

配置RAM访问控制管理角色后获取元数据会多一项RAM。



依次进行访问特定地址后通过泄露的元数据信息得到AccessKeyId以及AccessKeySecret即可通过利用工具对目标账号下的资源进行接管,接管资源根据AK/SK的权限而定,也就是当前弹性计算所配置RAM角色权限大小而定。



根据元数据中泄露的AK/SK可以使用利用工具进一步利用。

云渗透项目CF,目前工具已经闭源,最新开源版本在0.5,网上应该可以找到开源版本。

加固措施

  1. RAM角色权限过大导致控制台被接管, 主要还是需要使用者严格遵守权限最小化的原则,在为 RAM 角色赋予权限时,避免赋予过高的权限,只赋予自己所需要的权限,这样可以将影响程度降到最低,但是这并不能治本
  2. 将实例上的元数据访问模式设置为加固模式 ,不过这种方法在攻击人员拿下实例权限后依然会通过获取token的方法来访问元数据

参考文章

阿里云控制台接管

阿里云 ECS 弹性计算服务攻防

云上攻防--云服务&&对象存储(域名接管)&&弹性计算(元数据泄露)的更多相关文章

  1. .NET Core2使用Azure云上的Iot-Hub服务

    基于工业4.0大背景下的工业物联网是近几年内热门的话题,依靠信息化技术企业可以实现数字化转型,生产可以实现智能化制造,设备可以实现自动化运作.然而,海量的数据采集是整个建设过程的基础环节,如何处理与利 ...

  2. 在华为云上开启FTP服务并建立FTP站点来从本地向服务器发送和下载文件

    时间:2019/12/8 最近学习计算机网络的时候老师布置了一个实践作业,具体要求是两个人一组,一个在电脑上建立FTP站点,另一个开启FTP服务器来进行文件的上传和下载. 看到这个的时候我灵机一动,正 ...

  3. 阿里云Oss对象存储

    将文件保存到阿里云上. 1.添加对象存储OSS空间 (新建Bucket) 可以在阿里云后台对象存储里面添加,也可以通过api添加.添加之后设置权限. skd使用. 1安装 Aliyun.OSS.SDK ...

  4. 阿里云对象存储OSS及CDN加速配置

    目录 十大云存储服务商 1. 登陆阿里云官网,开通对象存储服务 OSS 2. 创建存储空间 3. 绑定自定义域名 4. 配置阿里云CDN加速 5. 购买阿里云免费SSL证书 6. 阿里云CDN配置HT ...

  5. TiKV 在京东云对象存储元数据管理的实践

    京东云对象存储是在 2016 年作为公有云对外公开的,主要特点是可靠.安全.海量.低成本,应用于包括一些常用的业务场景,比如京东内部的京东商城视频/图片云存储,面向京东云公有云外部的开发者的服务,和面 ...

  6. 腾讯云COS对象存储占据数据容灾C位

    说到公有云容灾,大家首先想到的是云上数据备份. 然而,随着企业核心业务逐渐从线下迁移到云上,客户提出了更高的要求.如何确保云上业务的高可用.数据的高可靠,这对云厂商提出了新的挑战. 腾讯云作为全球领先 ...

  7. 云上大数据存储:探究 JuiceFS 与 HDFS 的异同

    HDFS 作为 Hadoop 提供存储组件,已经成为大数据生态里面数据存储最常用的选择,通常在机房环境部署. JuiceFS 是一个基于对象存储的分布式文件系统,用户可以在云上快速地搭建按需扩容的弹性 ...

  8. 7款WordPress图片分离对象存储插件 含国内主流云服务存储商

    如果我们有用WordPress搭建网站的朋友应该会发现网站文件和数据库其实没有多大,在网站运营几年后数据最大的就是图片.而且图片占用服务器的空间会搬家比较麻烦,而且占用服务求的带宽.我们看到很多的Wo ...

  9. 从On-Premise本地到On-Cloud云上运维的演进

    摘要: 从用户的声音中,我们听到用户对稳定.弹性.透明的诉求,我们也在不断升级ECS的运维能力和体验,助力用户建立主动运维体系,赋能业务永续运行.为了让大家更好的了解和用好ECS弹性计算服务,从本期开 ...

  10. 在阿里云上遇见更好的Oracle(三)

    鬼扯完“去IOE”,继续回来说说这个系列文章的主角Oracle. 在DB-Engine的数据库排行榜中,Oracle已经占据了多年的第一(最新排名可以点击“阅读原文”).当然因为互联网行业的兴起,My ...

随机推荐

  1. LeetCode155:最小栈,最简单的中等难度题,时间击败100%,内存也低于官方

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 最近运气不错,在LeetCode上白捡一道送 ...

  2. WASI support in Go

    原文在这里. 由 Johan Brandhorst-Satzkorn, Julien Fabre, Damian Gryski, Evan Phoenix, and Achille Roussel 发 ...

  3. 怎么搭建web组态

    web组态是指通过可视化拖拽组件的方式,低代码搭建监控大屏.web页面.物联网各行业的数据以及监控场景,每个行业的业务不同,需要展示的页面也不同.组态快速搭建页面的优势,能更好的满足不同定制化监控页面 ...

  4. 文心一言 VS 讯飞星火 VS chatgpt (98)-- 算法导论9.3 4题

    四.用go语言,对一个包含n个元素的集合,假设一个算法只使用比较来确定第i小的元素,证明:无需额外的比较操作,它也能找到第 i-1 小的元素和第 n-i大的元素. 文心一言: 在这个问题中,我们要使用 ...

  5. 什么是vfs以及它的作用

    VFS(Virtual File System,虚拟文件系统)是计算机操作系统中的一个概念,它提供了一个统一的抽象层,使得操作系统可以支持不同的文件系统类型和存储设备,而不需要直接与每个文件系统进行交 ...

  6. 关于Word转PDF的几种实现方案

    在.NET中,你可以使用Microsoft.Office.Interop.Word库来进行Word到PDF的转换.这是一个示例代码,但请注意这需要在你的系统上安装Microsoft Office. 在 ...

  7. Vue2系列(lqz)——Vue基础

    文章目录 Vue介绍 一 模板语法 1.1 插值 1.1.1 概述 1.1.2 案例 二 指令 2.1 文本相关指令 2.2 事件指令 2.3 属性指令 三 class与style 3.1 class ...

  8. Unexpected keys "@@dva", "user" found in preloadedState argument passed to createStore. Expected to find one of the known reducer keys instead: "router", "loading". Unexpected keys will be ignored.

    Please use `require("history").DOMUtils` instead of `require("history/DOMUtils") ...

  9. Nuxt.js 生成sitemap站点地图文件

    Nuxt.js 生成sitemap站点地图文件 背景介绍 ​ 使用nuxt框架生成静态文件支持SEO优化,打包之后需要生成一个 sitemap.xml 文件方便提交搜索引擎进行收录.官网有提供一个插件 ...

  10. 图形学、02 推导证明 | 任意一点经过透视投影后 z 坐标相对于之前有什么变化

    齐次坐标知识点: \(\begin{bmatrix} x \\ y \\ z \\ 1 \\\end{bmatrix} \Rightarrow\begin{bmatrix} nx \\ ny \\ n ...