Description
Kopia is a cross-platform backup tool for Windows, macOS, and Linux with fast incremental backups, client-side end-to-end encryption, compression, and data deduplication. Prior to 0.23.0, Kopia's HTTP server started with --without-password accepts unauthenticated requests to /api/v1/repo/exists and forwards attacker-supplied SFTP storage configuration to blob.NewStorage, where externalSSH: true and sshArguments containing -oProxyCommand=<cmd> can cause exec.CommandContext("ssh") to invoke the command through OpenSSH. This issue is fixed in version 0.23.0.
Published: 2026-07-16
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Prior to 0.23.0, the Kopia HTTP server, when run with the --without-password flag, exposes the /api/v1/repo/exists endpoint without authentication. An unauthenticated client can provide an SFTP storage configuration that sets externalSSH to true and includes a malicious sshArguments string containing an -oProxyCommand option. Kopia forwards that configuration to blob.NewStorage, which then invokes exec.CommandContext("ssh") with the supplied command line. Because the command is executed by OpenSSH on the host that runs the Kopia HTTP server, an attacker can inject arbitrary shell commands, yielding remote code execution. The vulnerability was addressed in version 0.23.0, which removes the ability to inject a ProxyCommand via the storage configuration.

Affected Systems

Vulnerable versions are all releases of the Kopia backup tool from kopia:kopia prior to version 0.23.0, which is available and Linux. Any installation running the HTTP server with the --without-password option during this period is susceptible, regardless of the backup target platform.

Risk and Exploitability

The CVSS score of 9.8 reflects critical severity. The EPSS score of < 1% indicates a very low but non‑zero likelihood of exploitation at this time. Kopia is not listed in the CISA KEV catalog. An attacker can achieve remote code execution simply by sending a crafted request to the exposed HTTP endpoint while the server is running with --without-password. No additional prerequisites are required beyond the HTTP server being reachable.

Generated by OpenCVE AI on July 31, 2026 at 01:49 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Kopia to version 0.23.0 or later, where the vulnerability is fixed.
  • Ensure the HTTP server is not started with the --without-password flag and enforce SSH configuration in backup definitions to eliminate the possibility of injecting a ProxyCommand argument.
  • Disable externalSSH and remove any custom sshArguments from backup configuration files until a patch is applied to prevent accidental command injection.

Generated by OpenCVE AI on July 31, 2026 at 01:49 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-2q4c-3mrw-63c3 Kopia: RCE via SSH ProxyCommand Injection
History

Thu, 30 Jul 2026 20:45:00 +0000

Type Values Removed Values Added
First Time appeared Kopia
Kopia kopia
Vendors & Products Kopia
Kopia kopia

Thu, 16 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Thu, 16 Jul 2026 16:00:00 +0000

Type Values Removed Values Added
Description Kopia is a cross-platform backup tool for Windows, macOS, and Linux with fast incremental backups, client-side end-to-end encryption, compression, and data deduplication. Prior to 0.23.0, Kopia's HTTP server started with --without-password accepts unauthenticated requests to /api/v1/repo/exists and forwards attacker-supplied SFTP storage configuration to blob.NewStorage, where externalSSH: true and sshArguments containing -oProxyCommand=<cmd> can cause exec.CommandContext("ssh") to invoke the command through OpenSSH. This issue is fixed in version 0.23.0.
Title Kopia: Unauthenticated RCE via SSH ProxyCommand Injection when --insecure --without-password is used
Weaknesses CWE-306
CWE-78
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-16T18:08:13.371Z

Reserved: 2026-05-13T04:38:01.164Z

Link: CVE-2026-45695

cve-icon Vulnrichment

Updated: 2026-07-16T18:07:10.729Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T02:00:05Z

Weaknesses
  • CWE-306

    Missing Authentication for Critical Function

  • CWE-78

    Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')