漏洞描述
Apache Tomcat 是美国阿帕奇(Apache)基金会的一款轻量级 Web 应用服务器,partial PUT 是其中用于文件分块上传的功能。
在受影响版本中,由于针对 partial PUT 的临时文件路径依赖于用户输入,通过将 / 替换为。的实现存在绕过风险。
当启用了默认 servlet 的写入功能(将 readonly 初始化参数设置为非默认值 false),以及支持 partial PUT(默认支持)时,攻击者可能利用该漏洞,向特定文件(如 jsp)写入恶意代码,从而执行远程命令。
影响范围
tomcat@(-∞, 9.0.99)
tomcat@[10.1.0-M1, 10.1.35)
org.apache.tomcat.embed:tomcat-embed-core@[10.1.0-M1, 10.1.35)
org.apache.tomcat.embed:tomcat-embed-core@[11.0.0-M1, 11.0.3)
org.apache.tomcat:tomcat-catalina@[10.1.0-M1, 10.1.35)
org.apache.tomcat:tomcat-catalina@[11.0.0-M1, 11.0.3)
tomcat@[11.0.0-M1, 11.0.3)
org.apache.tomcat.embed:tomcat-embed-core@(-∞, 9.0.99)
org.apache.tomcat:tomcat-catalina@(-∞, 9.0.99)
修复方案
将组件 org.apache.tomcat.embed:tomcat-embed-core 升级至 11.0.3 及以上版本
将组件 tomcat 升级至 11.0.3 及以上版本
将组件 org.apache.tomcat:tomcat-catalina 升级至 9.0.99 及以上版本
将组件 tomcat 升级至 9.0.99 及以上版本
将组件 tomcat 升级至 10.1.35 及以上版本
将组件 org.apache.tomcat.embed:tomcat-embed-core 升级至 10.1.35 及以上版本
将组件 org.apache.tomcat:tomcat-catalina 升级至 10.1.35 及以上版本
将组件 org.apache.tomcat:tomcat-catalina 升级至 11.0.3 及以上版本
default servlet 避免修改 readonly 配置