【漏洞公告】Spring 框架及组件多个安全漏洞

【漏洞公告】Spring 框架及组件多个安全漏洞

2018年5月8日,阿里云云盾应急响应中心监测到Spring官方发布3个严重,2个高危漏洞,漏洞涉及Spring Messaging组件,Spring Security框架,Spring Data 框架等多个模块,攻击者可利用该漏洞实施远程代码执行攻击,DoS,绕过安全限制获取敏感信息。

漏洞详情见下文


漏洞编号

CVE-2018-1257

CVE-2018-1258

CVE-2018-1259

CVE-2018-1260

CVE-2018-1261

漏洞名称

CVE-2018-1257:Spring Messaging组件中存在漏洞可导致正则表达式拒绝服务攻击

CVE-2018-1258:Spring Security框架Method Security安全限制绕过漏洞

CVE-2018-1259:Spring Data 框架使用XMLBean产生XXE漏洞

CVE-2018-1260:Spring-Security-OAuth2 远程代码执行漏洞

CVE-2018-1261:Spring-Integration-Zip 任意文件写漏洞

官方评级

CVE-2018-1257 (高危)

CVE-2018-1258 (严重)

CVE-2018-1259 (高危)

CVE-2018-1260 (严重)

CVE-2018-1261 (严重)

漏洞描述

CVE-2018-1257 Spring Messaging组件中存在漏洞可导致正则表达式拒绝服务攻击

Spring框架5.0.x系列5.0.6之前的版本,4.3.x系列4.3.17之前的版本,和其他不再受支持的版本中存在漏洞,攻击者可以利用该漏洞向内存中的STOMP消息服务发送特殊的消息,导致在处理正则表达式时候出现拒绝服务。

严重等级:高

受漏洞影响的条件:

1.依赖了spring-messaging和spring-websocket模块。

2.在WebSocket端点上注册了STOMP协议。

3.开启了简单STOMP消息服务。

修复措施:升级Spring框架到5.0.6/4.3.17

CVE-2018-1258 Spring Security框架Method Security安全限制绕过漏洞

Spring Security Method Security 和 Spring框架5.0.5.RELEASE 结合使用时会出现身份授权绕过漏洞,未经授权的恶意用户可访问禁止访问的方法。

严重等级:严重

影响范围:

Spring Framework 5.0.5.RELEASE + 任意版本的 Spring Security

修复方案:

升级Spring框架到5.0.6及以上。

升级Spring Boot到2.0.2及以上。

CVE-2018-1259: Spring Data 框架使用XMLBean产生XXE漏洞

Spring Data Commons 框架1.13.x系列1.13.11之前的版本,2.0.x系列 2.0.6之前的版本,和XMLBean1.4.14之前的版本一起使用时包含一个属性绑定漏洞,该漏洞由于XMLBean库未限制外部引用扩展造成的。未经身份认证的远程恶意用户可以向Spring Data基于投射的请求Payload绑定提交特制的请求参数访问系统上的任意文件。

严重等级:高

影响范围:

Spring Data Commons

Spring Data Commons 1.13 to 1.13.11 (Ingalls SR11)

Spring Data REST 2.6 to 2.6.11 (Ingalls SR11)

Spring Data Commons 2.0 to 2.0.6 (Kay SR6)

Spring Data REST 3.0 to 3.0.6 (Kay SR6)

修复方案:

1.13.x 升级到 1.13.12 (Ingalls SR12)

2.0.x 升级到 2.0.7 (Kay SR7)

或升级 XMLBeam 到 1.4.15

以下框架已经修复了该问题:

Spring Data REST 2.6.12 (Ingalls SR12)

Spring Data REST 3.0.7 (Kay SR7)

CVE-2018-1260 Spring-Security-OAuth2 远程代码执行漏洞

Spring Security OAuth模块2.3.x系列2.3.3之前的版本,2.2.x系列2.2.2之前的版本,2.1.x系列2.1.2之前的版本,2.0系列2.0.15之前的版本和停止支持的版本中包含一个远程代码执行漏洞。恶意的用户可以通过特制授权请求在服务器上执行任意代码。

  1. 受漏洞影响的条件:
  2. 1. 角色是授权服务器(@EnableAuthorizationServer)。
  3. 2. 使用默认的Approval Endpoint。
  4. 该漏洞不影响如下配置:
  5. 1. 角色是授权服务器,但是不使用默认的Approval Endpoint。
  6. 2. 只扮演资源服务器的。(@EnableResourceServer)。
  7. 3. 只扮演OAuth客户端的。(@EnableAuthClient)。

修复方案:

Spring Security OAuth 2.3 升级到 2.3.2

Spring Security OAuth 2.2 升级到 2.2.1

Spring Security OAuth 2.1 升级到 2.1.1

Spring Security OAuth 2.0 升级到 2.0.14

CVE-2018-1261: Spring-Integration-Zip 任意文件写漏洞

spring-integration-zip 1.0.1之前的版本的unzip transformer中存在一个任意文件写漏洞,恶意构造的压缩文档解压时会覆盖外部文件。

严重等级:严重

