Ceph — это платформа распределенного хранения с открытым исходным кодом, обеспечивающая объектное, блочное и файловое хранилище. В версиях до 20.2.4 и 19.2.6 обработчик SigV4 шлюза объектов Ceph (RGW) не отклоняет запросы, которые несут заголовки x-amz-*, отсутствующие в наборе подписанных заголовков, позволяя любому, кто владеет предварительно подписанным URL-адресом, присоединять произвольные неподписанные заголовки x-amz-*, которые RGW будет учитывать. AWS S3 требует, чтобы каждый заголовок x-amz-* в запросе SigV4 был подписан, и отклоняет запросы, содержащие дополнительные неподписанные заголовки, но RGW проверяет только заголовки, перечисленные в X-Amz-SignedHeaders, и игнорирует любые дополнительные, поэтому они вступают в силу, не покрываясь подписью.
Добавляя такие заголовки к заранее назначенному URL-адресу PUT, злоумышленник может предоставить себе больше возможностей, чем предполагал подписавший URL-адрес, и повысить свои привилегии. Эта проблема исправлена в версиях 20.2.4 и 19.2.6.
Показать оригинальное описание (EN)
Ceph is an open-source distributed storage platform providing object, block, and file storage. In versions prior to 20.2.4 and 19.2.6, the Ceph Object Gateway (RGW) SigV4 handler does not reject requests that carry x-amz-* headers absent from the signed header set, allowing anyone holding a presigned URL to attach arbitrary unsigned x-amz-* headers that RGW will honor. AWS S3 requires every x-amz-* header on a SigV4 request to be signed and rejects requests bearing additional unsigned headers, but RGW validates only the headers listed in X-Amz-SignedHeaders and ignores any extra ones, so they take effect without being covered by the signature. By adding such headers to a presigned PUT URL, an attacker can grant themselves more capabilities than the URL's signer intended and escalate their privileges. This issue is fixed in versions 20.2.4 and 19.2.6.
Характеристики атаки
Последствия
Строка CVSS v3.1