Skip to main content

odt2spip CVE-2026-104085

| EUVDEUVD-2026-98963 HIGH
OS Command Injection (CWE-78)
2026-10-13 VulnCheck GHSA-87r4-r3m7-gvjv
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain SPIP author credentials
  2. Delivery
    Craft filename with $(id) metacharacters
  3. Exploit
    Upload via document import form
  4. Execution
    Bypass odt2spip_deplacer_fichier_upload sanitization
  5. Persist
    Inject into LibreOffice::createCommand
  6. Impact
    Execute commands as web-server user

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK

2 techniques across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated SPIP account with author privileges and access to the odt2spip document import form on a site running the plugin below version 4.4.0. The attacker must upload a document with a non-.odt filename containing shell metacharacters (e.g. $(id)); the injection is processed during the LibreOffice conversion step via odt2spip_deplacer_fichier_upload() and LibreOffice::createCommand(), so a working LibreOffice conversion backend must be present. Limiting factors: exploitation is gated by the author-level authentication requirement (PR:L) and the presence of this specific plugin, which is not part of a default SPIP install; no user interaction by a victim is needed.

Impact

This is a genuine but access-gated priority. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) with full High impact to confidentiality, integrity, and availability (VC:H/VI:H/VA:H) is consistent with the description: a network-reachable OS command injection (CWE-78) yielding remote code execution as the web-server user. The decisive limiting signal is PR:L - exploitation requires an authenticated SPIP author account, so this is not an unauthenticated internet-wide threat but a privilege-escalation/post-authentication RCE. No EPSS score, SSVC decision, or KEV status was provided in the input, and there is no POC flag, so exploitation probability cannot be quantified from the data; per precision rules this is 'no public exploit identified at time of analysis.' A vendor patch exists (SPIP odt2spip 4.4.0) and the report comes from VulnCheck, which raises confidence in validity but is not evidence of active exploitation. Net: a high-severity, credibly-reported flaw whose real-world risk is tempered by the authenticated-author prerequisite and the niche footprint of the affected plugin.

Exploit ScenarioDerived

An attacker who holds (or phishes/registers) an author-level account on a SPIP site running odt2spip below 4.4.0 opens the document import form and uploads a file whose non-.odt filename embeds shell metacharacters such as $(id). When the plugin passes the filename to LibreOffice::createCommand() for conversion, the injected command executes as the web-server user, giving remote code execution. No public exploit code is identified in the provided data, but the attack is low-complexity (AC:L) and requires no user interaction.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 2.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 13, 2026

Authenticated OS command injection in the odt2spip plugin for SPIP before 4.4.0 allows author-level users to execute arbitrary commands as the web-server user by uploading a document with a crafted non-.odt filename through the document import form. The flaw survives sanitization in odt2spip_deplacer_fichier_upload() and LibreOffice::createCommand(), then triggers during LibreOffice conversion; exploitation requires a working LibreOffice backend and an author account. No public exploit was identified at time of analysis.

RemediationAI

Upgrade the odt2spip plugin to version 4.4.0 or later; this is the vendor-released patch and the primary remediation. The advisory at https://plugins.spip.net/odt2spip.html provides the vendor update path, and the VulnCheck advisory at https://www.vulncheck.com/advisories/odt2spip-os-command-injection-via-document-filename offers additional detail. If immediate upgrade is not possible, disable or remove the odt2spip document import form for author roles, or temporarily deactivate the plugin; this breaks document import functionality and may disrupt editorial workflows. Restrict the author role to trusted users as a compensating control, but note that any author account can still trigger the flaw if the form remains reachable. Additionally, run the LibreOffice conversion process in a least-privilege sandbox or container and reject uploaded filenames containing shell metacharacters; these measures reduce impact but do not replace the patch and may add operational overhead or break legitimate non-.odt document handling.

Affected VersionsENISA

odt2spip 0 ≤4.4.0

Affected Packages

euvd odt2spip no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The vulnerability is a CWE-78 OS command injection in the odt2spip plugin for SPIP. When an authenticated author uploads a document through the import form, the plugin handles the filename in odt2spip_deplacer_fichier_upload(); insufficient sanitization allows shell metacharacters such as $(id) in a non-.odt filename to survive into LibreOffice::createCommand(), where the filename is incorporated into a command executed to invoke LibreOffice for conversion. This yields command execution as the web-server user. The CPE cpe:2.3:a:odt2spip:odt2spip:*:*:*:*:*:*:*:* identifies the odt2spip product, and affected versions are those before 4.4.0. The CVSS vector CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N and the assessed CVSS:3.1 vector both indicate network-reachable exploitation requiring low privileges (author account) and no user interaction, with high confidentiality, integrity, and availability impact.

Know when Odt2Spip gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 8.8 HIGH

Remote import form (AV:N), straightforward metacharacter injection (AC:L), requires an author account (PR:L), no victim interaction (UI:N), and RCE as web-server user yields full C/I/A with scope unchanged.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

odt2spip plugin for SPIP before 4.4.0 contains an OS command injection vulnerability that allows authenticated authors to execute arbitrary commands by uploading a document with a maliciously crafted filename through the document import form. Attackers can embed shell metacharacters such as $(id) in a non-.odt filename, which survives insufficient sanitization in odt2spip_deplacer_fichier_upload() and LibreOffice::createCommand(), to achieve remote code execution as the web-server user during the LibreOffice conversion process.

Executive ViewAI

Why It Matters

A command-injection flaw in the odt2spip document-import plugin for SPIP lets any user holding an existing author-level account run arbitrary commands as the web-server user, putting site content, stored credentials, and anything reachable from the web host at risk. Organizations running SPIP with this plugin and a LibreOffice conversion backend are exposed until they move to the fixed 4.4.0 release or later. No public exploit identified at time of analysis and a vendor patch is available, so leadership should treat this as a high-priority remediation rather than an emergency, while noting that the low privilege bar widens the pool of accounts that could trigger it.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
2.4%
Top 16% exploitable
Prevalence
Low
niche import plugin for the SPIP CMS, limited enterprise footprint
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 2.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: +2
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy