Ergebnisse in der Google Cloud Console abfragen

Auf dieser Seite wird beschrieben, wie Sie Security Command Center-Ergebnisabfragen mithilfe des Felds Abfrageeditor auf der Seite Ergebnisse in der Google Cloud Console erstellen und bearbeiten.

Mit Abfragen können Sie bestimmte Ergebnisse abrufen und die Ergebnisse filtern, die im Bereich Ergebnisse der Abfrageergebnisse angezeigt werden.

Ergebnisabfragen bearbeiten

Im Bereich Abfrageeditor können Sie Ihren Abfragen Filter hinzufügen und diese bearbeiten, um Ergebnisse basierend auf ihren Attribut- oder Attributwerten auszuwählen. Sie können nach Kriterien wie dem Vorhandensein von Werten, dem Fehlen von Werten oder dem Abgleich eines Teilstrings filtern.

Wenn Sie eine Abfrage bearbeiten, hebt der Editor alle Fehler in der Abfrage hervor, sodass Sie diese korrigieren können, bevor Sie die Abfrage senden.

So bearbeiten Sie die Abfrage im Bereich Abfrageeditor:

  1. Rufen Sie in der Google Cloud Console die Seite Ergebnisse auf:

    Zu Ergebnissen

  2. Wählen Sie gegebenenfalls Ihr Google Cloud-Projekt oder Ihre Organisation aus.

    Projektauswahl

    Die Seite Ergebnisse wird mit der Standardabfrage geladen, die im Feld Abfragevorschau angezeigt wird.

  3. Klicken Sie rechts im Abschnitt Abfragevorschau entweder auf Abfrage bearbeiten oder auf das Symbol für das Maximieren , um den Bereich Abfrageeditor zu öffnen.

  4. Wählen Sie Filter hinzufügen aus, um der Abfrage vordefinierte Attributfilter hinzuzufügen, nach ihnen zu suchen oder sie zu suchen.

    Im Dialogfeld Filter auswählen können Sie unterstützte Ergebnisattribute und -werte auswählen. Dialogfeld "Abfragefilter"

    1. Wählen Sie ein Ergebnisattribut aus oder geben Sie seinen Namen in das Feld Ergebnisattribute suchen ein. Eine Liste der verfügbaren Unterattribute wird angezeigt.
    2. Wählen Sie ein Unterattribut aus. Über einer Liste der Unterattributwerte aus den Ergebnissen im Bereich Ergebnisse der Abfrageergebnisse wird ein Auswahlfeld für die Bewertungsoptionen angezeigt.
    3. Wählen Sie eine Bewertungsoption für die Werte des ausgewählten Unterattributs aus. Weitere Informationen zu den Bewertungsoptionen sowie den von ihnen verwendeten Operatoren und Funktionen finden Sie unter Abfrageoperatoren im Menü „Filter hinzufügen“.
    4. Klicken Sie auf Apply (Anwenden).

      Das Dialogfeld wird geschlossen und Ihre Abfrage wird aktualisiert.

    5. Wiederholen Sie diesen Vorgang, bis die Ergebnisabfrage alle gewünschten Attribute enthält.

Alternativ können Sie eine Ergebnisabfrage manuell genauso definieren wie einen Ergebnisfilter mithilfe der Security Command Center API. Während der Eingabe in der Abfrage wird ein Menü zur automatischen Vervollständigung angezeigt, in dem Sie Filternamen und Funktionen auswählen können.

Wenn Sie im Query Builder auf der Seite Ergebnisse arbeiten, ist der Bereich Schnellfilter deaktiviert, um Konflikte zwischen den beiden zu vermeiden.

Abfrageoperatoren

Die Abfrageanweisungen für Security Command Center-Ergebnisse unterstützen die Operatoren, die von den meisten Google Cloud APIs unterstützt werden.

Die folgende Liste zeigt die Verwendung verschiedener Operatoren:

  • state="ACTIVE" AND NOT mute="MUTED"
  • create_time>"2023-08-15T19:05:32.428Z"
  • resource.parent_name:"prod"
  • severity="CRITICAL" OR severity="HIGH"

