CVE-2026-89036: Appwrite < 2.0.0 Argument Injection via providerRootDirectory Parameter

Published Sep 17, 2026
·
Updated

Appwrite before 2.0.0 contains an argument injection vulnerability that allows authenticated users with functions.write or sites.write permissions to execute arbitrary commands by injecting TAB characters into the providerRootDirectory parameter used to construct GNU tar commands. The application uses escapeshellcmd instead of escapeshellarg and fails to quote the parameter, allowing TAB characters to survive sanitization and be interpreted as argument separators, enabling injection of arbitrary GNU tar arguments such as --checkpoint-action=exec to achieve remote code execution as the builds worker process user.

Affected Software

1 affected component
Appwrite<2.0.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade appwrite to a version that resolves this vulnerability.

    Fixed in 2.0.0
  2. Configuration

    Update Appwrite to a version that fixes the argument injection in the providerRootDirectory parameter used to construct GNU tar commands (the issue affects versions before 2.0.0).

    Appwrite providerRootDirectory handling Quote providerRootDirectory argument before constructing GNU tar command (use proper shell escaping so TAB characters cannot survive) = Use proper quoting/argument escaping (e.g., escapeshellarg) instead of escapeshellcmd and ensure providerRootDirectory is quoted

Event History

Sep 17, 2026
CVE Published
via MITRE·03:54 PM
Data Sourced
via MITRE·03:54 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Who can exploit this issue?

An authenticated user must have either functions.write or sites.write permission. Exploitation results in command execution as the builds worker process user.

2

What input is required for exploitation?

The attacker needs to supply TAB characters in the providerRootDirectory parameter. Those characters can be interpreted as argument separators in the GNU tar command, allowing injected tar arguments such as --checkpoint-action=exec.

3

Are Appwrite 2.0.0 installations affected?

The issue affects Appwrite versions before 2.0.0. The provided release and commit references identify 2.0.0 as the fixed release.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203