CVE-2026-49989 in CrateDB
Resumen
por VulDB • 2026-08-14
CrateDB es una base de datos SQL distribuida. Antes de las versiones 6.2.8 y 6.3.2, cualquier usuario autenticado puede leer o eliminar cualquier blob cuyo resumen SHA-1 conozca, e insertar nuevos blobs incondicionalmente en cualquier tabla de blobs, independientemente de los permisos `GRANT`. CrateDB ofrece dos formas de acceder al almacenamiento de blobs: SQL (`SELECT ... FROM blob.<table>` y similares) y la API HTTP para blobs (`GET|PUT/DELETE /_blobs/{table}/{digest}`). La ruta SQL pasa por `AccessControl`, que es quien aplica los permisos otorgados; por eso, una consulta como `SELECT digest FROM blob.secret_blobs` falla con un error de privilegios insuficientes para un usuario sin permisos sobre la tabla. En cambio, la ruta HTTP autentica la solicitud pero nunca verifica en `AccessControl` si el usuario autenticado tiene permiso para acceder a la tabla. Por lo tanto, un usuario sin permisos recibe una `MissingPrivilegeException` al usar SQL, pero obtiene una respuesta `200 OK` junto con los bytes del blob mediante `GET /_blobs/secret_blobs/<digest>`. Los despliegues que no utilizan `BLOB TABLE` no se ven afectados. La autenticación en sí sigue funcionando correctamente; el fallo radica estrictamente en que estar autenticado como cualquier usuario se considera suficiente para realizar cualquier operación sobre blobs. Las versiones 6.2.8 y 6.3.2 corrigen este problema.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.