Description
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.
Remediation
References
https://xmlgraphics.apache.org/security.html
http://www.securityfocus.com/bid/104252
https://lists.debian.org/debian-lts-announce/2018/05/msg00016.html
https://usn.ubuntu.com/3661-1/
http://www.securitytracker.com/id/1040995
https://www.debian.org/security/2018/dsa-4215
http://www.oracle.com/technetwork/security-advisory/cpujul2018-4258247.html
http://www.oracle.com/technetwork/security-advisory/cpuoct2018-4428296.html
https://www.oracle.com/technetwork/security-advisory/cpujan2019-5072801.html
https://www.oracle.com/technetwork/security-advisory/cpuapr2019-5072813.html
https://www.oracle.com/technetwork/security-advisory/cpujul2019-5072835.html
https://www.oracle.com/security-alerts/cpujul2020.html
https://www.oracle.com/security-alerts/cpuoct2020.html
https://mail-archives.apache.org/mod_mbox/xmlgraphics-batik-dev/201805.mbox/%3c000701d3f28f%24d01860a0%24704921e0%24%40gmail.com%3e
https://lists.apache.org/thread.html/r9e90b4d1cf6ea87a79bb506541140dfbf4801f4463a7cee08126ee44%40%3Ccommits.xmlgraphics.apache.org%3E
https://lists.apache.org/thread.html/rc0a31867796043fbe59113fb654fe8b13309fe04f8935acb8d0fab19%40%3Ccommits.xmlgraphics.apache.org%3E
https://security.gentoo.org/glsa/202401-11
Related Vulnerabilities
CVE-2017-16073 Vulnerability in npm package noderequest
CVE-2021-21162 Vulnerability in maven package org.webjars.npm:electron
CVE-2016-1000340 Vulnerability in maven package org.bouncycastle:bcprov-jdk15on
CVE-2017-16214 Vulnerability in npm package peiserver
CVE-2021-39152 Vulnerability in maven package com.thoughtworks.xstream:xstream