图片来源:Matei “Mal” Badanoiu
Apache 软件基金会最近发布了安全更新,以解决 Apache Superset 中的任意文件读取漏洞 ( CVE-2024-34693 )。此漏洞可能允许攻击者读取服务器上的任意文件,从而可能导致敏感信息泄露或系统进一步受到危害。
该漏洞源于 Apache Superset 中 MariaDB 协议实现中的输入验证不当。攻击者可以通过创建启用“local_infile”参数的 MariaDB 连接来利用此漏洞。如果 MariaDB 服务器和 Web 服务器上的本地 MySQL 客户端都允许本地 infile 操作,攻击者可以执行特定的 SQL 命令从服务器读取文件并将其内容插入 MariaDB 数据库表中。此漏洞影响 Apache Superset 3.1.3 之前的版本和 4.0.0 版本。
CVE -2024-34693漏洞由 Matei“Mal”Badanoiu 发现并报告,他提供了详细的概念验证 (PoC) 以及对潜在影响和利用方法的见解。
概念验证 (PoC) 演示了攻击者如何从具有针对“local_infile”保护功能的“mysql”协议切换到缺乏这些保护功能的“mariadb”协议。通过使用恶意 URL(例如mariadb://172.17.0.1/xxx?local_infile=1),攻击者可以绕过保护措施并读取服务器上的任意文件。
可以使用 Bettercap 的 Rogue MySQL Server 等工具自动执行攻击,从而简化建立连接后泄露文件内容的过程。
潜在影响
- 权限提升:通过泄露敏感信息(例如 Apache Superset 应用程序使用的 Flask 密钥),攻击者可以提升其权限。如果非管理员用户可以创建任意数据库连接,这种情况尤其令人担忧,因为即使管理员密码已更改,他们也可以获得持久的管理会话。
- 远程代码执行:如果使用 PostgreSQL 数据库,攻击者可以利用窃取的凭据连接到数据库并执行任意命令。通过启用“在 SQL Lab 中公开数据库”和“允许 DML”等选项,可以直接通过 SQL Lab 执行命令,从而实现远程代码执行。
图片来源:Matei “Mal” Badanoiu
Apache 已发布补丁来修复此漏洞。强烈建议用户升级至Apache Superset 4.0.1 或 3.1.3版本,其中包含必要的修复程序,可防止利用此漏洞。
PoC:
https://github.com/mbadanoiu/CVE-2024-34693
原文始发于微信公众号(独眼情报):【PoC】CVE-2024-34693 Apache Superset 任意文件读取
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论