An attacker-controlled document included XML-style tool-call delimiters that a model quoted as data. The Mistral.rs tool parser subsequently treated those bytes as structural commands and could emit another declared tool invocation. GHSA-34w8-j94f-8c5w documents tool-call parsing confusion; it does not grant arbitrary shell execution unless the target tool…
Inspect the ClaimsCase · DiggingBeagle record
Mistral.rs tool parser turned quoted XML delimiters into tool invocations
An attacker-controlled document included XML-style tool-call delimiters that a model quoted as data. GHSA-34w8-j94f-8c5w documents tool-call parsing confusion; it does not grant arbitrary shell execution unless the target tool is already available.
Public disclosure: Oct 18, 2026
Reported security vulnerability; exploitation prerequisites and tested version scope matter. No real-world exploitation is established unless separately reported.
Assessment profile
Assessment method- Setting
- research demonstration
- Exploitation
- demonstrated
- Evidence
- Grade C
- Remediation
- patch available
- AI role
- AGAINST AI
Basis and provenance
research demonstration; demonstrated. The cited primary disclosure supports the specific sequence and boundaries described here: An attacker places tool-call-like XML delimiters in a lower-trust document or retrieved text. The evidence does not independently establish consequences beyond the record's supported outcome; a numerical impact band cannot be justified from the available evidence. Evidence grade C reflects the source attribution and independent verification limits.
Assessed Nov 7, 2026 using diggingbeagle.assessment/1.
Evidence basis: CLM-DB07-029-OUTCOME · CLM-DB07-029-MECHANISM · Advisory: Mistral.rs parser interprets attacker-quoted XML delimiters as additional tool calls
At a glance
Keep generated natural-language content separate from parsed tool-call protocol tokens, and reject synthetic delimiters in untrusted quoted data.
Read the implicationsTool must already be declared, no automatic arbitrary shell execution. Ambiguous 0.9.3-0.9.4 range; no active abuse.
Limits and uncertaintyFull account
An attacker-controlled document included XML-style tool-call delimiters that a model quoted as data. The Mistral.rs tool parser subsequently treated those bytes as structural commands and could emit another declared tool invocation.
GHSA-34w8-j94f-8c5w documents tool-call parsing confusion; it does not grant arbitrary shell execution unless the target tool is already available. Advisory version boundaries differ between reports; 0.9.5 is the conservative fixed target.
The injection was carried by text that should have been treated as quoted data. An external document contained XML-looking closing delimiters matching a tool-call serialization format. When the model reproduced that text, mistral.rs's parser could treat the embedded delimiters as structure and emit an additional call to an already declared tool. The model does not need permission to create an entirely new tool for this to matter; it can redirect an available one. Reports differ on the earliest corrected version, so the conservative verified patch baseline should be checked against 0.9.5 rather than confidently declaring all 0.9.3 builds safe. There is no disclosed in-the-wild campaign and no automatic shell execution in the absence of a declared effectful tool.
The model may quote hostile text as ordinary source material, yet a downstream tool parser can reinterpret those same bytes as control syntax. This moves the exploit from the model's intent to the serialization boundary between prose and declared tool calls. The advisory requires an already available tool, and version guidance differs between disclosures; targeting 0.9.5 is the conservative reported fix. Tests should compare the raw generated message with the final structured calls to ensure quoted XML-style delimiters cannot manufacture a second invocation.
Mechanism and trust boundary
- 01
An attacker places tool-call-like XML delimiters in a lower-trust document or retrieved text.
- 02
A model quotes or incorporates that text in an answer that is then parsed for tool-call structure.
- 03
The mistral.rs parser promotes untrusted quoted delimiters into an extra invocation of a tool already available to the assistant.
Claims & evidence
CLM-DB07-029-OUTCOMEGHSA-34w8-j94f-8c5w documents tool-call parsing confusion; it does not grant arbitrary shell execution unless the target tool is already available. Advisory version boundaries differ between reports; 0.9.5 is the conservative fixed target.supported
Basis: reported finding
- supportsAdvisory: Mistral.rs parser interprets attacker-quoted XML delimiters as additional tool callsprimary disclosure
GHSA-34w8-j94f-8c5w; parser confusion; version disclosures
CLM-DB07-029-MECHANISMAn attacker-controlled document included XML-style tool-call delimiters that a model quoted as data. The Mistral.rs tool parser subsequently treated those bytes as structural commands and could emit another declared tool invocation.supported
Basis: reported finding
- supportsAdvisory: Mistral.rs parser interprets attacker-quoted XML delimiters as additional tool callsprimary disclosure
GHSA-34w8-j94f-8c5w; parser confusion; version disclosures
Implications
Keep generated natural-language content separate from parsed tool-call protocol tokens, and reject synthetic delimiters in untrusted quoted data.
Unknowns and contradictions
- Tool must already be declared, no automatic arbitrary shell execution. Ambiguous 0.9.3-0.9.4 range; no active abuse.
Sources and citation
Material revision history
- Nov 7, 2026 · Published version · first publication · revision 227