0Pricing
Cyber Security Academy · 课时

云攻击面

IAM、存储与元数据风险。

云攻击面 是 CoddyKit 上的免费 Cyber Security Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cyber Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cyber Security Academy 课程共包含 4 节课。

云端共同责任模型

在云环境中,提供商负责保护基础设施,客户负责保护配置、身份和数据。大多数入侵发生在责任边界的客户一侧。

  • 提供商负责修补虚拟机监控程序并保障物理安全。
  • 客户负责 IAM 策略、存储权限和网络规则。
  • 配置错误而非提供商遭到入侵,是主要风险。

身份是新的边界

云环境没有传统的网络边界。访问由 IAM 管理:用户、角色、策略和密钥。泄露的访问密钥造成的危害可能与被盗的域管理员密码一样严重。

  • IAM 策略授予对资源执行操作的权限。
  • 角色允许服务和用户获取临时凭据。
  • 权限过大的身份是主要的提权途径。

凭据暴露

云凭据不断泄露。常见来源包括:

  • 提交到公开 Git 仓库的访问密钥。
  • 硬编码在移动应用、持续集成日志或容器镜像中的密钥。
  • 服务器端请求伪造(SSRF)访问元数据服务。
  • 过度共享长期有效密钥,而不是使用短期角色。
# Scan a repo for leaked cloud secrets
trufflehog git file://./repo --only-verified

# Validate an AWS key you found
aws sts get-caller-identity

元数据服务

每个云实例都会公开一个元数据端点,该端点可以提供临时角色凭证。若某个能够访问该端点的 VM 存在 SSRF 或 RCE,攻击者通常就能获得该实例的角色权限。

  • AWS IMDS 位于 169.254.169.254。
  • IMDSv1 只需发送请求,因此很容易被 SSRF 滥用。
  • IMDSv2 要求会话令牌(先 PUT 再 GET),从而遏制许多 SSRF 攻击。
# IMDSv1 (vulnerable) credential theft via SSRF
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/ROLE

# IMDSv2 requires a token first
TOKEN=$(curl -X PUT 'http://169.254.169.254/latest/api/token' -H 'X-aws-ec2-metadata-token-ttl-seconds: 60')

存储配置错误

对象存储(S3、GCS、Azure Blob)是数据暴露的常见来源。

  • 公开读取的存储桶会泄露敏感文件。
  • 公开写入的存储桶允许篡改内容或托管恶意软件。
  • 范围过宽的存储桶策略或访问控制列表会授予已认证用户访问权限。
  • 有效期过长的预签名链接会泄露持久访问权限。
# Enumerate and test an S3 bucket
aws s3 ls s3://target-bucket --no-sign-request
aws s3 cp s3://target-bucket/secret.txt . --no-sign-request

网络与服务暴露

云网络控制措施(安全组、网络安全组、防火墙规则)很容易被配置得过于开放。

  • 数据库或管理端口暴露给 0.0.0.0/0。
  • 管理平面(Kubernetes API、RDP、SSH)可以从互联网访问。
  • 内部服务在没有身份验证的情况下默认信任 VPC。

无服务器与托管服务

无服务器架构会转移风险,但不会消除风险。函数、队列和托管数据库各自都有执行身份。

  • Lambda 的执行角色可能被授予过多权限。
  • 环境变量中经常存放着在系统被攻破后可以读取的机密。
  • 事件源配置错误可能使不受信任的输入触发高权限函数。

控制平面与数据平面

请区分这两个攻击面:

  • 控制平面:云 API(创建资源、修改 IAM、读取配置)。一旦控制平面被攻破,整个账户都会受到影响。
  • 数据平面:工作负载本身(应用、VM、容器)。

在数据平面取得立足点后获得控制平面凭证,是云环境中经典的权限提升路径。

多账户与跨租户

大型组织会将工作负载拆分到多个账户、订阅或项目中。

  • 信任策略薄弱的跨账户角色允许攻击者横向转移。
  • 第三方集成角色中的混淆代理问题可能被滥用。
  • 组织级角色(例如 OrganizationAccountAccessRole)具有很高价值。

日志记录与检测面

防御者依赖云原生日志。攻击者则会尝试让这些日志失效。

  • CloudTrail、Activity Log 和 Audit Logs 会记录控制平面调用。
  • 攻击者可能禁用跟踪记录或停止日志传送。
  • GuardDuty、Security Command Center 和 Defender 会标记异常。

禁用日志记录本身就是一个高信号事件,值得针对它设置警报。

界定云端测试范围

云端渗透测试需要了解云服务提供商的规则并获得授权。某些操作(拒绝服务、某些类型的扫描)会违反服务提供商的条款。请始终确认账户归属,约定影响范围,并优先进行只读枚举。

请使用专用测试账户或带有清晰标记的资源,绝不要接触文档规定范围之外的资源。

快速检查

请确认您已掌握云攻击面。

回顾

您已经梳理了云攻击面。

  • 客户侧的配置错误是云风险的主要来源。
  • 身份是安全边界;泄露的密钥和角色是关键攻击途径。
  • 元数据服务将数据平面中的漏洞连接到云凭证。
  • 存储、网络和日志记录配置错误共同构成了攻击面的其他部分。

下一步:枚举云资源以发现这些问题。

常见问题解答

「云攻击面」课时是免费的吗?

是的 — 「云攻击面」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cyber Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cyber Security Academy 课程共包含 4 节课。

「云攻击面」这节课中我会学到什么?

IAM、存储与元数据风险。 你通过在浏览器中直接运行的动手代码来练习 Cyber Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Cyber Security Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Cyber Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「云攻击面」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Cyber Security Academy 课中编写并运行代码吗?

能。每节 Cyber Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 云攻击面
  2. 枚举云资源
  3. 利用 IAM 错误配置
  4. 持久化与横向移动
← 返回 Cyber Security Academy