Die folgende Liste enthält alle Operatoren und Funktionen, die in Abfrageanweisungen für Ergebnisse unterstützt werden:

  • Für Strings:
    • = für vollständige Gleichheit
    • : für Teilstringabgleich
  • Für Zahlen:
    • <, >, <=, >= für Ungleichungen
    • =, != für Gleichheit
  • Für boolesche Werte:
    • = für Gleichheit
  • Für logische Beziehungen:
    • AND
    • OR
    • NOT oder -
  • Für Gruppierungsausdrücke:
    • (, ) (Klammern)
  • Für Arrays:
    • contains(), eine Funktion zum Abfragen von Ergebnissen mit einem Arrayfeld, das mindestens ein Element enthält, das dem angegebenen Filter entspricht
    • containsOnly(), eine Funktion zum Abfragen von Ergebnissen mit einem Arrayfeld, das nur Elemente enthält, die dem angegebenen Filter entsprechen
  • Für IP-Adressen:
    • inIpRange(), eine Funktion zum Abfragen von IP-Adressen innerhalb eines angegebenen CIDR-Bereichs

Abfrageoperatoren im Menü „Filter hinzufügen“

Im Menü Filter hinzufügen des Abfrageeditors in der Google Cloud Console werden Abfrageoperatoren und -funktionen durch Wörter oder Wortgruppen dargestellt. Beispiel:

  • Ist gleich: Findet Ergebnisse mit genau diesem Filterwert.
  • Ist nicht gleich: Findet Ergebnisse, die nicht genau diesen Filterwert haben.
  • Nach: Gleicht Ergebnisse mit einem Erstellungs- oder Aktualisierungszeitpunkt nach einer bestimmten Zeit ab.
  • Vor: Gleicht Ergebnisse mit einem Erstellungs- oder Aktualisierungszeitpunkt ab, der vor einem bestimmten Zeitpunkt liegt.
  • Has (Has): Gleicht Ergebnisse mit Filterwerten ab, die den Text enthalten, den Sie in das Feld Keyword eingegeben haben.
  • Enthält nicht: Gleicht Ergebnisse mit Filterwerten ab, die nicht den Text enthalten, den Sie in das Feld Keyword eingegeben haben.
  • So finden Sie Attribute, die Arrays enthalten:
    • Enthält beliebige: Übereinstimmungen mit einem Arraywert, der beliebigen Text enthält, den Sie in das Feld Keyword eingegeben haben.
    • Enthält alle: Übereinstimmungen mit einem Arraywert, der den gesamten Text enthält, den Sie in das Feld Keyword eingegeben haben.
    • Enthält keine: Übereinstimmungen mit Ergebnissen, die keinen Arraywert haben, der den von Ihnen in das Feld Keyword eingegebenen Text enthält.
    • Enthält nur: Übereinstimmungen mit einem Arrayattribut, das nur den Wert enthält, den Sie in das Feld Keyword eingegeben haben, und keine anderen Werte.
  • Für IP-Adressen:
    • Alle innerhalb des IP-Bereichs: Findet Ergebnisse mit einer IP-Adresse in einem angegebenen CIDR-Bereich.
    • Enthält keine innerhalb des IP-Bereichs: Findet Ergebnisse, deren IP-Adresse nicht in einem angegebenen CIDR-Bereich liegt.

Abfragefunktionen

Eine Abfragefunktion bietet komplexere Auswertungen von Attributwerten als gängige Abfrageparameter.

Die contains-Funktion

Mit der Funktion contains können Sie Attribute oder Attributunterfelder auswerten, die mehrmals im selben Ergebnis vorkommen.

Intern werden diese Attribute oder Attributunterfelder in den Elementen einer Arraydatenstruktur gespeichert, also werden sie als Attribute vom Typ „Array“ bezeichnet.

Beispielsweise können bestimmte Ergebnisse auf mehrere Netzwerkverbindungen verweisen, sodass das Attribut connections ein Array-Attribut ist. Ebenso können bestimmte gefundene Bedrohungen auf mehrere IP-Adressen als Indikator für eine Manipulation verweisen. Daher ist das Teilfeld ip_addresses des Attributs indicator ein Array-Attribut.

