/

CVE-2026-110447

Severity:

CRITICAL RISK

(9.8)

OS Command Injection (CWE-78) in Collabora CODE Server

CVE-2026-110447

Analyzed

Vulnerability type

Category:

OS Command Injection

CWE:

CWE-78

Impact:

Remote Code Execution

Severity:

CRITICAL RISK

(9.8)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

A critical OS command injection vulnerability in Collabora Online's built-in CODE Server integration allows remote attackers to execute commands through the proxy.php endpoint under a specific server state. The risk arises when the embedded CODE Server is not running, such as shortly after a product restart, and affects the Nextcloud richdocumentscode deployment rather than standalone Collabora Online servers.

A critical OS command injection vulnerability in Collabora Online's built-in CODE Server integration allows remote attackers to execute commands through the proxy.php endpoint under a specific server state. The risk arises when the embedded CODE Server is not running, such as shortly after a product restart, and affects the Nextcloud richdocumentscode deployment rather than standalone Collabora Online servers.

Affected context

The vulnerability occurs in deployments that use Collabora Online's built-in CODE Server through the Nextcloud richdocumentscode app. It becomes relevant when the embedded CODE Server is unavailable and requests are handled by the vulnerable proxy.php path. Standalone Collabora Online servers are not affected by this deployment-specific issue.

The vulnerability occurs in deployments that use Collabora Online's built-in CODE Server through the Nextcloud richdocumentscode app. It becomes relevant when the embedded CODE Server is unavailable and requests are handled by the vulnerable proxy.php path. Standalone Collabora Online servers are not affected by this deployment-specific issue.

Exploit preconditions

  • Attack surface: Network-accessible HTTP request handling through the Nextcloud-integrated CODE Server proxy
  • Required access: The attacker must be able to reach the affected application endpoint; the exact authentication requirement depends on deployment configuration
  • Trigger point: Processing a request through proxy.php while the embedded CODE Server is not running
  • Why exploitation is possible: Untrusted request data reaches an operating-system command execution path without sufficient separation between data and shell commands
  • Attack surface: Network-accessible HTTP request handling through the Nextcloud-integrated CODE Server proxy
  • Required access: The attacker must be able to reach the affected application endpoint; the exact authentication requirement depends on deployment configuration
  • Trigger point: Processing a request through proxy.php while the embedded CODE Server is not running
  • Why exploitation is possible: Untrusted request data reaches an operating-system command execution path without sufficient separation between data and shell commands

Why this happens

The underlying defect is an OS command injection condition in the proxy logic. When the built-in CODE Server is unavailable, proxy.php processes attacker-influenced input in a way that permits it to affect command execution rather than treating it strictly as inert data. This maps to CWE-78: Improper Neutralization of Special Elements used in an OS Command, commonly called OS command injection.

The underlying defect is an OS command injection condition in the proxy logic. When the built-in CODE Server is unavailable, proxy.php processes attacker-influenced input in a way that permits it to affect command execution rather than treating it strictly as inert data. This maps to CWE-78: Improper Neutralization of Special Elements used in an OS Command, commonly called OS command injection.

Potential impact

  • An attacker may execute arbitrary operating-system commands in the affected server process context
  • The application and its stored data could be compromised
  • Credentials, tokens, or configuration secrets could be exposed
  • The attacker could alter documents, deploy persistence, or disrupt collaboration services
  • A compromised host could be used for lateral movement, subject to available privileges and network access
  • An attacker may execute arbitrary operating-system commands in the affected server process context
  • The application and its stored data could be compromised
  • Credentials, tokens, or configuration secrets could be exposed
  • The attacker could alter documents, deploy persistence, or disrupt collaboration services
  • A compromised host could be used for lateral movement, subject to available privileges and network access

General mitigation guidance

Mitigation generally focuses on removing shell interpretation from request-processing paths and reducing the trust placed in proxy input.

