{"id":"SUSE-SU-2026:5073-1","summary":"Security update for tomcat10","details":"This update for tomcat10 fixes the following issues:\n\n- CVE-2026-74048: Cryptographic policy bypass via FIPS activation failure (bsc#1286502).\n- CVE-2026-74049: Jasper JSTL \u003cc:redirect\u003e plug-in implementation omits page abort (bsc#1286555).\n- CVE-2026-88041: Information disclosure via incomplete HTTP trailer cleanup (bsc#1286559).\n- CVE-2026-93446: Possible TLS 1.3 connection failures (bsc#1286571).\n- CVE-2026-101296: Authentication bypass via non-GSSAPI SASL in JNDI realm (bsc#1286361).\n- CVE-2026-101356: Information disclosure via incorrect object recycling in HTTP/2 processing (bsc#1286362).\n\nChanges:\n\nUpdate to Tomcat 10.1.61:\n\n * Catalina\n + Fix: When starting a web application, don't try and use the web\n application class loader until after the web application class loader\n has started. (markt)\n + Fix: various concurrency issues around adding and removing Realms from a\n CombinedRealm, in particular doing so while the CombinedRealm is in use.\n Note that once a Realm instance has been removed from a CombinedRealm\n instance at run-time, the removed Realm instance may not be reused apart\n from re-adding it to the same CombinedRealm. (markt)\n + Update: When StoreConfig re-writes an existing server.xml or context\n configuration file, preserve the layout of the existing file (comments,\n blank lines and attribute order) on a best effort basis. (remm)\n + Fix: Track in StandardContext whether the context was deployed from a\n Context element in server.xml. Use it to have StoreConfig save to a new\n config file. (remm)\n + Fix: Improve error handling on start-up. (markt)\n + Fix: byte range responses generated by DefaultServlet so a short\n resource stream read does not truncate the response. Treat a premature\n end of stream as an I/O error. Based on pull request #1067 by aoto-tech.\n (markt)\n + Fix: Align OpenSSLLifecycleListener with AprLifecycleListener and throw\n an Error when FIPS is requested but not available. (markt)\n + Fix: Ensure that, as per the documentation, a simple bind is always used\n when the JNDI realm binds using the user provided name and password to\n authenticate the user. (markt)\n + Update: Optimize Accept-Language header processing and use of resource\n budles for localization. (remm)\n * Coyote\n + Fix: 70236: Fix a stalled TLS handshake with the OpenSSL based\n implementations of SSLEngine when the first flight of handshake messages\n sent by the server is too large to fit in the buffer used by the BIO\n pair. Patch submitted by Lukas Hellebrandt. (remm)\n + Fix: #1073: Fix possible corruption when using HTTP/2 and async IO on\n uploads. Submitted by Tim Burke. (remm)\n + Fix: Avoid very rare race between async write notification and\n completion. Skip the write notification in these cases since it would be\n useless. (remm)\n + Fix: a timing issue that could cause large non-blocking writes to stall\n for AJP connections. (markt)\n + Fix: Ensure that the non-blocking write buffer is empty before sending\n an AJP end response message. (markt)\n + Fix: CharChunk.indexOf(char) so that it searches from the start of the\n chunk rather than from twice the chunk's start offset when the chunk\n does not begin at the start of its buffer. (breken-ai)\n + Fix: 70247: Fix a leak in the HTTP/2 connection flow control window when\n part of the HTTP request body is received but not read. Based on a patch\n provided by Guillaume Darmont. (markt)\n + Fix: 70251: Avoid closing a JarFile in CloseableURLConnection unless it\n is certain the JAR is not shared. (remm)\n + Fix: possible corruption of HTTP/1.1 chunked response bodies if a\n previous write to a chunked body fails. (markt)\n + Fix: Align cipher order with the results produced by OpenSSL if the\n cipher specification adds, removes and then re-adds ciphers. (markt)\n + Fix: Correct a narrow race condition when processing HTTP/2 headers.\n + Fix: possible TLS connections failures caused by one of the flags Tomcat\n uses to track TLS handshake progress not being correctly reset. (markt)\n + Fix: Allow for absolute host names in SNI checks. (markt)\n + Fix: Correct a gap in asynchronous error handling that could lead to\n unexpected IllegalStateExceptions for some error conditions. (markt)\n + Add: Harden HTTP/2 against applications that do not correctly handle\n asynchronous errors. (markt)\n * Jasper\n + Fix: Route JspC servlet context logging through Ant when used as an Ant\n task. (sainadh777)\n + Fix: the tag plugin for the JSTL \u003cc:redirtect\u003e tag so that page\n processing ends with the redirect. (markt)\n * Web applications\n + Add: Documentation: Explicitly state that virtual host matching via the\n HTTP host header and TLS configuration matching via SNI are completely\n separate processes. (markt)\n + Fix: Examples: Draw axis-aligned rectangles and ellipses as lines in the\n WebSocket drawboard. (sainadh777)\n * Other\n + Update: the internal fork of Apache Commons BCEL to 6.13.0. (markt)\n + Update: to NSIS 3.13. (markt)\n + Update: to Byte Buddy 1.18.14. (markt)\n + Update: to Bouncy Castle 1.8.6. (markt)\n + Add: Improvements to French translations. (remm)\n + Add: Improvements to Japanese translations provided by tak7iji. (markt)\n + Update: to Migration tool for Jakarta EE 1.0.13. (markt)\n * Cluster\n + Fix: Replicate SSO session key set changes made by removeSession() and\n sessionChangedId() in ClusterSingleSignOn so that SSO entries are\n correctly deregistered and removed from all nodes when the last\n associated session expires, even when the sessions expire on different\n cluster nodes. (remm)\n + Fix: Move context attributes that were set while the web application was\n still starting into the replicated attribute map when it is installed in\n ReplicatedContext, so that they are replicated to the other nodes like\n attributes set later on rather than remaining local to the node that\n started the application. (remm)\n + Fix: a possible deadlock in DeltaSession.expire(): the final session\n delta is now captured and sent to the cluster before the session monitor\n is acquired, because obtaining the delta takes the delta lock and code\n that runs while the delta lock is held, such as session attribute\n listener notifications, may in turn wait for the session monitor. (remm)\n + Fix: Fire the documented send_message_failure lifecycle event with the\n message, destination and exception when a SimpleTcpCluster message send\n fails and notifyLifecycleListenerOnFailure is enabled. The event was\n previously declared but never fired. (remm)\n + Fix: a possible deadlock in DeltaSession: session attribute listeners\n are no longer called while the delta lock is held when attributes are\n set or removed. The delta lock is only held while the change is\n recorded. (markt)\n + Fix: a possible deadlock in DeltaSession: received session deltas are\n now read into a separate DeltaRequest from the one the session uses to\n record local changes. This avoids having to hold the delta lock while\n processing received changes. (markt)\n + Fix: an issue replicating SessionListener additions and removals that\n meant some modification were not replicated leading to inconsistent\n listener configurations across the cluster. (markt)\n * Tribes\n + Docs: Document Tribes channel, membership, transport and replication\n status available through JMX. Based on pull request #1071 by sainadh777.\n","modified":"2026-11-03T22:45:05.060149836Z","published":"2026-11-03T08:16:43Z","related":["CVE-2026-101296","CVE-2026-101356","CVE-2026-74048","CVE-2026-74049","CVE-2026-88041","CVE-2026-93446"],"upstream":["CVE-2026-101296","CVE-2026-101356","CVE-2026-74048","CVE-2026-74049","CVE-2026-88041","CVE-2026-93446"],"references":[{"type":"ADVISORY","url":"https://www.suse.com/support/update/announcement/2026/suse-su-20265073-1/"},{"type":"REPORT","url":"https://bugzilla.suse.com/1286361"},{"type":"REPORT","url":"https://bugzilla.suse.com/1286362"},{"type":"REPORT","url":"https://bugzilla.suse.com/1286502"},{"type":"REPORT","url":"https://bugzilla.suse.com/1286555"},{"type":"REPORT","url":"https://bugzilla.suse.com/1286559"},{"type":"REPORT","url":"https://bugzilla.suse.com/1286571"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-101296"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-101356"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-74048"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-74049"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-88041"},{"type":"WEB","url":"https://www.suse.com/security/cve/CVE-2026-93446"}],"affected":[{"package":{"name":"tomcat10","ecosystem":"SUSE:Linux Enterprise Module for Web and Scripting 15 SP7","purl":"pkg:rpm/suse/tomcat10&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Web%20and%20Scripting%2015%20SP7"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"10.1.61-150200.5.85.1"}]}],"ecosystem_specific":{"binaries":[{"tomcat10-jsp-3_1-api":"10.1.61-150200.5.85.1","tomcat10-lib":"10.1.61-150200.5.85.1","tomcat10-servlet-6_0-api":"10.1.61-150200.5.85.1","tomcat10-webapps":"10.1.61-150200.5.85.1","tomcat10":"10.1.61-150200.5.85.1","tomcat10-admin-webapps":"10.1.61-150200.5.85.1","tomcat10-el-5_0-api":"10.1.61-150200.5.85.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:5073-1.json"}},{"package":{"name":"tomcat10","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS","purl":"pkg:rpm/suse/tomcat10&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP5-ESPOS"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"10.1.61-150200.5.85.1"}]}],"ecosystem_specific":{"binaries":[{"tomcat10-el-5_0-api":"10.1.61-150200.5.85.1","tomcat10-jsp-3_1-api":"10.1.61-150200.5.85.1","tomcat10-lib":"10.1.61-150200.5.85.1","tomcat10-servlet-6_0-api":"10.1.61-150200.5.85.1","tomcat10-webapps":"10.1.61-150200.5.85.1","tomcat10":"10.1.61-150200.5.85.1","tomcat10-admin-webapps":"10.1.61-150200.5.85.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:5073-1.json"}},{"package":{"name":"tomcat10","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS","purl":"pkg:rpm/suse/tomcat10&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP5-LTSS"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"10.1.61-150200.5.85.1"}]}],"ecosystem_specific":{"binaries":[{"tomcat10-admin-webapps":"10.1.61-150200.5.85.1","tomcat10-el-5_0-api":"10.1.61-150200.5.85.1","tomcat10-jsp-3_1-api":"10.1.61-150200.5.85.1","tomcat10-lib":"10.1.61-150200.5.85.1","tomcat10-servlet-6_0-api":"10.1.61-150200.5.85.1","tomcat10-webapps":"10.1.61-150200.5.85.1","tomcat10":"10.1.61-150200.5.85.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:5073-1.json"}},{"package":{"name":"tomcat10","ecosystem":"SUSE:Linux Enterprise Server 15 SP5-LTSS","purl":"pkg:rpm/suse/tomcat10&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP5-LTSS"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"10.1.61-150200.5.85.1"}]}],"ecosystem_specific":{"binaries":[{"tomcat10-lib":"10.1.61-150200.5.85.1","tomcat10-servlet-6_0-api":"10.1.61-150200.5.85.1","tomcat10-webapps":"10.1.61-150200.5.85.1","tomcat10":"10.1.61-150200.5.85.1","tomcat10-admin-webapps":"10.1.61-150200.5.85.1","tomcat10-el-5_0-api":"10.1.61-150200.5.85.1","tomcat10-jsp-3_1-api":"10.1.61-150200.5.85.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:5073-1.json"}},{"package":{"name":"tomcat10","ecosystem":"SUSE:Linux Enterprise Server 15 SP6-LTSS","purl":"pkg:rpm/suse/tomcat10&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP6-LTSS"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"10.1.61-150200.5.85.1"}]}],"ecosystem_specific":{"binaries":[{"tomcat10-el-5_0-api":"10.1.61-150200.5.85.1","tomcat10-jsp-3_1-api":"10.1.61-150200.5.85.1","tomcat10-lib":"10.1.61-150200.5.85.1","tomcat10-servlet-6_0-api":"10.1.61-150200.5.85.1","tomcat10-webapps":"10.1.61-150200.5.85.1","tomcat10":"10.1.61-150200.5.85.1","tomcat10-admin-webapps":"10.1.61-150200.5.85.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:5073-1.json"}},{"package":{"name":"tomcat10","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP5","purl":"pkg:rpm/suse/tomcat10&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP5"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"10.1.61-150200.5.85.1"}]}],"ecosystem_specific":{"binaries":[{"tomcat10-el-5_0-api":"10.1.61-150200.5.85.1","tomcat10-jsp-3_1-api":"10.1.61-150200.5.85.1","tomcat10-lib":"10.1.61-150200.5.85.1","tomcat10-servlet-6_0-api":"10.1.61-150200.5.85.1","tomcat10-webapps":"10.1.61-150200.5.85.1","tomcat10":"10.1.61-150200.5.85.1","tomcat10-admin-webapps":"10.1.61-150200.5.85.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:5073-1.json"}},{"package":{"name":"tomcat10","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP6","purl":"pkg:rpm/suse/tomcat10&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP6"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"10.1.61-150200.5.85.1"}]}],"ecosystem_specific":{"binaries":[{"tomcat10-webapps":"10.1.61-150200.5.85.1","tomcat10":"10.1.61-150200.5.85.1","tomcat10-admin-webapps":"10.1.61-150200.5.85.1","tomcat10-el-5_0-api":"10.1.61-150200.5.85.1","tomcat10-jsp-3_1-api":"10.1.61-150200.5.85.1","tomcat10-lib":"10.1.61-150200.5.85.1","tomcat10-servlet-6_0-api":"10.1.61-150200.5.85.1"}]},"database_specific":{"source":"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2026:5073-1.json"}}],"schema_version":"1.9.2"}