Spring-Messaging远程命令执行漏洞(CVE-2018-1270)


Spring-Messaging远程命令执行漏洞

漏洞简述

spring messaging为spring框架提供消息支持,其上层协议是STOMP,底层通信基于SockJS,

在spring messaging中,其允许客户端订阅消息,并使用selector过滤消息。selector用SpEL表达式编写,并使用StandardEvaluationContext解析,造成命令执行漏洞。

影响版本

Spring Framework 5.0 - 5.0.4.
Spring Framework 4.3 - 4.3.14
已不支持的旧版本仍然受影响

环境搭建

cd /vulhub/spring/CVE-2018-1270
docker-compose up -d

复现测试

先访问http://192.168.3.151:8080

使用官方的POC

https://github.com/vulhub/vulhub/blob/master/spring/CVE-2018-1270/exploit.py

修改一下

sockjs = SockJS('http://192.168.3.151:8080/gs-guide-websocket')

image-20220507092251940

进入docker容器

docker exec -it cve-2018-1270 bash
cd /tmp
ls

image-20220507092403941

结束!!


文章作者: Broken-year
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Broken-year !
  目录