So reichert Google SecOps Ereignis- und Entitätsdaten an
In diesem Dokument wird beschrieben, wie Google Security Operations Daten anreichert und in welchen Feldern des einheitlichen Datenmodells (Unified Data Model, UDM) Daten gespeichert werden.
Um eine Sicherheitsuntersuchung zu ermöglichen, nimmt Google SecOps Kontextdaten aus verschiedenen Quellen auf, analysiert die Daten und stellt zusätzlichen Kontext zu Artefakten in einer Kundenumgebung bereit. Analysten können kontextbezogen angereicherte Daten in Detection Engine-Regeln, Untersuchungsrecherchen oder Berichten verwenden.
Google SecOps führt die folgenden Arten von Anreicherung durch:
- Entitäten werden mithilfe des Entitätengraphen und durch Zusammenführen angereichert.
- Berechnet für jede Entität eine Statistik zur Häufigkeit, die angibt, wie beliebt sie in der Umgebung ist, und reichert die Entität damit an.
- Berechnet, wann bestimmte Entitätstypen zum ersten oder letzten Mal in der Umgebung gesehen wurden.
- Reichert Entitäten mit Informationen aus den Safe Browsing-Bedrohungslisten an.
- Ereignisse werden mit Daten zur geografischen Position angereichert.
- Reichert Entitäten mit WHOIS-Daten an.
- Reichert Ereignisse mit VirusTotal-Dateimetadaten an.
- Reichert Entitäten mit VirusTotal-Beziehungsdaten an.
- Google Cloud Threat Intelligence-Daten aufnehmen und speichern.
Angereicherte Daten aus WHOIS, Safe Browsing, GCTI Threat Intelligence, VirusTotal-Metadaten und VirusTotal-Beziehungen werden durch entity_type
, product_name
und vendor_name
gekennzeichnet. Wenn Sie eine Regel erstellen, in der diese angereicherten Daten verwendet werden, empfehlen wir, einen Filter in die Regel aufzunehmen, der den einzuschließenden Anreicherungstyp angibt. Dieser Filter trägt dazu bei, die Leistung der Regel zu verbessern.
Fügen Sie beispielsweise die folgenden Filterfelder in den Abschnitt events
der Regel ein, mit der WHOIS-Daten zusammengeführt werden.
$enrichment.graph.metadata.entity_type = "DOMAIN_NAME"
$enrichment.graph.metadata.product_name = "WHOISXMLAPI Simple Whois"
$enrichment.graph.metadata.vendor_name = "WHOIS"
Entitäten mithilfe des Entitätengraphen und des Zusammenführens anreichern
Im Entitätsdiagramm werden Beziehungen zwischen Entitäten und Ressourcen in Ihrer Umgebung dargestellt. Wenn Entitäten aus verschiedenen Quellen in Google SecOps aufgenommen werden, wird im Entitätendiagramm eine Adjazenzliste basierend auf der Beziehung zwischen den Entitäten geführt. Im Entitätsdiagramm wird der Kontext durch Deduplizierung und Zusammenführung angereichert.
Bei der Deduplizierung werden redundante Daten entfernt und Intervalle gebildet, um eine gemeinsame Einheit zu erstellen. Angenommen, Sie haben zwei Einheiten e1
und e2
mit den Zeitstempeln t1
bzw. t2
. Die Entitäten e1
und e2
werden dedupliziert. Die Zeitstempel, die sich unterscheiden, werden bei der Deduplizierung nicht verwendet. Die folgenden Felder werden bei der Deduplizierung nicht verwendet:
collected_timestamp
creation_timestamp
interval
Beim Zusammenführen werden Beziehungen zwischen Entitäten für ein Zeitintervall von einem Tag gebildet. Nehmen wir als Beispiel einen Entitätsdatensatz von user A
an, der Zugriff auf einen Cloud Storage-Bucket hat. Es gibt einen weiteren Entitätseintrag für user A
, der ein Gerät besitzt. Nach dem Zusammenführen ergibt sich aus diesen beiden Entitäten eine einzelne Entität user A
mit zwei Beziehungen. Eine Beziehung ist, dass user A
Zugriff auf den Cloud Storage-Bucket hat, und die andere Beziehung ist, dass user A
das Gerät besitzt. Google SecOps führt einen fünftägigen Rückblick durch, wenn Kontextdaten für Entitäten erstellt werden. So werden verspätet eingehende Daten verarbeitet und eine implizite Gültigkeitsdauer für Kontextdaten von Entitäten erstellt.
Google SecOps verwendet Aliasing, um die Telemetriedaten anzureichern, und Entity-Diagramme, um die Entitäten anzureichern. Die Regeln der Erkennungs-Engine werden mit den zusammengeführten Einheiten und den angereicherten Telemetriedaten verknüpft, um kontextbezogene Analysen zu ermöglichen.
Ein Ereignis, das ein Entitätssubstantiv enthält, wird als Entität betrachtet. Hier sind einige Ereignistypen und die entsprechenden Entitätstypen aufgeführt:
ASSET_CONTEXT
entsprichtASSET
.RESOURCE_CONTEXT
entsprichtRESOURCE
.USER_CONTEXT
entsprichtUSER
.GROUP_CONTEXT
entsprichtGROUP
.
Im Entity-Diagramm wird anhand der Bedrohungsdaten zwischen Kontextdaten und Indikatoren für Kompromittierung (Indicators of Compromise, IOC) unterschieden.
Wenn Sie kontextbezogen angereicherte Daten verwenden, sollten Sie das folgende Verhalten des Entity-Graphen berücksichtigen:
- Fügen Sie keine Intervalle in das Objekt ein, sondern lassen Sie sie vom Objektgraphen erstellen. Das liegt daran, dass Intervalle während der Deduplizierung generiert werden, sofern nichts anderes angegeben ist.
- Wenn die Intervalle angegeben sind, werden nur dieselben Ereignisse dedupliziert und die letzte Einheit beibehalten.
- Damit Live-Regeln und Retrohunts wie erwartet funktionieren, müssen Entitäten mindestens einmal täglich aufgenommen werden.
- Wenn Entitäten nicht täglich, sondern nur alle zwei oder mehr Tage aufgenommen werden, funktionieren Live-Regeln möglicherweise wie erwartet, bei Retro-Suchen geht jedoch möglicherweise der Kontext des Ereignisses verloren.
- Wenn Entitäten mehrmals täglich aufgenommen werden, wird die Entität dedupliziert.
- Wenn die Ereignisdaten für einen Tag fehlen, werden vorübergehend die Daten des Vortags verwendet, damit Live-Regeln ordnungsgemäß funktionieren.
Im Entity-Diagramm werden auch Ereignisse mit ähnlichen Kennungen zusammengeführt, um eine konsolidierte Ansicht der Daten zu erhalten. Die Zusammenführung erfolgt anhand der folgenden Liste von Kennungen:
Asset
entity.asset.product_object_id
entity.asset.hostname
entity.asset.asset_id
entity.asset.mac
User
entity.user.product_object_id
entity.user.userid
entity.user.windows_sid
entity.user.email_addresses
entity.user.employee_id
Resource
entity.resource.product_object_id
entity.resource.name
Group
entity.group.product_object_id
entity.group.email_addresses
entity.group.windows_sid
Statistiken zur Prävalenz berechnen
Google SecOps führt statistische Analysen für vorhandene und eingehende Daten durch und reichert Datensätze zum Kontext von Entitäten mit Häufigkeitsmesswerten an.
Die Häufigkeit ist ein numerischer Wert, der angibt, wie beliebt eine Entität ist. Die Beliebtheit wird durch die Anzahl der Assets definiert, die auf ein Artefakt zugreifen, z. B. eine Domain, einen Dateihash oder eine IP-Adresse. Je größer die Zahl, desto beliebter die Entität.
google.com
hat beispielsweise hohe Prävalenzwerte, weil häufig darauf zugegriffen wird. Wenn auf eine Domain nur selten zugegriffen wird, sind die Häufigkeitswerte niedriger. Beliebte Entitäten sind in der Regel weniger wahrscheinlich schädlich.
Diese angereicherten Werte werden für Domain, IP und Datei (Hash) unterstützt. Die Werte werden berechnet und in den folgenden Feldern gespeichert.
Die Statistiken zur Häufigkeit für jede Entität werden täglich aktualisiert. Werte werden in einem separaten Entitätskontext gespeichert, der von Detection Engine verwendet werden kann, aber nicht in den Untersuchungsansichten von Google SecOps und der UDM-Suche angezeigt wird.
Die folgenden Felder können beim Erstellen von Detection Engine-Regeln verwendet werden.
Entitätstyp | UDM-Felder |
---|---|
Domain | entity.domain.prevalence.day_count
entity.domain.prevalence.day_max
entity.domain.prevalence.day_max_sub_domains
entity.domain.prevalence.rolling_max
entity.domain.prevalence.rolling_max_sub_domains |
Datei (Hash) | entity.file.prevalence.day_count
entity.file.prevalence.day_max
entity.file.prevalence.rolling_max |
IP-Adresse | entity.artifact.prevalence.day_count
entity.artifact.prevalence.day_max
entity.artifact.prevalence.rolling_max |
Die Werte „day_max“ und „rolling_max“ werden unterschiedlich berechnet. Die Felder werden so berechnet:
day_max
wird als maximale Prävalenzpunktzahl für das Artefakt während des Tages berechnet. Ein Tag wird als 00:00:00 – 23:59:59 Uhr UTC definiert.rolling_max
wird als maximaler Wert für die Häufigkeit pro Tag (d.h.day_max
) für das Artefakt im vorherigen 10‑Tages-Zeitraum berechnet.day_count
wird zur Berechnung vonrolling_max
verwendet und hat immer den Wert 10.
Wenn die Werte für eine Domain berechnet werden, ergibt sich folgender Unterschied zwischen day_max
und day_max_sub_domains
(sowie zwischen rolling_max
und rolling_max_sub_domains
):
rolling_max
undday_max
stehen für die Anzahl der eindeutigen internen IP-Adressen, die täglich auf eine bestimmte Domain (ohne Subdomains) zugreifen.rolling_max_sub_domains
undday_max_sub_domains
stehen für die Anzahl der eindeutigen internen IP-Adressen, die auf eine bestimmte Domain (einschließlich Subdomains) zugreifen.
Die Statistiken zur Häufigkeit werden anhand neu aufgenommener Entitätsdaten berechnet. Berechnungen werden nicht rückwirkend für zuvor aufgenommene Daten durchgeführt. Es dauert etwa 36 Stunden, bis die Statistiken berechnet und gespeichert werden.
Zeitpunkt des ersten und letzten Auftretens von Entitäten berechnen
Google SecOps führt statistische Analysen für eingehende Daten durch und reichert Datensätze zum Entitätskontext mit den Zeitpunkten an, zu denen eine Entität zum ersten und letzten Mal gesehen wurde. Im Feld first_seen_time
wird das Datum und die Uhrzeit gespeichert, zu der die Einheit zum ersten Mal in der Kundenumgebung gesehen wurde. Im Feld last_seen_time
werden Datum und Uhrzeit der letzten Beobachtung gespeichert.
Da ein Asset oder ein Nutzer anhand mehrerer Indikatoren (UDM-Felder) identifiziert werden kann, ist die „First Seen Time“ der Zeitpunkt, zu dem einer der Indikatoren, mit denen der Nutzer oder das Asset identifiziert wird, zum ersten Mal in der Kundenumgebung gesehen wurde.
Alle UDM-Felder, die ein Asset beschreiben, sind:
entity.asset.hostname
entity.asset.ip
entity.asset.mac
entity.asset.asset_id
entity.asset.product_object_id
Alle UDM-Felder, die einen Nutzer beschreiben, sind:
entity.user.windows_sid
entity.user.product_object_id
entity.user.userid
entity.user.employee_id
entity.user.email_addresses
Mit der Zeitangabe für das erste und letzte Auftreten kann ein Analyst bestimmte Aktivitäten korrelieren, die nach dem ersten Auftreten einer Domain, Datei (Hash), eines Assets, Nutzers oder einer IP-Adresse stattgefunden haben oder die nach dem letzten Auftreten der Domain, Datei (Hash) oder IP-Adresse nicht mehr stattgefunden haben.
Die Felder first_seen_time
und last_seen_time
werden mit Entitäten gefüllt, die eine Domain, eine IP-Adresse und eine Datei (Hash) beschreiben. Bei Einheiten, die einen Nutzer oder ein Asset beschreiben, wird nur das Feld first_seen_time
ausgefüllt. Diese Werte werden nicht für Entitäten berechnet, die andere Typen wie eine Gruppe oder Ressource beschreiben.
Die Statistiken werden für jede Entität in allen Namespaces berechnet.
Google SecOps berechnet die Statistiken nicht für jede Einheit in einzelnen Namespaces.
Diese Statistiken werden derzeit nicht in das Google SecOps-Schema events
in BigQuery exportiert.
Die angereicherten Werte werden berechnet und in den folgenden UDM-Feldern gespeichert:
Entitätstyp | UDM-Felder |
---|---|
Domain | entity.domain.first_seen_time entity.domain.last_seen_time |
Datei (Hash) | entity.file.first_seen_time entity.file.last_seen_time |
IP-Adresse | entity.artifact.first_seen_time entity.artifact.last_seen_time |
Asset | entity.asset.first_seen_time |
Nutzer | entity.user.first_seen_time |
Ereignisse mit Standortdaten anreichern
Eingehende Logdaten können externe IP-Adressen ohne entsprechende Standortinformationen enthalten. Das ist häufig der Fall, wenn bei einem Ereignis Informationen zu Geräteaktivitäten protokolliert werden, die nicht in einem Unternehmensnetzwerk stattfinden. Ein Anmeldeereignis bei einem Clouddienst würde beispielsweise eine Quell- oder Client-IP-Adresse enthalten, die auf der externen IP-Adresse eines Geräts basiert, die von Carrier-NAT zurückgegeben wird.
Google SecOps bietet mit Geolocation angereicherte Daten für externe IP-Adressen, um leistungsstärkere Regelerkennungen und mehr Kontext für Untersuchungen zu ermöglichen. Google SecOps kann beispielsweise eine externe IP-Adresse verwenden, um das Ereignis mit Informationen zum Land (z. B. USA), zu einem bestimmten Bundesstaat (z. B. Alaska) und zum Netzwerk, in dem sich die IP-Adresse befindet (z. B. ASN und Name des Mobilfunkanbieters), anzureichern.
Google SecOps verwendet von Google bereitgestellte Standortdaten, um einen ungefähren geografischen Standort und Netzwerkinformationen für eine IP-Adresse anzugeben. Sie können Detection Engine-Regeln für diese Felder in den Ereignissen schreiben. Die angereicherten Ereignisdaten werden auch nach BigQuery exportiert, wo sie in Google SecOps-Dashboards und -Berichten verwendet werden können.
Die folgenden IP-Adressen werden nicht angereichert:
- Private IP-Adressbereiche gemäß RFC 1918, da sie intern im Unternehmensnetzwerk verwendet werden.
- RFC 5771-Multicast-IP-Adressbereich, da Multicast-Adressen nicht zu einem einzelnen Standort gehören.
- Eindeutige lokale IPv6-Adressen.
- Google Cloud Service-IP-Adressen. Ausnahmen sind Google Cloud externe Compute Engine-IP-Adressen, die angereichert werden.
Google SecOps reichert die folgenden UDM-Felder mit Geolocation-Daten an:
principal
target
src
observer
Datentyp | UDM-Feld |
---|---|
Standort (z. B. USA) | ( principal | target | src | observer ).ip_geo_artifact.location.country_or_region |
Bundesstaat (z. B. New York) | ( principal | target | src | observer ).ip_geo_artifact.location.state |
Längengrad | ( principal | target | src | observer ).ip_geo_artifact.location.region_coordinates.longitude |
Breitengrad | ( principal | target | src | observer ).ip_geo_artifact.location.region_coordinates.latitude |
ASN (Autonomous System Number, Nummer des autonomen Systems) | ( principal | target | src | observer ).ip_geo_artifact.network.asn |
Name des Mobilfunkanbieters | ( principal | target | src | observer ).ip_geo_artifact.network.carrier_name |
DNS-Domain | ( principal | target | src | observer ).ip_geo_artifact.network.dns_domain |
Name der Organisation | ( principal | target | src | observer ).ip_geo_artifact.network.organization_name |
Im folgenden Beispiel sehen Sie, welche geografischen Informationen einem UDM-Ereignis mit einer IP-Adresse, die den Niederlanden zugeordnet ist, hinzugefügt werden:
UDM-Feld | Wert |
---|---|
principal.ip_geo_artifact.location.country_or_region |
Netherlands |
principal.ip_geo_artifact.location.region_coordinates.latitude |
52.132633 |
principal.ip_geo_artifact.location.region_coordinates.longitude |
5.291266 |
principal.ip_geo_artifact.network.asn |
8455 |
principal.ip_geo_artifact.network.carrier_name |
schuberg philis |
Inkonsistenzen
Die proprietäre IP-Standortbestimmungstechnologie von Google verwendet eine Kombination aus Netzwerkdaten und anderen Eingaben und Methoden, um den Standort von IP-Adressen und die Netzwerkauflösung für unsere Nutzer zu ermitteln. Andere Organisationen verwenden möglicherweise andere Signale oder Methoden, was gelegentlich zu unterschiedlichen Ergebnissen führen kann.
Sollten Fälle auftreten, in denen Sie eine Inkonsistenz bei den von Google bereitgestellten IP-Geolokalisierungsergebnissen feststellen, wenden Sie sich bitte an den Kundensupport, damit wir die Angelegenheit untersuchen und unsere Aufzeichnungen gegebenenfalls korrigieren können.
Entitäten mit Informationen aus Safe Browsing-Gefahrenlisten anreichern
Google SecOps erfasst Daten von Safe Browsing in Bezug auf Dateihashes. Die Daten für jede Datei werden als Entität gespeichert und liefern zusätzlichen Kontext zur Datei. Analysten können Detection Engine-Regeln erstellen, mit denen diese Kontextdaten für Entitäten abgefragt werden, um kontextbezogene Analysen zu erstellen.
Die folgenden Informationen werden mit dem Datensatz für den Kontext der Einheit gespeichert.
UDM-Feld | Beschreibung |
---|---|
entity.metadata.product_entity_id |
Eine eindeutige Kennung für die Entität. |
entity.metadata.entity_type |
Dieser Wert ist FILE , was darauf hinweist, dass die Entität eine Datei beschreibt.
|
entity.metadata.collected_timestamp |
Datum und Uhrzeit, zu der die Einheit beobachtet wurde oder das Ereignis eingetreten ist. |
entity.metadata.interval |
Speichert die Start- und Endzeit, für die diese Daten gültig sind.
Da sich der Inhalt der Bedrohungsliste im Laufe der Zeit ändert, geben start_time und end_time das Zeitintervall an, in dem die Daten zur Entität gültig sind. Beispiel: Der Hash einer Datei wurde zwischen start_time als schädlich oder verdächtig eingestuft. |
entity.metadata.threat.category |
Dies ist die Google SecOps-SecurityCategory . Dieser Parameter wird auf einen oder mehrere der folgenden Werte festgelegt:
|
entity.metadata.threat.severity |
Dies ist die Google SecOps-ProductSeverity .
Wenn der Wert CRITICAL ist, deutet dies darauf hin, dass das Artefakt bösartig ist.
Wenn der Wert nicht angegeben ist, ist die Wahrscheinlichkeit, dass das Artefakt schädlich ist, nicht hoch genug.
|
entity.metadata.product_name |
Speichert den Wert Google Safe Browsing . |
entity.file.sha256 |
Der SHA256-Hashwert für die Datei. |
Entitäten mit WHOIS-Daten anreichern
Google SecOps nimmt täglich WHOIS-Daten auf. Bei der Aufnahme eingehender Kundengerätedaten vergleicht Google SecOps Domains in Kundendaten mit den WHOIS-Daten. Wenn es eine Übereinstimmung gibt, speichert Google SecOps die zugehörigen WHOIS-Daten im Unternehmensdatensatz für die Domain. Für jede Entität, bei der entity.metadata.entity_type = DOMAIN_NAME
, reichert Google SecOps die Entität mit Informationen aus WHOIS an.
Google SecOps füllt die folgenden Felder im Datensatz der Identität mit angereicherten WHOIS-Daten:
entity.domain.admin.attribute.labels
entity.domain.audit_update_time
entity.domain.billing.attribute.labels
entity.domain.billing.office_address.country_or_region
entity.domain.contact_email
entity.domain.creation_time
entity.domain.expiration_time
entity.domain.iana_registrar_id
entity.domain.name_server
entity.domain.private_registration
entity.domain.registrant.company_name
entity.domain.registrant.office_address.state
entity.domain.registrant.office_address.country_or_region
entity.domain.registrant.email_addresses
entity.domain.registrant.user_display_name
entity.domain.registrar
entity.domain.registry_data_raw_text
entity.domain.status
entity.domain.tech.attribute.labels
entity.domain.update_time
entity.domain.whois_record_raw_text
entity.domain.whois_server
entity.domain.zone
Eine Beschreibung dieser Felder finden Sie im Dokument Unified Data Model field list (Liste der Felder des einheitlichen Datenmodells).
Google Cloud Threat Intelligence-Daten aufnehmen und speichern
Google SecOps nimmt Daten aus Google Cloud Threat Intelligence-Datenquellen (GCTI) auf, die Ihnen Kontextinformationen liefern, die Sie bei der Untersuchung von Aktivitäten in Ihrer Umgebung verwenden können. Sie können die folgenden Datenquellen abfragen:
- GCTI Tor Exit Nodes: IP-Adressen, die als Tor-Ausgangsknoten bekannt sind.
- GCTI Benign Binaries: Dateien, die entweder Teil der Originaldistribution des Betriebssystems sind oder durch einen offiziellen Betriebssystem-Patch aktualisiert wurden. Einige offizielle Betriebssystembinärdateien, die von einem Angreifer durch Aktivitäten missbraucht wurden, die bei Living-off-the-Land-Angriffen üblich sind, sind von dieser Datenquelle ausgeschlossen, z. B. solche, die sich auf anfängliche Einstiegsvektoren konzentrieren.
GCTI-Tools für den Remotezugriff: Dateien, die häufig von böswilligen Akteuren verwendet wurden. Diese Tools sind in der Regel legitime Anwendungen, die manchmal missbraucht werden, um eine Remote-Verbindung zu kompromittierten Systemen herzustellen.
Diese Kontextdaten werden global als Entitäten gespeichert. Sie können die Daten mit Regeln der Erkennungs-Engine abfragen. Fügen Sie der Regel die folgenden UDM-Felder und ‑Werte hinzu, um diese globalen Entitäten abzufragen:
graph.metadata.vendor_name
=Google Cloud Threat Intelligence
graph.metadata.product_name
=GCTI Feed
In diesem Dokument steht der Platzhalter <variable_name>
für den eindeutigen Variablennamen, der in einer Regel verwendet wird, um einen UDM-Datensatz zu identifizieren.
Zeitbezogene und zeitlose Google Cloud Threat Intelligence-Datenquellen
Google Cloud Datenquellen für Threat Intelligence sind entweder zeitbasiert oder zeitlos.
Zeitbezogene Datenquellen haben für jeden Eintrag einen zugehörigen Zeitraum. Wenn also am Tag 1 eine Erkennung generiert wird, wird erwartet, dass bei einer nachträglichen Suche an einem beliebigen Tag in der Zukunft dieselbe Erkennung für Tag 1 generiert wird.
Zeitlose Datenquellen haben keinen zugehörigen Zeitraum. Das liegt daran, dass nur der jeweils letzte Datensatz berücksichtigt werden sollte. Zeitlose Datenquellen werden häufig für Daten wie Dateihashes verwendet, die sich voraussichtlich nicht ändern. Wenn am ersten Tag keine Erkennung erfolgt, kann am zweiten Tag bei einer Retro-Suche eine Erkennung für den ersten Tag generiert werden, weil ein neuer Eintrag hinzugefügt wurde.
Daten zu IP-Adressen von Tor-Exit-Knoten
Google SecOps erfasst und speichert IP-Adressen, die als Tor-Ausgangsknoten bekannt sind. Tor-Ausgangsknoten sind Punkte, an denen der Traffic das Tor-Netzwerk verlässt. Informationen, die aus dieser Datenquelle aufgenommen werden, werden in den folgenden UDM-Feldern gespeichert. Die Daten in dieser Quelle sind zeitbezogen.
UDM-Feld | Beschreibung |
---|---|
<variable_name>.graph.metadata.vendor_name |
Speichert den Wert Google Cloud Threat Intelligence . |
<variable_name>.graph.metadata.product_name |
Speichert den Wert GCTI Feed . |
<variable_name>.graph.metadata.threat.threat_feed_name |
Speichert den Wert Tor Exit Nodes . |
<variable_name>.graph.entity.artifact.ip |
Speichert die IP-Adresse, die aus der GCTI-Datenquelle aufgenommen wurde. |
Daten zu harmlosen Betriebssystemdateien
Google SecOps erfasst und speichert Dateihashes aus der Datenquelle „GCTI Benign Binaries“. Informationen, die aus dieser Datenquelle aufgenommen werden, werden in den folgenden UDM-Feldern gespeichert. Die Daten in dieser Quelle sind zeitlos.
UDM-Feld | Beschreibung |
---|---|
<variable_name>.graph.metadata.vendor_name |
Speichert den Wert Google Cloud Threat Intelligence . |
<variable_name>.graph.metadata.product_name |
Speichert den Wert GCTI Feed . |
<variable_name>.graph.metadata.threat.threat_feed_name |
Speichert den Wert Benign Binaries . |
<variable_name>.graph.entity.file.sha256 |
Speichert den SHA256-Hashwert der Datei. |
<variable_name>.graph.entity.file.sha1 |
Speichert den SHA1-Hashwert der Datei. |
<variable_name>.graph.entity.file.md5 |
Speichert den MD5-Hashwert der Datei. |
Daten zu Tools für den Remotezugriff
Zu den Remotezugriffstools gehören Dateihashes für bekannte Remotezugriffstools wie VNC-Clients, die häufig von böswilligen Akteuren verwendet wurden. Diese Tools sind in der Regel legitime Anwendungen, die manchmal missbraucht werden, um eine Remote-Verbindung zu gehackten Systemen herzustellen. Informationen, die aus dieser Datenquelle aufgenommen werden, werden in den folgenden UDM-Feldern gespeichert. Die Daten in dieser Quelle sind zeitlos.
UDM-Feld | Beschreibung |
---|---|
Speichert den Wert Google Cloud Threat Intelligence . |
|
Speichert den Wert GCTI Feed . |
|
Speichert den Wert Remote Access Tools . |
|
Speichert den SHA256-Hashwert der Datei. | |
Speichert den SHA1-Hashwert der Datei. | |
Speichert den MD5-Hashwert der Datei. |
Ereignisse mit VirusTotal-Dateimetadaten anreichern
Google SecOps reichert Dateihashes in UDM-Ereignissen an und bietet zusätzlichen Kontext bei der Untersuchung. UDM-Ereignisse werden durch Hash-Aliasing in einer Kundenumgebung angereichert. Beim Hash-Aliasing werden alle Arten von Datei-Hashes kombiniert und Informationen zu einem Datei-Hash während einer Suche bereitgestellt.
Durch die Integration von VirusTotal-Dateimetadaten und der Anreicherung von Beziehungen mit Google SecOps lassen sich Muster schädlicher Aktivitäten erkennen und Malwarebewegungen in einem Netzwerk nachverfolgen.
Ein Rohlog enthält nur begrenzte Informationen zur Datei. VirusTotal ergänzt das Ereignis mit Dateimetadaten, um einen Dump mit fehlerhaften Hashes zusammen mit Metadaten zur fehlerhaften Datei bereitzustellen. Die Metadaten enthalten Informationen wie Dateinamen, Typen, importierte Funktionen und Tags. Sie können diese Informationen in der UDM-Such- und ‑Erkennungs-Engine mit YARA-L verwenden, um Ereignisse mit schädlichen Dateien und allgemein bei der Suche nach Bedrohungen zu analysieren. Ein Anwendungsbeispiel ist das Erkennen von Änderungen an der Originaldatei, wodurch wiederum die Dateimetadaten für die Bedrohungserkennung importiert werden.
Die folgenden Informationen werden mit dem Datensatz gespeichert. Eine Liste aller UDM-Felder finden Sie unter Liste der Felder für einheitliche Datenmodelle (Unified Data Model, UDM).
Datentyp | UDM-Feld |
---|---|
SHA-256 | ( principal | target | src | observer ).file.sha256 |
MD5 | ( principal | target | src | observer ).file.md5 |
SHA-1 | ( principal | target | src | observer ).file.sha1 |
Größe | ( principal | target | src | observer ).file.size |
ssdeep | ( principal | target | src | observer ).file.ssdeep |
vhash | ( principal | target | src | observer ).file.vhash |
authentihash | ( principal | target | src | observer ).file.authentihash |
Dateityp | ( principal | target | src | observer ).file.file_type |
Tags | ( principal | target | src | observer ).file.tags |
Funktions-Tags | ( principal | target | src | observer ).file.capabilities_tags |
Namen | ( principal | target | src | observer ).file.names |
Erstes Auftreten | ( principal | target | src | observer ).file.first_seen_time |
Zeitpunkt des letzten Zugriffs | ( principal | target | src | observer ).file.last_seen_time |
Letzte Änderung | ( principal | target | src | observer ).file.last_modification_time |
Zeitpunkt der letzten Analyse | ( principal | target | src | observer ).file.last_analysis_time |
Eingebettete URLs | ( principal | target | src | observer ).file.embedded_urls |
Eingebettete IP-Adressen | ( principal | target | src | observer ).file.embedded_ips |
Eingebettete Domains | ( principal | target | src | observer ).file.embedded_domains |
Signaturinformationen | ( principal | target | src | observer ).file.signature_info |
Signaturinformationen
|
( principal | target | src | observer).file.signature_info.sigcheck |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.verification_message |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.verified |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.signers |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.signers.name |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.signers.status |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.signers.valid_usage |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.signers.cert_issuer |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.x509 |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.x509.name |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.x509.algorithm |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.x509.thumprint |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.x509.cert_issuer |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.sigcheck.x509.serial_number |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.codesign |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.codesign.id |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.codesign.format |
Signaturinformationen
|
( principal | target | src | observer ).file.signature_info.codesign.compilation_time |
Exiftool-Informationen | ( principal | target | src | observer ).file.exif_info |
Exiftool-Informationen
|
( principal | target | src | observer ).file.exif_info.original_file |
Exiftool-Informationen
|
( principal | target | src | observer ).file.exif_info.product |
Exiftool-Informationen
|
( principal | target | src | observer ).file.exif_info.company |
Exiftool-Informationen
|
( principal | target | src | observer ).file.exif_info.file_description |
Exiftool-Informationen
|
( principal | target | src | observer ).file.exif_info.entry_point |
Exiftool-Informationen
|
( principal | target | src | observer ).file.exif_info.compilation_time |
PDF-Informationen | ( principal | target | src | observer ).file.pdf_info |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.js |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.javascript |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.launch_action_count |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.object_stream_count |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.endobj_count |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.header |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.acroform |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.autoaction |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.embedded_file |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.encrypted |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.flash |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.jbig2_compression |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.obj_count |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.endstream_count |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.page_count |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.stream_count |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.openaction |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.startxref |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.suspicious_colors |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.trailer |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.xfa |
PDF-Informationen
|
( principal | target | src | observer ).file.pdf_info.xref |
Metadaten von PE-Dateien | ( principal | target | src | observer ).file.pe_file |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.imphash |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.entry_point |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.entry_point_exiftool |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.compilation_time |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.compilation_exiftool_time |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.section |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.section.name |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.section.entropy |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.section.raw_size_bytes |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.section.virtual_size_bytes |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.section.md5_hex |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.imports |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.imports.library |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.imports.functions |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resource |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resource.sha256_hex |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resource.filetype_magic |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resource_language_code |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resource.entropy |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resource.file_type |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resources_type_count_str |
PE-Dateimetadaten
|
( principal | target | src | observer ).file.pe_file.resources_language_count_str |
Entitäten mit VirusTotal-Beziehungsdaten anreichern
VirusTotal hilft bei der Analyse verdächtiger Dateien, Domains, IP-Adressen und URLs, um Malware und andere Sicherheitslücken zu erkennen und die Ergebnisse mit der Sicherheitscommunity zu teilen. Google SecOps nimmt Daten aus VirusTotal-bezogenen Verbindungen auf. Diese Daten werden als Einheit gespeichert und enthalten Informationen zur Beziehung zwischen Datei-Hashes und Dateien, Domains, IP-Adressen und URLs.
Analysten können anhand dieser Daten feststellen, ob ein Datei-Hash schlecht ist, basierend auf Informationen zur URL oder Domain aus anderen Quellen. Diese Informationen können verwendet werden, um Detection Engine-Regeln zu erstellen, mit denen die Daten des Entitätskontexts abgefragt werden, um kontextbezogene Analysen zu erstellen.
Diese Daten sind nur für bestimmte VirusTotal- und Google SecOps-Lizenzen verfügbar. Wenden Sie sich an Ihren Account Manager, um Ihre Berechtigungen zu prüfen.
Die folgenden Informationen werden im Datensatz zum Kontext der Einheit gespeichert:
UDM-Feld | Beschreibung |
---|---|
entity.metadata.product_entity_id |
Eine eindeutige Kennung für die Entität |
entity.metadata.entity_type |
Speichert den Wert FILE , der angibt, dass die Entität eine Datei beschreibt. |
entity.metadata.interval |
start_time bezieht sich auf den Beginn des Zeitraums und end_time auf das Ende des Zeitraums, für den diese Daten gültig sind. |
entity.metadata.source_labels |
In diesem Feld wird eine Liste von Schlüssel/Wert-Paaren aus source_id und target_id für diese Entität gespeichert. source_id ist der Datei-Hash und target_id kann der Hash oder Wert der URL, des Domainnamens oder der IP-Adresse sein, auf die sich diese Datei bezieht. Sie können unter virustotal.com nach der URL, dem Domainnamen, der IP-Adresse oder der Datei suchen. |
entity.metadata.product_name |
Speichert den Wert „VirusTotal Relationships“ |
entity.metadata.vendor_name |
Speichert den Wert „VirusTotal“ |
entity.file.sha256 |
Speichert den SHA-256-Hashwert für die Datei. |
entity.file.relations |
Eine Liste der untergeordneten Entitäten, auf die sich die übergeordnete Datei-Entität bezieht |
entity.relations.relationship |
In diesem Feld wird die Art der Beziehung zwischen übergeordneten und untergeordneten Entitäten erläutert.
Der Wert kann EXECUTES , DOWNLOADED_FROM oder CONTACTS sein. |
entity.relations.direction |
Speichert den Wert „UNIDIRECTIONAL“ und gibt die Richtung der Beziehung zur untergeordneten Entität an. |
entity.relations.entity.url |
Die URL, die von der Datei in der übergeordneten Entität kontaktiert wird (wenn die Beziehung zwischen der übergeordneten Entität und der URL CONTACTS ist), oder die URL, von der die Datei in der übergeordneten Entität heruntergeladen wurde (wenn die Beziehung zwischen der übergeordneten Entität und der URL DOWNLOADED_FROM ist). |
entity.relations.entity.ip |
Eine Liste von IP-Adressen, die von der Datei in der übergeordneten Einheit kontaktiert wurden oder von denen die Datei heruntergeladen wurde. Sie enthält nur eine IP-Adresse. |
entity.relations.entity.domain.name |
Der Domainname, über den die Datei in der übergeordneten Einheit aufgerufen oder heruntergeladen wurde. |
entity.relations.entity.file.sha256 |
Speichert den SHA-256-Hashwert für die Datei in der Beziehung. |
entity.relations.entity_type |
Dieses Feld enthält den Typ der Entität in der Beziehung. Der Wert kann URL , DOMAIN_NAME , IP_ADDRESS oder FILE sein. Diese Felder werden gemäß der entity_type ausgefüllt. Wenn entity_type beispielsweise URL ist, wird entity.relations.entity.url ausgefüllt. |
Nächste Schritte
Informationen zur Verwendung angereicherter Daten mit anderen Google SecOps-Funktionen finden Sie unter:
- Kontextbezogene Daten in UDM Search verwenden
- Kontextbezogene Daten in Regeln verwenden
- Kontextbezogene Daten in Berichten verwenden
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten