【云安全】云服务-云服务器ECS-安全问题分析

admin 2025年1月10日21:11:15评论2 views字数 2589阅读8分37秒阅读模式

ECS概念

弹性计算服务(Elastic Compute Service, ECS)是一种云计算基础设施服务。它可以轻松地创建和管理虚拟服务器,为用户提供弹性的计算能力。

弹性计算服务的主要特点包括:

  1. 弹性伸缩:用户可以根据实际需求自动或手动调整计算能力。可以根据业务负载的变化,动态地增加或减少虚拟服务器的数量,以确保应用程序始终具有足够的计算资源。

  2. 多种实例类型:弹性计算服务提供多种实例类型,包括通用型、计算型、内存型和存储型等,以满足不同应用场景的需求。用户可以根据应用程序的性能和存储需求选择合适的实例类型。

  3. 快速部署:用户可以通过简单的配置步骤快速部署虚拟服务器。云服务厂商提供了丰富的镜像和应用程序模板,用户可以选择适合自己需求的模板进行部署,大大减少了部署时间和复杂性。

  4. 安全可靠:弹性计算服务提供多层次的安全措施,包括数据加密、身份验证和访问控制等。此外,云服务厂商还提供了自动备份和容灾机制,以确保数据的安全性和可靠性。

  5. 弹性网络:弹性计算服务与云服务厂商的弹性 IP 和虚拟私有网络(VPC)等网络服务紧密集成,为用户提供弹性的网络配置选项。用户可以根据自己的需求灵活地创建和管理网络资源。

弹性计算服务广泛应用于网站托管、应用程序开发、大数据分析、企业应用部署等各种场景,为用户提供强大的计算能力和灵活的资源管理功能。

ECS不同叫法

各大云服务厂商关于ECS(弹性计算服务)的不同叫法:

  1. 亚马逊AWS(Amazon Web Services):EC2(Elastic Compute Cloud)

  2. 微软Azure:VM(Virtual Machines)

  3. 谷歌云(Google Cloud):GCE(Google Compute Engine)

  4. 阿里云(Alibaba Cloud):ECS(Elastic Compute Service)

  5. 腾讯云(Tencent Cloud):CVM(Cloud Virtual Machine)

  6. 华为云(Huawei Cloud):ECS(Elastic Cloud Server)

  7. 百度云(Baidu Cloud):BCS(Baidu Cloud Server)

ECS购买

ECS的购买也可称之为“创建实例”,这里以阿里云ECS举例

【云安全】云服务-云服务器ECS-安全问题分析

选择自身需要的配置

【云安全】云服务-云服务器ECS-安全问题分析

下单后,返回控制台,查看实例,这样就购买了一台ECS(创建了一个实例)

【云安全】云服务-云服务器ECS-安全问题分析

ECS安全问题

ECS主要安全问题:攻击者通过ECS实例上的相关权限,如SSRF漏洞,获取到实例元数据中的RAM角色的STS临时凭证信息,进而实现横向移动。

【云安全】云服务-云服务器ECS-安全问题分析

实例元数据(metadata)

ECS实例元数据是指实例ID、VPC信息、网卡信息等实例属性信息,支持在ECS实例内部通过访问元数据服务(Metadata Service)获取。通过该获取方式,您无需登录控制台或调用API,在实例内部即可访问实例信息,可以更便捷、安全地配置或管理正在运行的实例或实例上的程序。例如,运行在ECS实例中的应用程序,可以通过访问实例元数据服务获取绑定到实例上的RAM角色身份凭证(STS),以在不硬编码凭证的情况下访问授权资源(如OSS、KMS、其他ECS等)。

获取方式

不同云厂商提供不同的方式来获取实例元数据。以下是一些常见云厂商的实例元数据获取地址:

阿里云元数据地址:http://100.100.100.200/

腾讯云元数据地址:http://metadata.tencentyun.com/

华为云元数据地址:http://169.254.169.254/

亚马云元数据地址:http://169.254.169.254/

微软云元数据地址:http://169.254.169.254/

谷歌云元数据地址:http://metadata.google.internal/

阿里云服务器获取实例元数据示例

【云安全】云服务-云服务器ECS-安全问题分析

分别获取主机名称、mac地址、ipv4地址

