最近GIS圈(www.oqis.com.cn)安全部门反馈,我们使用的GeoServer服务器出现xstream高危漏洞:
漏洞描述:2021年8月22日,XStream官方发布安全更新,修复了一系列严重漏洞,漏洞编号包括:CVE-2021-39139、CVE-2021-39140、CVE-2021-39141、CVE-2021-39144、CVE-2021-39145、CVE-2021-39146、CVE-2021-39147、CVE-2021-39148、CVE-2021-39149、CVE-2021-39150、CVE-2021-39151、CVE-2021-39152、CVE-2021-39153、CVE-2021-39154。
攻击者利用漏洞可以实现远程代码执行、拒绝服务,最终可以接管目标服务器。
修复方案:升级XStream到当前最新版本1.4.18
危险等级:高危
到目前为止 GeoServer (最新版本是2.19.2)都包含 XStream 1.4.18 以下的版本,是有漏洞的
修复方案一:
获取最新GeoServer源代码,指定最新版本xstream重新编译GeoServer。优点是稳定性好,缺点是难度较大。我们使用了多个版本的GeoServer,需要获取多个版本的源代码全部重新编译,有点难度,先看看其他方案。
修复方案二:
直接下载xstream最新的jar,直接替换有漏洞的xstream.jar。优点是简单,缺点是可能会出现不兼容的情况。经过测试Tomcat 9.x + GeoServer 2.19.x或GeoServer 2.18.x,登录等基本功能,以及发布的WMS,WFS,WMTS服务都是正常的,其他一些服务没有使用,也就没有验证,目测也没有太大问题。
我们采用方案二修复了所有的漏洞警告,经过两个多月的使用没有反馈任何异常。