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.
http://www.oracle.com/technetwork/security-advisory/cpujul2018-4258247.html
http://www.oracle.com/technetwork/security-advisory/cpuoct2018-4428296.html
http://www.securityfocus.com/bid/104252
http://www.securitytracker.com/id/1040995
https://lists.apache.org/thread.html/[email protected]%3Ccommits.xmlgraphics.apache.org%3E
https://lists.apache.org/thread.html/[email protected]%3Ccommits.xmlgraphics.apache.org%3E
https://lists.debian.org/debian-lts-announce/2018/05/msg00016.html
https://mail-archives.apache.org/mod_mbox/xmlgraphics-batik-dev/201805.mbox/%[email protected]%3e
https://usn.ubuntu.com/3661-1/
https://www.debian.org/security/2018/dsa-4215
https://www.oracle.com/security-alerts/cpujul2020.html
https://www.oracle.com/security-alerts/cpuoct2020.html
https://www.oracle.com/technetwork/security-advisory/cpuapr2019-5072813.html
https://www.oracle.com/technetwork/security-advisory/cpujan2019-5072801.html
https://www.oracle.com/technetwork/security-advisory/cpujul2019-5072835.html
Source: MITRE
Published: 2018-05-24
Updated: 2020-10-20
Type: CWE-502
Base Score: 7.5
Vector: AV:N/AC:L/Au:N/C:P/I:P/A:P
Impact Score: 6.4
Exploitability Score: 10
Severity: HIGH
Base Score: 9.8
Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Impact Score: 5.9
Exploitability Score: 3.9
Severity: CRITICAL