【预警通告】CVE-2018-1270:spring-messaging模块远程代码执行漏洞

Pivotal Spring官方发布安全公告,Spring框架中存在三个漏洞,其中编号为CVE-2018-1270的漏洞可导致远程代码执行。在引入且使用spring-messaging组件时,攻击者可通过WebSocket向服务器端发送携带有恶意代码的STOMP报文,直接获取服务器控制权限。

Pivotal Spring官方4月9日对之前发布的公告进行了部分修订,受CVE-2018-1270漏洞影响的版本修订为Spring Framework 4.3.15及5.0.4。

详情请参考如下链接:

https://pivotal.io/security/cve-2018-1275

漏洞影响

目前已知受影响的Pivotal产品及版本为:

  • Spring Framework 5.0 to 5.0.4
  • Spring Framework 4.3 to 4.3.15
  • 早期官方已不支持的版本

不受影响的版本为:

  • Spring Framework 5.0.5 to 5.0.6
  • Spring Framework 4.3.16 to 4.3.17

影响排查

漏洞产生于spring-messaging组件,对于使用Spring框架的应用系统,首先排查是否引入了spring-messaging组件并实现STOMP消息传送功能,查看Spring Framework的版本是否在受影响范围内。

在应用系统中直接查看Maven/Gradle中引入的Spring Framework版本,如:

<dependencies>
    <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
        <version>5.0.4.RELEASE</version>
    </dependency>
</dependencies>

解决建议

Pivotal Spring官方已经在新版本中对爆出的漏洞进行了修复,受漏洞影响的用户请尽快升级框架版本。

Spring官方地址:

https://projects.spring.io/spring-framework/

开发人员可通过配置Maven或者Gradle的方式,升级框架并编译发布。

Maven配置

<dependencies>
    <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
        <version>5.0.5.RELEASE</version>
    </dependency>
</dependencies>

Gradle配置

dependencies {
    compile 'org.springframework:spring-context:5.0.5.RELEASE'
}

漏洞简析

spring-messaging模块实现STOMP(Simple Text-Orientated Messaging Protocol)协议,通过WebSocket进行STOMP报文的数据交互。攻击者可以通过建立WebSocket连接并发送一条消息造成远程代码执行。

Spread the word. Share this post!

Meet The Author

Leave Comment