Common defensive patterns include:

  • Using direct, argument-based process APIs instead of shell command construction
  • Applying strict allowlists and schema validation to proxy parameters
  • Separating service-health handling from command execution logic
  • Ensuring failure and restart paths enforce the same input validation as normal operation
  • Running the integrated CODE Server with least-privilege service accounts and restricted filesystem and network permissions
  • Limiting exposure of administrative and collaboration endpoints through authentication, network segmentation, and reverse-proxy policy
  • Maintaining a supported security-maintained release and validating that the vulnerable integration path is no longer present

Mitigation generally focuses on removing shell interpretation from request-processing paths and reducing the trust placed in proxy input.

Common defensive patterns include:

  • Using direct, argument-based process APIs instead of shell command construction
  • Applying strict allowlists and schema validation to proxy parameters
  • Separating service-health handling from command execution logic
  • Ensuring failure and restart paths enforce the same input validation as normal operation
  • Running the integrated CODE Server with least-privilege service accounts and restricted filesystem and network permissions
  • Limiting exposure of administrative and collaboration endpoints through authentication, network segmentation, and reverse-proxy policy
  • Maintaining a supported security-maintained release and validating that the vulnerable integration path is no longer present

How teams detect issues like this

Detection can combine source review, runtime monitoring, and deployment policy controls.

Useful approaches include:

  • Static analysis rules for string concatenation, interpolation, or formatting passed to shell execution APIs
  • Code review checks covering fallback, restart, error-handling, and service-unavailable branches
  • Monitoring proxy requests and server processes for unexpected command interpreters, child processes, or anomalous arguments
  • Web application firewall or reverse-proxy policies that restrict unexpected parameters and access to the affected endpoint
  • CI security checks that test command construction and enforce approved process-execution patterns
  • Automated code review tools may help identify command-execution sinks and insufficient input validation

Detection can combine source review, runtime monitoring, and deployment policy controls.

Useful approaches include:

  • Static analysis rules for string concatenation, interpolation, or formatting passed to shell execution APIs
  • Code review checks covering fallback, restart, error-handling, and service-unavailable branches
  • Monitoring proxy requests and server processes for unexpected command interpreters, child processes, or anomalous arguments
  • Web application firewall or reverse-proxy policies that restrict unexpected parameters and access to the affected endpoint
  • CI security checks that test command construction and enforce approved process-execution patterns
  • Automated code review tools may help identify command-execution sinks and insufficient input validation

Sources

SourceLink
github.comgithub.com/CollaboraOnline/richdocumentscode/issues/354
help.nextcloud.comhelp.nextcloud.com/t/to-collabora-built-in-user-update-asap/250516
cisa.govcisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-110447

Frequently asked

questions

It can be remotely exploitable when the affected Nextcloud-integrated CODE Server endpoint is network accessible and the request reaches the vulnerable proxy path while the embedded server is unavailable. Exploitability can vary with authentication, reverse-proxy, and network controls.

No. The described issue is specific to the built-in CODE Server deployment provided through the Nextcloud richdocumentscode app.

Remove shell interpretation from proxy processing, use direct process APIs with fixed argument boundaries, and apply strict allowlist validation before any backend operation.

Review all fallback and restart paths for command construction, enforce least privilege, restrict endpoint exposure, and use static analysis and runtime monitoring to detect unsafe operating-system command execution.

It can be remotely exploitable when the affected Nextcloud-integrated CODE Server endpoint is network accessible and the request reaches the vulnerable proxy path while the embedded server is unavailable. Exploitability can vary with authentication, reverse-proxy, and network controls.

No. The described issue is specific to the built-in CODE Server deployment provided through the Nextcloud richdocumentscode app.

Remove shell interpretation from proxy processing, use direct process APIs with fixed argument boundaries, and apply strict allowlist validation before any backend operation.

Review all fallback and restart paths for command construction, enforce least privilege, restrict endpoint exposure, and use static analysis and runtime monitoring to detect unsafe operating-system command execution.

Find out what's already
exploitable in your codebase.