领先一步
VMware 提供培训和认证,助您加速进步。
了解更多当用户定义的 Spring Data 存储库查询方法使用手动声明的 JPQL 查询,并且将 Sort 实例传递给这些方法时,这些实例会被原封不动地传递给持久化提供程序,从而允许攻击者在 ORDER BY 子句中注入任意 JPQL。攻击者可以利用这一点,通过查询结果元素顺序的变化(取决于注入的 JPQL)来推断出未暴露字段的信息。
当 Sort 实例来自不可信的来源时(例如 Web 请求参数),这一点尤其危险。
受影响版本的用户应采取以下缓解措施
Sort 实例进行了净化,只允许引用域名对象字段以及 JPQL 中使用的别名来支持查询方法。JpaSort.unsafe(…) 来恢复旧行为。该漏洞是由 Silverskin Information Security 的 Niklas Särökaari 和 Solita 的 Joona Immonen、Arto Santala、Antti Virtanen、Michael Holopainen 以及 Antti Ahola 负责任地报告的。
2016年9月30日:发布了初始漏洞报告
要报告 Spring 组合项目中存在的安全漏洞,请参阅安全策略