Struts2 contains a significant DoS vulnerability that allows attackers to create arbitrarily large collections or arrays by exploiting how it deserializes data structures. This vulnerability can cause system memory exhaustion or crashes, affecting various systems using deserialization frameworks. #Struts2 #DeserializationVulnerability
Keypoints
- The vulnerability stems from how Struts2 parses and deserializes arrays and collections by allowing index manipulation.
- Attackers can craft requests that create extremely large data structures, leading to memory exhaustion.
- A specific example involves the SVJA Java application, demonstrating how indices can be used for exploitation.
- The issue also affects JSON deserializers that accept nulls, enabling large null-filled collections.
- Any system with deserializers that honor index specifications or accept nulls is potentially vulnerable to DoS attacks.