前言
随着企业上云逐渐形成了趋势和规模,云安全也成为了新的焦点和风口,云上安全越来越重要;在近几年的攻防中AKSK、小程序、云上供应链都已经成为了兵家必争之地和重要突破口
云服务不仅提供了高效的数据存储和计算能力,还支持了业务的快速扩展和灵活部署。然而,云计算的广泛应用也带来了新的安全挑战,特别是在数据保护和访问控制方面。网络攻击者正不断寻找并利用云服务中的漏洞,威胁企业的敏感数据和业务连续性。
在云计算时代,元数据的泄露可能导致严重的安全威胁,尤其是对云控制台的接管。元数据(Metadata)不仅包含了关于云实例的描述性信息,还可能存储访问密钥(Access Key)和秘密密钥(Secret Key)等敏感信息。一旦这些元数据被攻击者获取,他们可以利用这些信息进行未授权操作,包括接管您的云控制台,进而拥有对整个云环境的控制权。本文将深入探讨云上攻防中的多个关键领域,包括弹性计算服务器、实例元数据、控制角色以及AK控制台接管,帮助您更好地理解和应对元数据泄露所带来的安全风险。通过采取适当的防护措施,您可以有效保护您的云资源和数据,防止攻击者利用元数据漏洞进行恶意操作。
元数据解释
实例元数据(metadata)包含了弹性计算云服务器实例在阿里云系统中的信息,您可以在运行中的实例内方便地查看实例元数据,并基于实例元数据配置或管理实例。(基本信息:实例ID、IP地址、网卡MAC地址、操作系统类型等信息。实例标识包括实例标识文档和实例标识签名,所有信息均实时生成,常用于快速辨别实例身份。
细节方面可以通过访问官网找到元数据访问触发说明,阿里云网站
通过元数据服务从ECS实例内部获取实例属性等信息_云服务器 ECS(ECS)-阿里云帮助中心 (aliyun.com)
各大云元数据地址:
- 阿里云元数据地址: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/
这个时候有这样一种场景,多个运维人员职权细分便可以通过添加RAM角色实现访问控制
这个时候当一个云服务器被赋予了RAM角色,便可通过元数据查询到临时凭证
curl http://100.100.100.200/latest/meta-data/ram/security-credentials/
如图便可获取到RAM角色mm的临时凭证
在云计算环境中,通过ECS实例元数据服务获取RAM角色的临时凭证是一种常见的操作,旨在实现安全的资源访问。然而,如果系统存在安全漏洞,攻击者可能利用这些漏洞进行更大范围的攻击。
- Webshell与RCE攻击:攻击者可能通过Webshell或RCE漏洞获取服务器权限,进而访问网站资源。
- SSRF漏洞:攻击者利用SSRF漏洞访问内部数据,通过元数据服务获取RAM角色临时凭证,扩大危害
利用AK横向移动
通过元数据获取到某个角色的临时临时凭证后便可通过工具进一步利用扩大危害
CF 云渗透框架项目:https://wiki.teamssix.com/CF/
我这边使用自己的阿里云账号进行展示:(文章写完后,AK已销毁)
示例:查看该账号下的实例列表
示例:接管控制台
这一步慎用,当执行接管命令的时候,阿里云会发送短信
示例:反弹shell
成功上线
其他可以执行的操作这里就不一一解释了,可自行创建实验复现
防御措施
在云计算环境中,通过ECS实例元数据服务获取RAM角色的临时凭证是一种常见的操作,旨在实现安全的资源访问。然而,如果系统存在安全漏洞,攻击者可能利用这些漏洞进行更大范围的攻击。
官方解释:为降低 AccessKey 泄露风险,自 2023 年 7 月 5 日 起,阿里云主账号 AccessKey 创建后,不能再次被查看 Secret 。自 2023 年 11 月 20 日起,对所有主账号关闭查询 Secret 的功能,请提前查询保存好主账号 AccessKey Secret。
防御建议:
- 限制元数据访问:通过防火墙和安全组规则限制对元数据服务的访问。
- 最小权限原则:为RAM角色配置最小必要权限,避免过度授权。
- 输入验证与过滤:对用户输入进行严格验证和过滤,防止Webshell和RCE攻击。
- 安全审计与监控:定期进行安全审计,实时监控服务器活动,及时响应异常行为。
- 多因素认证:为控制台访问和重要操作启用多因素认证,增加安全层。
- 部署WAF:使用Web应用防火墙检测和阻止常见Web攻击。