Die Funktion contains verwendet die folgende Syntax:

contains(ARRAY_ATTRIBUTE_NAME, SUBFILTER)

Ersetzen Sie Folgendes:

  • ARRAY_ATTRIBUTE_NAME: der Name des Array-Typ-Attributs, das in einem Array gespeichert ist. Wenn das Array-Typ-Attribut ein Unterfeld eines anderen Attributs ist, geben Sie den Attributnamen und den Namen des Unterfelds getrennt durch einen Punkt an.

    Im folgenden Beispiel ist das Array-Typ-Attribut ip_addresses ein Unterfeld von indicator. Daher werden beide in der Position ARRAY_ATTRIBUTE_NAME angegeben:

    contains(indicator.ip_addresses, elem="192.0.2.80")
  • SUBFILTER: ein Ausdruck, der definiert, wie die einzelnen Instanzen des Array-Typ-Attributs ausgewertet werden. Es werden Standard-Abfrageoperatoren und Bewertungsanweisungen von Security Command Center unterstützt.

    Wenn sich der zu prüfende Wert in einem Unterfeld eines Array-Typ-Attributs befindet, geben Sie den Namen des Unterfelds auf der linken Seite des Ausdrucks an. Die folgende contains-Funktion wertet jedes Element eines Arrays von connections aus. Dabei handelt es sich um ein Array-Attribut, das Unterfelder enthält. Die abgefragten Werte befinden sich im Unterfeld destination_ip, das kein Array-Feld ist. Die abzufragenden Werte werden mit dem Namen des Unterfelds destination_ip und nicht mit dem Parameter elem angegeben.

    contains(connections, destination_ip="192.0.2.80")

    Wenn das Teilfeld das Array-Typ-Attribut ist, geben Sie das Array-Typ-Attribut auf der linken Seite des Ausdrucks mit dem übergeordneten Feld an und verwenden Sie den elem-Parameter auf der rechten Seite des Ausdrucks, um den zu suchenden Wert anzugeben. Die folgende contains-Funktion wertet beispielsweise jedes Element eines Arrays von ip_addresses aus, das ein Unterfeld des Attributs indicator ist. Das Attribut indicator ist kein Array-Feld.

    contains(indicator.ip_addresses, elem="192.0.2.80")

Die Funktion contains im Menü „Filter hinzufügen“

Im Menü Filter hinzufügen wird die Funktion contains abhängig vom Ergebnisattribut, das Sie auswerten, explizit aufgeführt oder automatisch eingefügt, wenn Sie eine andere Filteroption auswählen, die sie erfordert.

Für das Unterfeld IP-Adressen des Attributs Indikator können Sie beispielsweise die folgenden Filteroptionen auswählen:

  • Enthält beliebige
  • Enthält alle
  • Enthält keine

Wenn Sie dagegen nach dem Unterfeld Ziel-IP des Attributs Verbindungen filtern und Beliebige innerhalb des IP-Bereichs auswählen, werden die contains-Funktionen automatisch der Abfrageanweisung hinzugefügt, wie im folgenden Beispiel gezeigt:

contains(connections, inIpRange(destination_ip, "2001:db8::/32"))

Weitere Informationen zur Funktion contains finden Sie unter Nach Array-Feldern filtern.

Die containsOnly-Funktion

Mit der Funktion containsOnly können Sie Ergebnisse für Arrayattribute oder Unterfelder abfragen, die nur die im Subfilter angegebenen Werte enthalten.

Die Funktion containsOnly verwendet die folgende Syntax:

containsOnly(ARRAY_ATTRIBUTE_NAME,SUBFILTER)

Ersetzen Sie Folgendes:

  • ARRAY_ATTRIBUTE_NAME: der Name des Array-Typ-Attributs. Wenn das Array-Typ-Attribut ein Unterfeld eines anderen Attributs ist, geben Sie den Attributnamen und den Namen des Unterfelds getrennt durch einen Punkt an. Wenn Sie Abfragen über die Google Cloud Console ausführen, unterstützt diese Funktion nur die Arrayattribute iam_bindings.member und iam_bindings.role.

  • SUBFILTER: ein Ausdruck, der definiert, wie die einzelnen Elemente des Array-Typ-Attributs ausgewertet werden. Standard-Abfrageoperatoren und Bewertungsanweisungen von Security Command Center werden unterstützt.

