---
id: "CVE-2026-123357"
page: "https://infrastack.ai/live/CVE-2026-123357"
kind: "vulnerability"
aliases: ["CVE-2026-123357"]
title: "GROBID: crafted PDF filename lets attackers run shell commands"
severity: "high"
cvss: 0.0
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["grobid", "java", "linux", "package"]
not_affected_if: ["filename-not-attacker-controlled", "non-linux", "rest-server-only"]
published_at: "2026-11-06T19:17:44+00:00"
first_seen_at: "2026-11-06T19:43:48+00:00"
updated_at: "2026-11-06T19:46:04+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-123357", "first_seen_at": "2026-11-06T19:43:48+00:00"}]
exploit_sources: []
---

# GROBID: crafted PDF filename lets attackers run shell commands

Link for people: https://infrastack.ai/live/CVE-2026-123357 (this .md is for agents)

GROBID's Linux non-server PDF conversion path puts the PDF filename into a bash -c command string, so a single quote in the name breaks the quoting. An attacker who controls the filename can run arbitrary commands with GROBID's process privileges.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the GROBID version in use; versions before `0.9.1` are affected.
- Look for use of grobid-core's non-server PDF conversion (DocumentSource.pdfalto) on Linux, not the bundled REST server.

## Fix

- Move GROBID to version `0.9.1` or later.

## Timeline

- 2026-11-06T19:43:48+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-123357

## Documents

- [advisory] Vendor advisory: github.com https://github.com/grobidOrg/grobid/security/advisories/GHSA-mgxf-7mg7-qpmf
- [fix] Release notes: github.com https://github.com/grobidOrg/grobid/releases/tag/0.9.1

## From the sources

GROBID is machine learning software for extracting information from scholarly documents. Prior to 0.9.1, the Linux non-server PDF conversion path in grobid-core/src/main/java/org/grobid/core/document/DocumentSource.java passes an attacker-influenced PDF filename through DocumentSource.pdfalto, which interpolates the path into a bash -c command string. A single quote in the filename can terminate the intended quoting, and ProcessRunner.run in grobid-core/src/main/java/org/grobid/core/process/ProcessRunner.java starts the resulting command through ProcessBuilder, allowing arbitrary commands to execute with GROBID process privileges. The bundled REST server path is not affected. This issue is fixed in version 0.9.1.

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
