今天发布了Hibernate ORM的新版本: 5.4.24.Final
,我们建议您升级您的应用程序。
安全更新
此次发布引入了一个与CVE-2020-25638相关的安全修复。
该漏洞自Hibernate ORM许多年前就存在,因此许多旧版本都受到影响。
建议升级,但如果您使用的是非常旧的版本,这使得升级到最新的支持版本(在编写此内容时为5.4和5.3系列)变得困难,您可以通过设置以下内容来禁用SQL注释:
hibernate.use_sql_comments=false
此属性默认也是禁用的,所以除非您明确启用了它,否则您不会受到影响。
如果您正在运行5.3.x系列的Hibernate ORM,您可能更喜欢使用版本 5.3.20.Final
,它也包括此CVE的修复。
其他错误修复和改进
除了安全修复外,此次发布还引入了
-
当实体
A
有一个嵌套的Map集合,并且有一个关联到A
的嵌套可嵌入类型作为索引时,修复了抛出NPE的问题(HHH-14257)。 -
一个改进,允许使用查询提示来指定原生查询引用的表名。在自动刷新期间,Hibernate将检查是否有受这些表影响的挂起操作,如果是,则自动刷新这些更改。当原生查询执行更新或删除操作时,表名也用于确定是否有任何二级缓存区域受到影响,然后需要失效(HHH-14325)。
-
字节码增强的实体不总是会正确检测可变嵌套可嵌入类型的脏状态(HHH-14329)。
-
悲观锁定模式可能会在外部连接语句上触发无效的
FOR UPDATE
子句(HHH-14333)。 -
填充批处理风格的实体加载器与实体图加载影响因子不兼容(《https://hibernate.atlassian.net/browse/HHH-14312》)。
-
更容易定义受影响的原生查询查询空间(《https://hibernate.atlassian.net/browse/HHH-14325》)。
获取5.4.24.Final
所有详细信息均可在hibernate.org的专用页面上找到。