Версии Craft CMS >= 5.0.0-RC1 и < 5.10.11 содержат недостающую уязвимость авторизации в AssetsController::actionReplaceFile. Если в запросе указаны sourceAssetId и targetFilename, но отсутствует assetsId, целевой ресурс разрешается по папке и имени файла после выполнения проверок разрешений, поэтому разрешение replacePeerFiles никогда не применяется принудительно. Аутентифицированный автор с низким уровнем привилегий, имеющий только разрешение replaceFiles в общей папке, может перезаписать содержимое файла ресурсов однорангового узла (расположенного в той же папке) байтами, контролируемыми злоумышленником.
Исправлено в 5.10.11.
Показать оригинальное описание (EN)
Craft CMS versions >= 5.0.0-RC1 and < 5.10.11 contain a missing authorization vulnerability in AssetsController::actionReplaceFile. When a request supplies sourceAssetId and targetFilename but omits assetId, the target asset is resolved by folder and filename after the permission checks execute, so the replacePeerFiles permission is never enforced. An authenticated low-privilege author with only the replaceFiles permission on a shared folder can overwrite the content of a peer's asset file (located in the same folder) with attacker-controlled bytes. Fixed in 5.10.11.
Характеристики атаки
Последствия
Строка CVSS v4.0