Keystone — это система управления контентом для Node.js. До версии 6.5.2 контроль доступа {field}.isFilterable можно было обойти в запросах findMany, передав курсор. Это можно использовать для подтверждения существования записей по значениям защищенных полей.
Исправление для CVE-2025-46720 (обход isFilterable на уровне поля для мутаций обновления и удаления) добавило проверки параметраwhere в мутациях обновления и удаления, однако параметр курсора в findMany не был исправлен и принимает тот же тип ввода UniqueWhere. Эта проблема исправлена в версии 6.5.2.
Показать оригинальное описание (EN)
Keystone is a content management system for Node.js. Prior to version 6.5.2, {field}.isFilterable access control can be bypassed in findMany queries by passing a cursor. This can be used to confirm the existence of records by protected field values. The fix for CVE-2025-46720 (field-level isFilterable bypass for update and delete mutations) added checks to the where parameter in update and delete mutations however the cursor parameter in findMany was not patched and accepts the same UniqueWhere input type. This issue has been patched in version 6.5.2.
Характеристики атаки
Последствия
Строка CVSS v3.1