Spring Cloud Gateway 突发高危漏洞,下一代云原生网关恰逢其时?
Spring Cloud Gateway 突发高危漏洞
Log4j2 的漏洞刚告一段落,Spring 官方在 2022 年 3 月 1 日发布了 Spring Cloud Gateway 的两个 CVE 漏洞:分别为 CVE-2022-22946(严重性:Medium)与 CVE-2022-22947(代码注入漏洞,严重性:Critical)。
官方公告地址:https://spring.io/blog/2022/03/01/spring-cloud-gateway-cve-reports-published
漏洞详情:
• CVE-2022-22947: Spring Cloud Gateway Code Injection Vulnerability
• CVE-2022-22946: Spring Cloud Gateway HTTP2 Insecure TrustManager
官方建议通过 升级方式 进行修复:
Spring Cloud users should upgrade to 2021.0.1 (which includes 3.1.1) or for 2020.0.x users should upgrade Spring Cloud Gateway to 3.0.7.
体系化安全保障
在容器技术与 K8s 主导的云原生时代,云原生网关打破了传统的流量网关与微服务网关的两层架构,将其合二为一,此外还提升了体系化安全保障。
微服务引擎 MSE - 云原生网关,内置 WAF(Web 应用防火墙),同时也支持集成用户已有自建安全能力,让业务快速构建安全屏障,支持 HTTPS 证书、IP 黑名单、认证授权(包含 JWT、OIDC 和 IDaaS)、异常流量清洗。
性能更强劲
压测结果:
• 云原生网关的 TPS,基本是 Spring Cloud Gateway 的 2 倍,是 Zuul 的 5 倍。
• 云原生网关的 TPS,相比 Nginx Ingress,高出约 90%。
TLS 硬件加速
随着网络环境的日渐复杂,传统 HTTP 明文传输协议带来的传输安全风险也日渐升高,因此 HTTPS 的密文传输协议得到了业界的普遍认可与广泛应用。
任何事情都有其两面性,HTTPS 带来更高传输安全性的同时,由于需要做认证及数据加解密,相比 HTTP,使用 HTTPS 后使得网站访问速度变 “慢”,且导致服务器 CPU 消耗变高、从而机器成本变得更 “贵”。
阿里云 2021 年发布了搭载最新至强处理器 Ice Lake 的 ECS 产品,利用 CPU 的硬件特性使的算力大幅提升 50% 以上。
其中提供的 Crypto Acceleration 特性,包括 Vector AES ,通过 multi-buffer lib 配合,能够加速 AES、 RSA、EC 等密码学计算。利用该特性使得 HTTPS 硬件加速得以摆脱专用硬件加速卡的限制,使用 CPU 内置指令结合 SIMD 机制也可以大幅提升 HTTPS 的性能。
基于此,云原生网关率先完成了对其适配,将硬件加速的性能优势带给用户,在不增加用户资源成本的同时大幅度提升 HTTPS 的性能。
压测数据可以看出使用 TLS 硬件加速后,相比普通 HTTPS 请求 TLS 握手时延降低一倍,极限 QPS 提升80%以上。
从 Spring Cloud Gateway 快速迁移到云原生网关操作方式详见:
https://help.aliyun.com/document_detail/375387.html
发布云原生技术最新资讯、汇集云原生技术最全内容,定期举办云原生活动、直播,阿里产品及用户最佳实践发布。与你并肩探索云原生技术点滴,分享你需要的云原生内容。
关注【阿里巴巴云原生】公众号,获取更多云原生实时资讯!
相关文章
- Spring中使用RedisTemplate操作Redis(spring-data-redis)
- 20-spring学习-Spring MVC基本操作
- 01-spring-专题IOC
- Spring Boot启动时数据库初始化spring.datasource(转)
- spring 学习3-Spring AOP
- Spring Cloud Alibaba | Nacos集群部署
- Spring读源码系列之AOP--06---AopProxy===>spring使用jdk和cglib生成代理对象的终极奥义
- Spring读源码系列04----bean的加载---上
- Spring MVC更多家族成员----Handler与HandlerAdaptor---07
- Atitit Spring事务配置不起作用可能出现的问题: .是否是数据库引擎设置不对造成的【笔者就遇到了这个问题,由于笔者使用的是mysql数据,但是在创建表的时候引擎默认(mysql中引擎默认为
- 【spring】Spring Data --Spring Data JPA
- 4种Spring Boot 实现通用 Auth 认证方式
- Spring 官方证实:框架爆大漏洞,JDK 9 及以上版本均受影响
- 学习Spring Boot:(十四)spring-shiro的密码加密
- 学习Spring Boot:(四)应用日志
- 在Spring Boot + Mybatis 中,使用@Repository失效
- Spring bean的生命周期
- 005-spring-data-elasticsearch 3.0.0.0使用【三】-spring-data之Spring数据扩展
- Spring Boot批量服务
- Spring MVC多项单选按钮
- [spring学习]13、声明式事务(@Transaction)
- 【Spring源码学习】spring IOC容器管理
- 【java】Spring Boot --spring boot项目整合xxl-job
- Spring Cloud Tencent 1.7 版本发布