Recently, Apache Tomcat released a security advisory, announcing the fix of a remote code execution vulnerability (CVE-2020-9484) due to persistent session. An attacker can exploit this vulnerability only when the following conditions are met:
- The attacker can take control of the contents and name of a file on the server.
- The server is configured to use the PersistenceManager with a FileStore.
- The PersistenceManager is configured with sessionAttributeValueClassNameFilter=”null” or a sufficiently lax filter to allow the attacker provided object to be deserialized.
- The attacker knows the relative file path from the storage location used by FileStore to the file the attacker has control over.
Then the attacker will be able to trigger remote code execution via deserialization by sending a crafted request.
- Apache Tomcat 10.x < 10.0.0-M5
- Apache Tomcat 9.x < 9.0.35
- Apache Tomcat 8.x < 8.5.55
- Apache Tomcat 7.x < 7.0.104
- Apache Tomcat 10.x >= 10.0.0-M5
- Apache Tomcat 9.x >= 9.0.35
- Apache Tomcat 8.x >= 8.5.55
- Apache Tomcat 7.x >= 7.0.104
Apache Tomcat has released the latest version to fix the preceding vulnerability. Affected users are advised to upgrade as soon as possible. Users who cannot upgrade to the latest version for the time being can disable the FileStore function temporarily or set the value of sessionAttributeValueClassNameFilte independently, making sure that only objects of specific attributes can be serialized/deserialized.
This advisory is only used to describe a potential risk. NSFOCUS does not provide any commitment or promise on this advisory. NSFOCUS and the author will not bear any liability for any direct and/or indirect consequences and losses caused by transmitting and/or using this advisory. NSFOCUS reserves all the rights to modify and interpret this advisory. Please include this statement paragraph when reproducing or transferring this advisory. Do not modify this advisory, add/delete any information to/from it, or use this advisory for commercial purposes without permission from NSFOCUS.
NSFOCUS, Inc., a global network and cyber security leader, protects enterprises and carriers from advanced cyber attacks. The company’s Intelligent Hybrid Security strategy utilizes both cloud and on-premises security platforms, built on a foundation of real-time global threat intelligence, to provide multi-layered, unified and dynamic protection against advanced cyber attacks.
NSFOCUS works with Fortune Global 500 companies, including four of the world’s five largest financial institutions, organizations in insurance, retail, healthcare, critical infrastructure industries as well as government agencies. NSFOCUS has technology and channel partners in more than 60 countries, is a member of both the Microsoft Active Protections Program (MAPP), and the Cloud Security Alliance (CSA).
A wholly owned subsidiary of NSFOCUS Technologies Group Co., Ltd., the company has operations in the Americas, Europe, the Middle East and Asia Pacific.