Deserialization of Untrusted Data in Apache Batik
Critical severity
GitHub Reviewed
Published
May 13, 2022
to the GitHub Advisory Database
•
Updated Mar 4, 2024
Package
Affected versions
>= 1.0, <= 1.9.1
Patched versions
1.10
Description
Published by the National Vulnerability Database
May 24, 2018
Published to the GitHub Advisory Database
May 13, 2022
Reviewed
Jun 29, 2022
Last updated
Mar 4, 2024
In Apache Batik 1.x before 1.10, when deserializing subclass of
AbstractDocument
, the class takes a string from the inputStream as the class name which then use it to call the no-arg constructor of the class. Fix was to check the class type before calling newInstance in deserialization.References