【云安全】云服务-云服务器ECS-安全问题分析

访问控制RAM

【云安全】云服务-云服务器ECS-安全问题分析

RAM概念

阿里云RAM(Resource Access Management)是一种云身份和访问管理服务,它允许用户集中管理云资源的访问权限。通过RAM,用户可以创建和管理多个用户账号,并为这些账号分配不同的权限,从而实现对云资源的精细化访问控制。

阿里云RAM提供了以下功能:

  1. 用户管理:用户可以创建和管理多个子账号,并为每个子账号分配独立的访问密钥和权限。

  2. 权限管理:用户可以为每个子账号分配不同的权限,包括对云产品的访问、操作和管理权限。

  3. 身份验证:RAM支持多种身份验证方式,包括密码、证书和多因素认证,确保只有授权的用户可以访问云资源。

  4. 访问控制:用户可以通过RAM策略对云资源进行细粒度的访问控制,限制用户的权限范围,提高数据安全性。

  5. 资源共享:用户可以将云资源共享给其他子账号或外部账号,并设置访问权限和限制。

RAM角色

阿里云RAM角色(RAM Role)是阿里云RAM提供的一种身份类型,用于为云资源授权给其他阿里云实体(如云账号、用户、组等)提供访问权限。通过RAM角色,可以实现资源之间的信任关系,方便跨账号、跨地域或者跨云服务的资源访问和管理。

创建角色

【云安全】云服务-云服务器ECS-安全问题分析

【云安全】云服务-云服务器ECS-安全问题分析

为角色授权

【云安全】云服务-云服务器ECS-安全问题分析

将角色授予给实例

【云安全】云服务-云服务器ECS-安全问题分析

将角色授予给实例后,元数据会发生如下变化

【云安全】云服务-云服务器ECS-安全问题分析

 获取STS临时凭证信息

【云安全】云服务-云服务器ECS-安全问题分析

模拟攻击

受害者进行了如下操作:

1、RAM新建了某个角色,例如banana,并为banana授予了一定的权限

【云安全】云服务-云服务器ECS-安全问题分析

2、受害者的云服务器进行了授予角色-banana

【云安全】云服务-云服务器ECS-安全问题分析

攻击者进行如下操作:

拿到了受害者云服务器上的SSRF漏洞(只要有相关权限即可,这里以SSRF举例)

【云安全】云服务-云服务器ECS-安全问题分析

查询IP,发现是阿里云主机

【云安全】云服务-云服务器ECS-安全问题分析

于是尝试通过SSRF获取实例元数据,发现存在ram

【云安全】云服务-云服务器ECS-安全问题分析

继续探测,找到角色名,构造完整获取路径

【云安全】云服务-云服务器ECS-安全问题分析

输入完整路径,拿到STS临时凭证!

【云安全】云服务-云服务器ECS-安全问题分析

简单手工利用一下,尝试使用OSS客户端连接受害者存储桶

【云安全】云服务-云服务器ECS-安全问题分析

横向移动利用工具

这里使用CF演示,该工具作者teamssix团队已将其下架,但是可通过ONE-FOX集成工具箱使用

【云安全】云服务-云服务器ECS-安全问题分析

通过cf config填入获取的临时凭证信息

【云安全】云服务-云服务器ECS-安全问题分析

接着cf alibaba ls一键列出当前访问凭证的云服务资源

OSS资源

【云安全】云服务-云服务器ECS-安全问题分析

ECS资源

【云安全】云服务-云服务器ECS-安全问题分析

通过 cf alibaba console 一键监管控制台

【云安全】云服务-云服务器ECS-安全问题分析 【云安全】云服务-云服务器ECS-安全问题分析

支持反弹shell

【云安全】云服务-云服务器ECS-安全问题分析

 攻击者主机成功接受反弹

【云安全】云服务-云服务器ECS-安全问题分析

文终

写这篇文章的初衷是记录和分享我的学习心得,但技术的发展日新月异,如果各位大佬有不同的想法或建议,欢迎指正,也期待与您一起探讨交流!

原文始发于微信公众号(仇辉攻防):【云安全】云服务-云服务器ECS-安全问题分析

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年1月10日21:11:15
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【云安全】云服务-云服务器ECS-安全问题分析https://cn-sec.com/archives/3617651.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息