{"schema_version":"1.9.0","id":"CVE-2021-24122","published":"2021-01-14T15:15:13.400Z","modified":"2026-08-27T11:47:42.166076476Z","aliases":["BIT-tomcat-2021-24122","GHSA-2rvv-w9r2-rg7m"],"related":["SUSE-SU-2021:0530-1","SUSE-SU-2021:0531-1","SUSE-SU-2021:0989-1","SUSE-SU-2021:1009-1","SUSE-SU-2021:14705-1","SUSE-SU-2026:1058-1","openSUSE-SU-2021:0330-1","openSUSE-SU-2024:11468-1","openSUSE-SU-2024:13441-1"],"details":"When serving resources from a network location using the NTFS file system, Apache Tomcat versions 10.0.0-M1 to 10.0.0-M9, 9.0.0.M1 to 9.0.39, 8.5.0 to 8.5.59 and 7.0.0 to 7.0.106 were susceptible to JSP source code disclosure in some configurations. The root cause was the unexpected behaviour of the JRE API File.getCanonicalPath() which in turn was caused by the inconsistent behaviour of the Windows API (FindFirstFileW) in some circumstances.","affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/apache/tomcat","events":[{"introduced":"e498667bd7811e846771a852b16ce9f1e524b81b"},{"last_affected":"c5d9010a75e99a69f59ba11cc1116d039a113979"},{"introduced":"e37b977db6f47e4380ad67114a49e8568951c953"},{"last_affected":"c042ec71219dbde3e1ce0381ce5be0801120d0fa"},{"introduced":"3c78e95e36268dfb76db1570f0cf49104fa6eabc"},{"last_affected":"6989c4e9360b4f9443862968c15a95d17f264321"},{"introduced":"29b07def810d335012e738b22ab44d4e232b50d1"},{"last_affected":"6f143d19d151620cd0bfe9ec2ffa429e36ad0e45"}],"database_specific":{"cpe":["cpe:2.3:a:apache:tomcat:*:*:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone1:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone10:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone11:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone12:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone13:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone14:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone15:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone16:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone17:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone18:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone19:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone2:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone20:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone21:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone22:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone23:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone24:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone25:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone26:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone27:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone3:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone4:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone5:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone6:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone7:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone8:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:9.0.0:milestone9:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone1:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone2:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone3:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone4:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone5:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone6:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone7:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone8:*:*:*:*:*:*","cpe:2.3:a:apache:tomcat:10.0.0:milestone9:*:*:*:*:*:*"],"extracted_events":[{"introduced":"7.0.0"},{"last_affected":"7.0.106"},{"introduced":"8.5.0"},{"last_affected":"8.5.59"},{"introduced":"9.0.1"},{"last_affected":"9.0.39"},{"introduced":"9.0.0-milestone1"},{"last_affected":"9.0.0-milestone1"},{"introduced":"9.0.0-milestone10"},{"last_affected":"9.0.0-milestone10"},{"introduced":"9.0.0-milestone11"},{"last_affected":"9.0.0-milestone11"},{"introduced":"9.0.0-milestone12"},{"last_affected":"9.0.0-milestone12"},{"introduced":"9.0.0-milestone13"},{"last_affected":"9.0.0-milestone13"},{"introduced":"9.0.0-milestone14"},{"last_affected":"9.0.0-milestone14"},{"introduced":"9.0.0-milestone15"},{"last_affected":"9.0.0-milestone15"},{"introduced":"9.0.0-milestone16"},{"last_affected":"9.0.0-milestone16"},{"introduced":"9.0.0-milestone17"},{"last_affected":"9.0.0-milestone17"},{"introduced":"9.0.0-milestone18"},{"last_affected":"9.0.0-milestone18"},{"introduced":"9.0.0-milestone19"},{"last_affected":"9.0.0-milestone19"},{"introduced":"9.0.0-milestone2"},{"last_affected":"9.0.0-milestone2"},{"introduced":"9.0.0-milestone20"},{"last_affected":"9.0.0-milestone20"},{"introduced":"9.0.0-milestone21"},{"last_affected":"9.0.0-milestone21"},{"introduced":"9.0.0-milestone22"},{"last_affected":"9.0.0-milestone22"},{"introduced":"9.0.0-milestone23"},{"last_affected":"9.0.0-milestone23"},{"introduced":"9.0.0-milestone24"},{"last_affected":"9.0.0-milestone24"},{"introduced":"9.0.0-milestone25"},{"last_affected":"9.0.0-milestone25"},{"introduced":"9.0.0-milestone26"},{"last_affected":"9.0.0-milestone26"},{"introduced":"9.0.0-milestone27"},{"last_affected":"9.0.0-milestone27"},{"introduced":"9.0.0-milestone3"},{"last_affected":"9.0.0-milestone3"},{"introduced":"9.0.0-milestone4"},{"last_affected":"9.0.0-milestone4"},{"introduced":"9.0.0-milestone5"},{"last_affected":"9.0.0-milestone5"},{"introduced":"9.0.0-milestone6"},{"last_affected":"9.0.0-milestone6"},{"introduced":"9.0.0-milestone7"},{"last_affected":"9.0.0-milestone7"},{"introduced":"9.0.0-milestone8"},{"last_affected":"9.0.0-milestone8"},{"introduced":"9.0.0-milestone9"},{"last_affected":"9.0.0-milestone9"},{"introduced":"10.0.0-milestone1"},{"last_affected":"10.0.0-milestone1"},{"introduced":"10.0.0-milestone2"},{"last_affected":"10.0.0-milestone2"},{"introduced":"10.0.0-milestone3"},{"last_affected":"10.0.0-milestone3"},{"introduced":"10.0.0-milestone4"},{"last_affected":"10.0.0-milestone4"},{"introduced":"10.0.0-milestone5"},{"last_affected":"10.0.0-milestone5"},{"introduced":"10.0.0-milestone6"},{"last_affected":"10.0.0-milestone6"},{"introduced":"10.0.0-milestone7"},{"last_affected":"10.0.0-milestone7"},{"introduced":"10.0.0-milestone8"},{"last_affected":"10.0.0-milestone8"},{"introduced":"10.0.0-milestone9"},{"last_affected":"10.0.0-milestone9"}],"source":["CPE_RANGE","CPE_STRING"]}}],"versions":["10.0.0-milestone1","10.0.0-milestone2","10.0.0-milestone3","10.0.0-milestone4","10.0.0-milestone5","10.0.0-milestone6","10.0.0-milestone7","10.0.0-milestone8","10.0.0-milestone9","9.0.0-milestone1","9.0.0-milestone10","9.0.0-milestone11","9.0.0-milestone12","9.0.0-milestone13","9.0.0-milestone14","9.0.0-milestone15","9.0.0-milestone16","9.0.0-milestone17","9.0.0-milestone18","9.0.0-milestone19","9.0.0-milestone2","9.0.0-milestone20","9.0.0-milestone21","9.0.0-milestone22","9.0.0-milestone23","9.0.0-milestone24","9.0.0-milestone25","9.0.0-milestone26","9.0.0-milestone27","9.0.0-milestone3","9.0.0-milestone4","9.0.0-milestone5","9.0.0-milestone6","9.0.0-milestone7","9.0.0-milestone8","9.0.0-milestone9"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-24122.json"}}],"references":[{"type":"WEB","url":"https://lists.apache.org/thread.html/r1595889b083e05986f42b944dc43060d6b083022260b6ea64d2cec52%40%3Cannounce.apache.org%3E"},{"type":"WEB","url":"https://lists.apache.org/thread.html/r7382e1e35b9bc7c8f320b90ad77e74c13172d08034e20c18000fe710%40%3Cdev.tomee.apache.org%3E"},{"type":"WEB","url":"https://lists.apache.org/thread.html/r776c64337495bf28b7d5597268114a888e3fad6045c40a0da0c66d4d%40%3Cdev.tomee.apache.org%3E"},{"type":"WEB","url":"https://lists.apache.org/thread.html/r7e0bb9ea415724550e2b325e143b23e269579e54d66fcd7754bd0c20%40%3Cdev.tomcat.apache.org%3E"},{"type":"WEB","url":"https://lists.apache.org/thread.html/rb32a73b7cb919d4f44a2596b6b951274c0004fc8b0e393d6829a45f9%40%3Cusers.tomcat.apache.org%3E"},{"type":"WEB","url":"https://lists.apache.org/thread.html/rca833c6d42b7b9ce1563488c0929f29fcc95947d86e5e740258c8937%40%3Cdev.tomcat.apache.org%3E"},{"type":"ADVISORY","url":"http://www.openwall.com/lists/oss-security/2021/01/14/1"},{"type":"ADVISORY","url":"https://lists.apache.org/thread.html/r1595889b083e05986f42b944dc43060d6b083022260b6ea64d2cec52%40%3Cannounce.tomcat.apache.org%3E"},{"type":"ADVISORY","url":"https://lists.debian.org/debian-lts-announce/2021/03/msg00018.html"},{"type":"ADVISORY","url":"https://security.netapp.com/advisory/ntap-20210212-0008/"},{"type":"ADVISORY","url":"https://www.oracle.com//security-alerts/cpujul2021.html"}],"database_specific":{"unresolved_ranges":[{"cpes":["cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*"],"extracted_events":[{"introduced":"9.0"},{"last_affected":"9.0"}],"source":"CPE_STRING","vendor_product":"debian:debian_linux"},{"cpes":["cpe:2.3:a:oracle:agile_product_lifecycle_management:9.3.3:*:*:*:*:*:*:*","cpe:2.3:a:oracle:agile_product_lifecycle_management:9.3.6:*:*:*:*:*:*:*"],"extracted_events":[{"introduced":"9.3.3"},{"last_affected":"9.3.3"},{"introduced":"9.3.6"},{"last_affected":"9.3.6"}],"source":"CPE_STRING","vendor_product":"oracle:agile_product_lifecycle_management"}]},"severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N"}]}