影响范围:Spring Integration Zip Community Extension Project 版本 1.0.0

修复方案:升级到1.0.1

漏洞利用条件和方式

CVE-2018-1257:DoS攻击

CVE-2018-1258:身份授权绕过,未授权访问

CVE-2018-1259:XXE漏洞

CVE-2018-1260:远程代码执行

CVE-2018-1261:任意文件写漏洞

漏洞检测

检查是否使用了受影响版本

漏洞修复建议(或缓解措施)

阿里云安全团队建议使用了Spring相关框架用户关注并及时更新到官方最新版

Spring Security OAuth:https://projects.spring.io/spring-security-oauth/

Spring Data REST:https://projects.spring.io/spring-data-rest/

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

Spring Integration Zip:https://github.com/spring-projects/spring-integration-extensions/tree/master/spring-integration-zip

Spring Data Commons:https://github.com/spring-projects/spring-data-commons/releases

情报来源

https://pivotal.io/security

转载自阿里云:
https://help.aliyun.com/knowledge_detail/72028.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Spring Security有很多种常见的安全漏洞,包括SQL注入、跨站脚本攻击以及跨站请求伪造等。 为了预防这些漏洞,需要对应用程序进行安全审计,并定期测试和更新其代码。同时,可以使用Spring Security中提供的安全策略和配置,以限制可能的攻击行为。 ### 回答2: Spring Security是一个功能强大的安全框架,它提供了对应用程序的身份验证和授权的支持。然而,即使使用了Spring Security,仍然会存在一些常见的安全漏洞。以下是一些常见的安全漏洞及相应的预防方法: 1. 跨站脚本攻击(XSS):攻击者通过注入恶意脚本来攻击用户,在用户浏览器上执行恶意代码。预防方法:使用Spring Security的默认安全策略进行输出编码,以防止恶意脚本的注入。 2. 跨站请求伪造(CSRF)攻击:攻击者通过伪装合法网站的请求,欺骗用户执行恶意操作。预防方法:使用Spring Security的CSRF保护功能,生成和验证每个请求的令牌。 3. 会话管理漏洞:未正确管理会话可能导致会话劫持或会话固定攻击。预防方法:使用Spring Security提供的会话管理功能,例如设置适当的会话超时时间、使用HTTPS、禁止URL重写等。 4. 请求参数篡改:攻击者可以修改请求参数,绕过应用程序的安全检查。预防方法:使用Spring Security验证和过滤用户输入,确保参数的完整性和有效性。 5. 不安全的密码存储:密码是最重要的敏感信息之一,如果以明文形式存储或使用不安全的哈希算法进行存储,将容易受到攻击。预防方法:使用Spring Security提供的密码加密功能,使用哈希算法和盐值来存储密码。 6. 权限绕过:未正确配置和使用Spring Security的授权机制可能导致攻击者绕过应用程序的权限检查。预防方法:确保正确配置和使用Spring Security的授权机制,限制用户只能访问其授权的资源和操作。 7. 信息泄露:错误和异常信息可能泄露应用程序的敏感信息,如数据库连接和配置信息。预防方法:使用Spring Security提供的错误处理机制,限制错误信息的显示,并记录和监控错误日志。 总之,使用Spring Security可以提高应用程序的安全性,但仍需注意常见的安全漏洞,并采取相应的预防措施来保护应用程序免受攻击。 ### 回答3: Spring Security是一个开源的企业级安全框架,用于保护Java应用程序免受各种安全漏洞的攻击。以下是Spring Security中常见的安全漏洞及预防措施: 1. 跨站脚本攻击(XSS):攻击者通过在页面中注入恶意脚本来获取用户的敏感信息。预防措施包括对用户输入进行严格的过滤和转义,确保在输出到页面之前进行正确的编码。 2. 跨站请求伪造(CSRF):攻击者通过引诱用户在已登录的状态下访问恶意网站来执行非法操作。预防措施包括使用CSRF令牌对于每个请求进行验证,并将令牌嵌入到表单中。 3. 会话固定攻击:攻击者获取用户的会话ID,并使用该ID冒充用户进行操作。预防措施包括在用户认证成功后生成一个新的会话ID,并关闭之前的会话。 4. 基于角色的访问控制(RBAC)漏洞:未正确配置角色权限导致未授权的用户可以访问敏感资源。预防措施包括仔细分配和管理角色权限,确保只有经过授权的用户才能访问受限资源。 5. 密码安全问题:使用弱密码、明文存储或传输密码等都可能导致密码泄露。预防措施包括要求用户使用强密码、使用哈希函数对密码进行加密存储,并使用加密协议进行密码传输。 6. 集成第三方组件漏洞:如果集成的组件存在已知的安全漏洞,攻击者可以通过利用这些漏洞来攻击应用程序。预防措施包括及时更新和维护所有集成的组件,确保它们都是最新版本,并且没有已知的安全漏洞。 总之,Spring Security提供了多种功能和机制来保护应用程序免受各种安全漏洞的攻击。开发人员应该仔细了解这些漏洞,并采取相应的预防措施来确保应用程序的安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值