Skip to content
Heist/ feed
Back to feed
Medium

libpdfbox-java, libpdfbox2-java — security advisory

Type: advisorySources: OSVAdvisory ID: DEBIAN-CVE-2026-33929

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Apache PDFBox Examples. This issue affects the ExtractEmbeddedFiles example in Apache PDFBox: from 2.0.24 through 2.0.36, from 3.0.0 through 3.0.7. Users are recommended to update to version 2.0.37 or 3.0.8 once available. Until then, they should apply the fix provided in GitHub PR 427. The ExtractEmbeddedFiles example contained a path traversal vulnerability (CWE-22) mentioned in CVE-2026-23907. However the change in the releases 2.0.36 and 3.0.7 is flawed because it doesn't consider the file path separator. Because of that, a user having writing rights on /home/ABC could be victim to a malicious PDF resulting in a write attempt to any path starting with /home/ABC, e.g. "/home/ABCDEF". Users who have copied this example into their production code should apply the mentioned change. The example has been changed accordingly and is available in the project repository.

Products
libpdfbox-java, libpdfbox2-java
Affected versions
1:1.8.16-2, 1:1.8.16-3, 1:1.8.16-4, 1:1.8.16-5, 1:1.8.17-1, 2.0.27-2, 2.0.29-1
Fixed versions
Not specified
CVEs
CVE-2026-33929
Confirmed fixed CVEs
Not specified
Updated in this feed
1 Nov 2026, 17:46 UTC · Revision 2

Source evidence

DEBIAN-CVE-2026-33929

core-osv · Original source

Published 14 Apr 2026, 09:16 UTC

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Apache PDFBox Examples. This issue affects the ExtractEmbeddedFiles example in Apache PDFBox: from 2.0.24 through 2.0.36, from 3.0.0 through 3.0.7. Users are recommended to update to version 2.0.37 or 3.0.8 once available. Until then, they should apply the fix provided in GitHub PR 427. The ExtractEmbeddedFiles example contained a path traversal vulnerability (CWE-22) mentioned in CVE-2026-23907. However the change in the releases 2.0.36 and 3.0.7 is flawed because it doesn't consider the file path separator. Because of that, a user having writing rights on /home/ABC could be victim to a malicious PDF resulting in a write attempt to any path starting with /home/ABC, e.g. "/home/ABCDEF". Users who have copied this example into their production code should apply the mentioned change. The example has been changed accordingly and is available in the project repository.

osv:DEBIAN-CVE-2026-33929

libpdfbox-java

Fixed versions: Not specified

libpdfbox-java

Fixed versions: Not specified

libpdfbox-java

Fixed versions: Not specified

libpdfbox2-java

Fixed versions: Not specified

libpdfbox2-java

Fixed versions: Not specified

libpdfbox2-java

Fixed versions: Not specified

