Every CVE Search/ Get API key

CVE-2018-8013

Deserialization of Untrusted Data in Apache Batik

9.8 CriticalFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

18.6%Up 8.8 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 9.8

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.

Record
CVE-2018-8013
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
7.5 HighAV:N/AC:L/Au:N/C:P/I:P/A:P
Weakness
CWE-502
Updated
2026-11-02
CVE List No score

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.

Record
CVE-2018-8013
Updated
2026-11-02
EUVDEUVD-2022-1909 No score

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.

Record
EUVD-2022-1909
Updated
2026-11-03
GitHub AdvisoriesGHSA-25gw-4pcc-45cf 9.8

Deserialization of Untrusted Data in Apache Batik

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.

Record
GHSA-25gw-4pcc-45cf
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSV 9.8

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.

Record
CVE-2018-8013
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2018-8013 9.8

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.

Record
DEBIAN-CVE-2018-8013
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
Show 4 moreShow less
OSVGHSA-25gw-4pcc-45cf 9.8

Deserialization of Untrusted Data in Apache Batik

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.

Record
GHSA-25gw-4pcc-45cf
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSVUBUNTU-CVE-2018-8013 9.8

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.

Record
UBUNTU-CVE-2018-8013
CVSS 3.0
9.8 CriticalCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVCLSA-2026-1778633124 No score

TuxCare security update for org.apache.xmlgraphics (10 CVEs)

TuxCare rebuilt 27 org.apache.xmlgraphics packages to address 10 CVEs. Fixed in 1.7-tuxcare.1.

Record
CLSA-2026-1778633124
Updated
2026-11-02
OSVUSN-3661-1 No score

batik vulnerability

It was discovered that Batik incorrectly handled certain XML. An attacker could possibly use this to expose sensitive information.

Record
USN-3661-1
Updated
2026-11-02

Affected products

Show 10 moreShow less

Affected packages

Affected packages
PackageAffectedFixed
org.apache.xmlgraphics:batik
Maven
1.0 to 1.9.1
1.10
org.apache.xmlgraphics:batik-anim
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-awt-util
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-bridge
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-codec
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-css
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-dom
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-ext
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-extension
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-extensions
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
Show 27 moreShow less
Affected packages
PackageAffectedFixed
org.apache.xmlgraphics:batik-gui-util
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-gvt
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-js
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-parser
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-rasterizer
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-rasterizer-ext
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-script
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-slideshow
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-squiggle
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-squiggle-ext
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-svg-dom
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-svggen
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-svgpp
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-swing
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-transcoder
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-ttf2svg
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-util
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
org.apache.xmlgraphics:batik-xml
TuxCare:Maven
1.7 up to 1.7-tuxcare.1
1.7-tuxcare.1
batik
Debian:12
before 1.10-1
1.10-1
batik
Debian:13
before 1.10-1
1.10-1
batik
Debian:14
before 1.10-1
1.10-1
batik
Debian:7
before 1.7+dfsg-3+deb7u3, plus listed versions
1.7+dfsg-31.7+dfsg-3+deb7u11.7+dfsg-3+deb7u2
1.7+dfsg-3+deb7u3
batik
Debian:8
before 1.7+dfsg-5+deb8u1, plus listed versions
1.7+dfsg-5
1.7+dfsg-5+deb8u1
batik
Debian:9
before 1.8-4+deb9u1, plus listed versions
1.8-4
1.8-4+deb9u1
org.apache.xmlgraphics:batik
Maven
1.0 up to 1.10, plus listed versions
1.9.1
1.10
batik
Ubuntu:14.04:LTS
before 1.7.ubuntu-8ubuntu2.14.04.3, plus listed versions
1.7.ubuntu-8ubuntu21.7.ubuntu-8ubuntu2.14.04.11.7.ubuntu-8ubuntu2.14.04.2
1.7.ubuntu-8ubuntu2.14.04.3
batik
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
1.7.ubuntu-8ubuntu31.8-31.8-3ubuntu11.8-3ubuntu1+esm1
None known

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2018-8013 is a critical vulnerability (CVSS 9.8) in Apache Batik, published May 23, 2018. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 18.6%, the 97th percentile. Fixed in org.apache.xmlgraphics:batik 1.10.

References

Show 22 moreShow less
MoveEnter Open