[CLSA-2026:1777446601] Fix CVE(s): CVE-2020-13935
Type:
security
Severity:
Important
Release date:
2026-04-29 07:10:05 UTC
Description:
* SECURITY UPDATE: denial of service via crafted WebSocket frame with a 64-bit payload length whose most significant bit is set. The extended payload length read in WsFrameBase.processRemainingHeader() was assembled into a Java long without validation. With bit 63 set the value became negative, which the consumer then used as a loop bound, causing an infinite loop and exhausting CPU on the server thread. Affects Apache Tomcat 7.0.0 to 7.0.104, 8.5.0 to 8.5.56, 9.0.0.M1 to 9.0.36, and 10.0.0-M1 to 10.0.0-M6. - debian/patches/CVE-2020-13935.patch: validate the 64-bit payload length in processRemainingHeader() and reject frames with a negative value by throwing a WsIOException carrying a PROTOCOL_ERROR close reason; add the wsFrame.payloadMsbInvalid message to LocalStrings.properties. Also fold the companion fix 4c04982870 to apply the same validation to the legacy org/apache/catalina/websocket/WsFrame parser (still packaged in catalina.jar via WebSocketServlet), and the regression follow-up 34d19fbe24 in WsFrameBase.byteArrayToLong() (0xFF -> 0xFFL) that prevents silent corruption of payload lengths >= 4 bytes from int-shift promotion. Additionally fold b517002093 to apply the same 0xFF -> 0xFFL fix to the parallel helper Conversions.byteArrayToLong() in java/org/apache/catalina/util/Conversions.java, which is the helper used by the legacy WsFrame parser; without it the new < 0 check in the legacy parser would falsely reject legitimate large frames. Backport of upstream commits f9f75c14, 34d19fbe24, 4c04982870 and b517002093 (https://github.com/apache/tomcat/commit/f9f75c14 https://github.com/apache/tomcat/commit/34d19fbe24 https://github.com/apache/tomcat/commit/4c04982870 https://github.com/apache/tomcat/commit/b517002093) - CVE-2020-13935
Updated packages:
  • libservlet3.0-java_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:cf792afc3d404c1ce1c15b584f1f69e853db90a8
  • libservlet3.0-java-doc_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:4127c3e7863a7c1f9c353d5ce2914edc2ad9aa55
  • libtomcat7-java_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:d4b66233f4e9a563fe6f9a63ba2fb60ecaa20638
  • tomcat7_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:4220898bb5a76a0fdd865d9aece441dc1280fe24
  • tomcat7-admin_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:7ab9a60b873179668850d277f6226f3da655f14f
  • tomcat7-common_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:8521e4100dbfc8f4aaedd7b4c40d2cc18bfdd17a
  • tomcat7-docs_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:1cecfad0cdeb02c07aaf6633dd6c2acb1db313a4
  • tomcat7-examples_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:c3233c9ee573f8d47d1c8cbb9e6fab3a388044e1
  • tomcat7-user_7.0.68-1ubuntu0.4+tuxcare.els7_all.deb
    sha:27d2b4f8b89a4c842ccd7e7362217e567ec14ee5
Notes:
This page is generated automatically and has not been checked for errors. For clarification or corrections please contact the CloudLinux Packaging Team.