Complete source record
{
  "id": "320bb0eeb52152ed1f9a2104576159f1e4d628f48673aed8773c144f19bf2c84",
  "url": "https://osv.dev/vulnerability/DEBIAN-CVE-2026-33929",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "DEBIAN-CVE-2026-33929",
    "summary": "Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Apache PDFBox Examples. This issue affects the ExtractEmbeddedFiles example in Apache PDFBox: from 2.0.24 through 2.0.36, from 3.0.0 through 3.0.7. Users are recommended to update to version 2.0.37 or 3.0.8 once available. Until then, they should apply the fix provided in GitHub PR 427. The ExtractEmbeddedFiles example contained a path traversal vulnerability (CWE-22) mentioned in CVE-2026-23907. However the change in the releases 2.0.36 and 3.0.7 is flawed because it doesn't consider the file path separator. Because of that, a user having writing rights on /home/ABC could be victim to a malicious PDF resulting in a write attempt to any path starting with /home/ABC, e.g. \"/home/ABCDEF\". Users who have copied this example into their production code should apply the mentioned change. The example has been changed accordingly and is available in the project repository.",
    "evidence": "osv:DEBIAN-CVE-2026-33929",
    "products": [
      {
        "name": {
          "value": "libpdfbox-java",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1:1.8.16-2",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "1:1.8.16-3",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "1:1.8.16-4",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "1:1.8.16-5",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "1:1.8.17-1",
            "evidence": "/affected/0/versions"
          }
        ]
      },
      {
        "name": {
          "value": "libpdfbox-java",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1:1.8.16-5",
            "evidence": "/affected/1/versions"
          },
          {
            "value": "1:1.8.17-1",
            "evidence": "/affected/1/versions"
          }
        ]
      },
      {
        "name": {
          "value": "libpdfbox-java",
          "evidence": "/affected/2/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1:1.8.16-5",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "1:1.8.17-1",
            "evidence": "/affected/2/versions"
          }
        ]
      },
      {
        "name": {
          "value": "libpdfbox2-java",
          "evidence": "/affected/3/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "2.0.27-2",
            "evidence": "/affected/3/versions"
          },
          {
            "value": "2.0.29-1",
            "evidence": "/affected/3/versions"
          }
        ]
      },
      {
        "name": {
          "value": "libpdfbox2-java",
          "evidence": "/affected/4/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "2.0.29-1",
            "evidence": "/affected/4/versions"
          }
        ]
      },
      {
        "name": {
          "value": "libpdfbox2-java",
          "evidence": "/affected/5/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "2.0.29-1",
            "evidence": "/affected/5/versions"
          }
        ]
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "DEBIAN-CVE-2026-33929",
      "aliases": [
        "DEBIAN-CVE-2026-33929"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "libpdfbox-java",
            "purl": "pkg:deb/debian/libpdfbox-java?arch=source&distro=bookworm",
            "ecosystem": "Debian:12"
          },
          "versions": [
            "1:1.8.16-2",
            "1:1.8.16-3",
            "1:1.8.16-4",
            "1:1.8.16-5",
            "1:1.8.17-1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-33929.json"
          },
          "ecosystem_specific": {
            "urgency": "unimportant"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "libpdfbox-java",
            "purl": "pkg:deb/debian/libpdfbox-java?arch=source&distro=trixie",
            "ecosystem": "Debian:13"
          },
          "versions": [
            "1:1.8.16-5",
            "1:1.8.17-1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-33929.json"
          },
          "ecosystem_specific": {
            "urgency": "unimportant"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "libpdfbox-java",
            "purl": "pkg:deb/debian/libpdfbox-java?arch=source&distro=forky",
            "ecosystem": "Debian:14"
          },
          "versions": [
            "1:1.8.16-5",
            "1:1.8.17-1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-33929.json"
          },
          "ecosystem_specific": {
            "urgency": "unimportant"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "libpdfbox2-java",
            "purl": "pkg:deb/debian/libpdfbox2-java?arch=source&distro=bookworm",
            "ecosystem": "Debian:12"
          },
          "versions": [
            "2.0.27-2",
            "2.0.29-1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-33929.json"
          },
          "ecosystem_specific": {
            "urgency": "unimportant"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "libpdfbox2-java",
            "purl": "pkg:deb/debian/libpdfbox2-java?arch=source&distro=trixie",
            "ecosystem": "Debian:13"
          },
          "versions": [
            "2.0.29-1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-33929.json"
          },
          "ecosystem_specific": {
            "urgency": "unimportant"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "libpdfbox2-java",
            "purl": "pkg:deb/debian/libpdfbox2-java?arch=source&distro=forky",
            "ecosystem": "Debian:14"
          },
          "versions": [
            "2.0.29-1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-33929.json"
          },
          "ecosystem_specific": {
            "urgency": "unimportant"
          }
        }
      ],
      "modified": "2026-10-27T09:47:40.741719950Z",
      "provider": "osv",
      "upstream": [
        "CVE-2026-33929"
      ],
      "references": [
        "https://security-tracker.debian.org/tracker/CVE-2026-33929"
      ]
    },
    "related_cves": [
      {
        "value": "CVE-2026-33929",
        "evidence": "/upstream"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 461150,
  "published_at": "2026-04-14T09:16:36.297+00:00"
}