Im Menü Filter hinzufügen wird für die folgenden Filteroptionen die Funktion containsOnly verwendet:

  • IAM-Bindung > Mitglied: Es werden nur Ergebnisse ausgewählt, die die angegebenen Nutzer, Dienstkonten oder Gruppen enthalten.

  • IAM-Bindung > Rolle: Es werden nur Ergebnisse ausgewählt, die die angegebenen Rollen enthalten.

Das folgende Beispiel zeigt eine Ergebnisabfrage in der Google Cloud Console, die aktive, nicht ausgeblendete Ergebnisse für Nutzer in der Gruppe example-group zurückgibt:

state="ACTIVE"
  AND NOT mute="MUTED"
  AND containsOnly(iam_bindings,member="group:example-group@example.com")

Die inIpRange-Funktion

Die Funktion inIpRange prüft, ob die IP-Adresse in einem ausgewählten Ergebnisattribut in einem IP-Adressbereich liegt, den Sie mithilfe der CIDR-Notation (CIDR-Bereich) angeben. Im Folgenden sehen Sie die Syntax der inIpRange-Funktion:

inIpRange(ATTRIBUTE_WITH_IP, "CIDR_RANGE")

Im Menü Filter hinzufügen wird für folgende Filteroptionen die Funktion inIpRange verwendet:

  • Alle innerhalb des IP-Bereichs: Es werden nur Ergebnisse ausgewählt, die IP-Adressen im angegebenen Bereich enthalten.
  • Enthält keine innerhalb des IP-Bereichs: Es werden nur Ergebnisse ausgewählt, die keine IP-Adressen im angegebenen Bereich enthalten.

Das folgende Beispiel zeigt eine Ergebnisabfrage in der Google Cloud Console, die aktive, nicht ausgeblendete Ergebnisse zurückgibt, in denen das Unterfeld caller_ip des Objekts access eine IPv6-Adresse im CIDR-Bereich von 2001:db8::/32 enthält:

state="ACTIVE"
AND NOT mute="MUTED"
AND inIpRange(access.caller_ip, "2001:db8::/32")

Das folgende Beispiel zeigt eine Ergebnisabfrage, die aktive, nicht ausgeblendete Ergebnisse zurückgibt, in denen das Unterfeld caller_ip des access-Objekts keine IP-Adresse im IPv4-CIDR-Bereich von 192.0.2.0/24 enthält:

state="ACTIVE"
AND NOT mute="MUTED"
AND NOT inIpRange(access.caller_ip, "192.0.2.0/24")

Wenn eine IP-Adresse in einem Attribut enthalten ist, das mehrmals in einem Ergebnis vorkommen kann, verwenden Sie die Funktion contains mit der Funktion inIpRange, um jede Instanz des Attributs auf die IP-Adresse zu prüfen. Beispiel:

contains(connections, inIpRange(source_ip, "192.0.2.0/24"))

Weitere Informationen zur contains()-Funktion finden Sie unter Die contains-Funktion.

Attribute für Abfragen finden

Security Command Center wählt die anzuzeigenden Ergebnisse aus, indem die Attribute jedes gespeicherten Ergebnisses mit den Attributfiltern verglichen werden, die Sie in der Abfrage angeben.

Sie können die meisten Ergebnisattribute abfragen. Einige Attribute sind allen Ergebnissen gemeinsam. Andere Attribute können für ein bestimmtes Sicherheitsproblem, eine Ergebniskategorie oder einen Erkennungsdienst spezifisch sein.

Die Optionen, die Sie im Menü Abfrageeditor im Menü Filter hinzufügen auf einen Attributfilter anwenden können, hängen vom Attributtyp und davon ab, ob das Attribut untergeordnete Felder oder ein Array von Werten hat.

Klicken Sie im Menü Filter hinzufügen auf eines der folgenden Attribute auf oberster Ebene, um die Unterattribute und Werte anzuzeigen, die Sie in einer Ergebnisabfrage verwenden können: