The ACME-challenge endpoint in Appwrite 0.5.0 through 0.12.x before 0.12.2 allows remote attackers to read arbitrary local files via ../ directory traversal. In order to be vulnerable, APP_STORAGE_CERTIFICATES/.well-known/acme-challenge must exist on disk. (This pathname is automatically created if the user chooses to install Let's Encrypt certificates via Appwrite.)
https://github.com/appwrite/appwrite/releases/tag/0.12.2
https://github.com/appwrite/appwrite/pull/2780
https://github.com/appwrite/appwrite/blob/0.12.0/app/controllers/general.php#L539
https://dubell.io/unauthenticated-lfi-in-appwrite-0.5.0-0.12.1/
Published: 2024-02-22
Updated: 2025-04-03
Base Score: 7.8
Vector: CVSS2#AV:N/AC:L/Au:N/C:C/I:N/A:N
Severity: High
Base Score: 7.5
Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Severity: High
Base Score: 8.2
Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Severity: High
EPSS: 0.00182