2020年5月20日,Apache Tomcat官方发布安全公告,披露了一个通过集群同步session导致远程代码执行的漏洞。当tomcat服务器使用了自带session同步功能时,不安全的配置(没有使用EncryptInterceptor)导致存在反序列化漏洞,通过精心构造的数据包,可以对使用了tomcat自带session同步功能的服务器进行攻击。攻击者利用该漏洞可实现远程代码执行,获取服务器管理员权限。
漏洞名称:Apache Tomcat 反序列化远程代码执行漏洞
威胁等级:高危
漏洞类型:远程代码执行
利用难度:简单
Apache Tomcat组件介绍
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,是开发和调试JSP 程序的首选。
漏洞分析
代码分析:
Tomcat服务器在org.apache.catalina.tribes.transport.nio.NioReplicationTask.run()方法中读取数据。
在drainChannel()方法中将ClusterData封装成ChannelMessage类型,在后续的运行过程中,依次调用messageDataReceived()方法。