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.