Checkliste¶
Check-Image-01: Ist Benutzer/Gruppenbesitz von Konfigurationsdateien auf root/glance gesetzt?¶
Configuration files contain critical parameters and information required for
smooth functioning of the component. If an unprivileged user, either
intentionally or accidentally, modifies or deletes any of the parameters or
the file itself then it would cause severe availability issues resulting in a
denial of service to the other end users. Therefore, user ownership of such
critical configuration files must be set to root
and group ownership
must be set to glance
. Additionally, the containing directory should have
the same ownership to ensure that new files are owned correctly.
Führen Sie die folgenden Befehle aus:
$ stat -L -c "%U %G" /etc/glance/glance-api-paste.ini | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/glance-api.conf | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/glance-cache.conf | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/glance-manage.conf | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/glance-registry-paste.ini | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/glance-registry.conf | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/glance-scrubber.conf | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/glance-swift-store.conf | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/policy.json | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/schema-image.json | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance/schema.json | egrep "root glance"
$ stat -L -c "%U %G" /etc/glance | egrep "root glance"
Pass: Wenn Benutzer- und Gruppenbesitz aller dieser Konfigurationsdateien auf root und glance gesetzt sind. Die obigen Befehle zeigen die Ausgabe von root glance.
Fail: Wenn die oben genannten Befehle keine Ausgabe zurückgeben.
Check-Image-02: Sind für Konfigurationsdateien strenge Berechtigungen festgelegt?¶
Ähnlich wie bei der vorherigen Prüfung empfehlen wir Ihnen, strenge Zugriffsberechtigungen für solche Konfigurationsdateien festzulegen.
Führen Sie die folgenden Befehle aus:
$ stat -L -c "%a" /etc/glance/glance-api-paste.ini
$ stat -L -c "%a" /etc/glance/glance-api.conf
$ stat -L -c "%a" /etc/glance/glance-cache.conf
$ stat -L -c "%a" /etc/glance/glance-manage.conf
$ stat -L -c "%a" /etc/glance/glance-registry-paste.ini
$ stat -L -c "%a" /etc/glance/glance-registry.conf
$ stat -L -c "%a" /etc/glance/glance-scrubber.conf
$ stat -L -c "%a" /etc/glance/glance-swift-store.conf
$ stat -L -c "%a" /etc/glance/policy.json
$ stat -L -c "%a" /etc/glance/schema-image.json
$ stat -L -c "%a" /etc/glance/schema.json
$ stat -L -c "%a" /etc/glance
A broader restriction is also possible: if the containing directory is set to 750, the guarantee is made that newly created files inside this directory would have the desired permissions.
Pass: If permissions are set to 640 or stricter, or the containing
directory is set to 750. The permissions of 640/750 translates into owner r/w,
group r, and no rights to others. For example, u=rw,g=r,o=
.
Bemerkung
Mit Check-Image-01: Ist Benutzer/Gruppenbesitz von Konfigurationsdateien auf root/glance gesetzt? und Berechtigungen auf 640 gesetzt, hat root Lese-/Schreibzugriff und glance hat Lesezugriff auf diese Konfigurationsdateien. Die Zugriffsrechte können auch mit dem folgenden Befehl validiert werden. Dieser Befehl ist nur auf Ihrem System verfügbar, wenn er ACLs unterstützt.
$ getfacl --tabular -a /etc/glance/glance-api.conf
getfacl: Removing leading '/' from absolute path names
# file: /etc/glance/glance-api.conf
USER root rw-
GROUP glance r--
mask r--
other ---
Fail: Wenn die Berechtigungen nicht auf mindestens 640 festgelegt sind.
Check-Image-03: Wird Keystone für die Authentifizierung verwendet?¶
Bemerkung
Dieser Punkt ist nur gültig für die OpenStack Releases Rocky und früher da auth_strategy
in Stein als veraltet erklärt wurde.
OpenStack unterstützt verschiedene Authentifizierungsstrategien, darunter noauth und keystone. Wenn die ``noauth``Strategie verwendet wird, können Benutzer mit OpenStack Services ohne Authentifizierung interagieren. Dies könnte ein potentielles Risiko darstellen, da ein Angreifer einen unbefugten
Pass: Wenn der Wert des Parameters auth_strategy``unter ``
[DEFAULT] ``Abschnitt in ``/etc/glance/glance-api.conf``auf ``
keystone
und Wert von Parameter auth_strategy``unter
``[DEFAULT]
Abschnitt in ``/etc/glance/glance-registry.conf``ist
auf ``keystone``gesetzt.
Fail: Wenn der Wert des Parameters auth_strategy``unter ``
[DEFAULT] ``Abschnitt in ``/etc/glance/glance-api.conf``auf ``
noauth
gesetzt ist oder Wert von Parameter auth_strategy``unter ``
[DEFAULT]
Abschnitt in /etc/glance/glance-registry.conf``ist
auf ``noauth
gesetzt.
Check-Image-04: Ist TLS zur Authentifizierung aktiviert?¶
OpenStack-Komponenten kommunizieren miteinander mit verschiedenen Protokollen und die Kommunikation kann sensible oder vertrauliche Daten beinhalten. Ein Angreifer kann versuchen, auf dem Kanal zu lauschen, um Zugang zu sensiblen Informationen zu erhalten. Alle Komponenten müssen über ein gesichertes Kommunikationsprotokoll miteinander kommunizieren.
Pass: Wenn der Wert des Parameters www_authenticate_uri
unter [keystone_authtoken]
Abschnitt in /etc/glance/glance-api.conf
auf den Identity API Endpunkt beginnend mit https://
gesetzt ist und der Wert des Parameters insecure
unter demselben `` [keystone_authtoken]`` Abschnitt in der gleichen /etc/glance/glance-registry.conf
ist auf False
gesetzt.
Fail: Wenn der Wert des Parameters www_authenticate_uri
unter [keystone_authtoken]
Abschnitt in /etc/glance/glance-api.conf
nicht auf Identity API Endpunkt gesetzt ist, der mit https://
beginnt oder Wert des Parameters insecure
unter demselben [keystone_authtoken] ``Abschnitt in der gleichen ``/etc/glance/glance-api.conf
ist auf ``True gesetzt ``.
Check-Image-05: Werden maskierte Portscans verhindert?¶
Das copy_from
Feature in der Abbilddienst API v1, bereitgestellt von Glance kann es Angreifern erlauben maskierte Netzwerkport-Scans durchzuführen. Wenn die API v1 aktiviert ist, sollte diese Richtlinie auf einen eingeschränkten Wert festgelegt werden.
Pass: Wenn der Wert des Parameter copy_from
in der /etc/glance/policy.json
auf einen eingeschränkten Wert gesetzt, zum Beispiel role:admin
.
Fail: Wenn der Wert des Parameters copy_from``in der ``/etc/glance/policy.json
nicht
gesetzt ist.