CVE-2026-57567 Escritura y lectura arbitraria de archivos locales en Readest vía comandos Tauri
Los comandos download_file y upload_file de las builds de escritorio Tauri aceptaban un file_path controlado por la webview sin validar el alcance del sistema de archivos, rutas absolutas ni recorrido de directorios. JavaScript ejecutado en el origen privilegiado podía escribir contenido arbitrario o leer y enviar cualquier archivo accesible por el proceso. Corregido en 0.11.10.
CVSS 3.1
- Probabilidad de explotación · EPSS del 09/110,7 % · percentil 52
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
readest
< 0.11.10
Qué hacer
- Verificá si usás readest y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 3.1 · 8.6 ALTA
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
- Vector de ataqueLocal
- Complejidad del ataqueBaja
- Privilegios requeridosNinguno
- Interacción del usuarioRequerida
- AlcanceCambiado
- ConfidencialidadAlta
- IntegridadAlta
- DisponibilidadAlta
Descripción original
Readest is a modern, feature-rich ebook reader designed for seamless cross-platform access and an intuitive reading experience. In affected desktop Tauri builds prior to 0.11.10, the apps/readest-app/src-tauri/src/transfer_file.rs commands download_file and upload_file accepted a webview-controlled file_path and passed it to File::create or File::open without checking the Tauri filesystem scope, rejecting absolute paths, or blocking parent-directory traversal. The commands were registered in the global invoke handler for the main, updater, and reader-* windows, so JavaScript executing in the privileged application origin could write attacker-controlled content to any path writable by the process or read and send any path readable by the process. Exploitation requires JavaScript execution in that privileged origin, such as through an application XSS or compromised renderer; whether book-embedded JavaScript can reach the parent origin was not established. The write primitive can overwrite trusted or startup files, while the read primitive can expose keys, tokens, and application secrets. This issue is fixed in version 0.11.10.
Referencias (6)
- github.com/readest/readest/security/advisories/GHSA-55vr-pvq5-6fmg
- github.com/readest/readest/pull/4639
- github.com/readest/readest/pull/4651
- github.com/readest/readest/commit/4025c4d7b52c8c174ec1d4c02c2a864cce249604
- github.com/readest/readest/commit/446c2c72de198de2dfcd63589f549ca517961d15
- github.com/readest/readest/releases/tag/v0.11.10
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.