glance/glance/async_
Dan Smith f45b5f024e Enforce image safety during image_conversion
This does two things:

1. It makes us check that the QCOW backing_file is unset on those
types of images. Nova and Cinder do this already to prevent an
arbitrary (and trivial to accomplish) host file exposure exploit.
2. It makes us restrict VMDK files to only allowed subtypes. These
files can name arbitrary files on disk as extents, providing the
same sort of attack. Default that list to just the types we believe
are actually useful for openstack, and which are monolithic.

The configuration option to specify allowed subtypes is added in
glance's config and not in the import options so that we can extend
this check later to image ingest. The format_inspector can tell us
what the type and subtype is, and we could reject those images early
and even in the case where image_conversion is not enabled.

Closes-Bug: #1996188
Change-Id: Idf561f6306cebf756c787d8eefdc452ce44bd5e0
(cherry picked from commit 0d6282a016)
(cherry picked from commit 4967ab6935)
(cherry picked from commit dc8e5a5cc7)
2022-12-19 15:35:58 +00:00
..
flows Enforce image safety during image_conversion 2022-12-19 15:35:58 +00:00
__init__.py [uwsgi] Add missing pefetch periodic job 2021-09-08 11:05:57 -07:00
taskflow_executor.py Add image_count_uploading quota enforcement 2021-07-02 08:29:07 -07:00
utils.py Replace git.openstack.org URLs with opendev.org URLs 2019-04-28 09:26:48 +08:00