

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Security Lake-Abfragen für AWS Quellversion 2 (OCSF 1.1.0)
<a name="subscriber-query-examples2"></a>

Der folgende Abschnitt enthält Anleitungen zum Abfragen von Daten aus Security Lake und enthält einige Abfragebeispiele für nativ unterstützte AWS Quellen für Quellversion 2.AWS Diese Abfragen dienen zum Abrufen von Daten in einem bestimmten Bereich.AWS-Region In diesen Beispielen wird us-east-1 (US East (Nord-Virginia)) verwendet. Darüber hinaus verwenden die Beispielabfragen einen `LIMIT 25` Parameter, der bis zu 25 Datensätze zurückgibt. Sie können diesen Parameter weglassen oder ihn nach Ihren Wünschen anpassen. Weitere Beispiele finden Sie im [ GitHub Verzeichnis Amazon Security Lake OCSF Queries](https://github.com/awslabs/aws-security-analytics-bootstrap/tree/main/AWSSecurityAnalyticsBootstrap/amazon_security_lake_queries).

Sie können die Daten abfragen, die Security Lake in AWS Lake Formation Datenbanken und Tabellen speichert. Sie können auch Abonnenten von Drittanbietern in der Security Lake-Konsole, API oder erstellen AWS CLI. Abonnenten von Drittanbietern können Lake Formation Formation-Daten auch aus den von Ihnen angegebenen Quellen abfragen.

Der Lake Formation Data Lake-Administrator muss der IAM-Identität, die die Daten abfragt, `SELECT` Berechtigungen für die entsprechenden Datenbanken und Tabellen gewähren. Ein Abonnent muss auch in Security Lake erstellt werden, bevor er Daten abfragen kann. Weitere Informationen zum Erstellen eines Abonnenten mit Abfragezugriff finden Sie unter[Verwaltung des Abfragezugriffs für Security Lake-Abonnenten](subscriber-query-access.md).

Die folgenden Abfragen enthalten zeitbasierte Filter, mit denen sichergestellt werden `eventDay` soll, dass Ihre Abfrage innerhalb der konfigurierten Aufbewahrungseinstellungen liegt. Weitere Informationen finden Sie unter [Querying data with retention settings](subscriber-query-examples.md#security-lake-retention-setting-query-data). 

Wenn beispielsweise Daten, die älter als 60 Tage sind, abgelaufen sind, sollten Ihre Abfragen Zeitbeschränkungen enthalten, um den Zugriff auf abgelaufene Daten zu verhindern. Nehmen Sie für eine Aufbewahrungsfrist von 60 Tagen die folgende Klausel in Ihre Abfrage auf:

```
...
WHERE time_dt > DATE_ADD('day', -59, CURRENT_TIMESTAMP)
...
```

Diese Klausel verwendet 59 Tage (statt 60), um Daten- oder Zeitüberschneidungen zwischen Amazon S3 und Apache Iceberg zu vermeiden.

## Quelltabelle protokollieren
<a name="log-source-table"></a>

Wenn Sie Security Lake-Daten abfragen, müssen Sie den Namen der Lake Formation-Tabelle angeben, in der sich die Daten befinden.

```
SELECT *
FROM "amazon_security_lake_glue_db_DB_Region"."amazon_security_lake_table_DB_Region_SECURITY_LAKE_TABLE"
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
LIMIT 25
```

Zu den allgemeinen Werten für die Protokollquelltabelle gehören die folgenden:
+ `cloud_trail_mgmt_2_0`—AWS CloudTrail Verwaltungsereignisse
+ `lambda_execution_2_0`— CloudTrail Datenereignisse für Lambda
+ `s3_data_2_0`— CloudTrail Datenereignisse für S3
+ `route53_2_0`— Amazon Route 53-Resolver-Abfrageprotokolle
+ `sh_findings_2_0`— Ergebnisse AWS Security Hub CSPM
+ `vpc_flow_2_0`— Flussprotokolle von Amazon Virtual Private Cloud (Amazon VPC)
+ `eks_audit_2_0`— Auditprotokolle von Amazon Elastic Kubernetes Service (Amazon EKS)
+ `waf_2_0`— v2-Protokolle AWS WAF

**Beispiel: Alle CSPM-Ergebnisse von Security Hub in der Tabelle `sh_findings_2_0` aus der Region us-east-1**

```
SELECT *
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_sh_findings_2_0"
    WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
LIMIT 25
```

## Datenbank-Region
<a name="database-region"></a>

Wenn Sie Security Lake-Daten abfragen, müssen Sie den Namen der Datenbankregion angeben, aus der Sie die Daten abfragen. Eine vollständige Liste der Datenbankregionen, in denen Security Lake derzeit verfügbar ist, finden Sie unter [Amazon Security Lake-Endpoints](https://docs.aws.amazon.com/general/latest/gr/securitylake.html).

**Beispiel: Amazon Virtual Private Cloud Cloud-Aktivitäten anhand der Quell-IP auflisten**

Das folgende Beispiel listet alle Amazon VPC-Aktivitäten von der Quell-IP auf{{192.0.2.1}}, die nach {{20230301}} (01. März 2023) aufgezeichnet wurden, in der Tabelle {{vpc\_flow\_2\_0}} von. {{us-west-2}} `DB_Region`

```
SELECT * 
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_vpc_flow_2_0"
    WHERE time_dt > TIMESTAMP '2023-03-01' 
    AND src_endpoint.ip = '192.0.2.1'
    ORDER BY time_dt desc
LIMIT 25
```

## Datum der Partition
<a name="partition-date"></a>

Durch die Partitionierung Ihrer Daten können Sie die Menge der bei jeder Abfrage gescannten Daten einschränken und so die Leistung verbessern und die Kosten senken. Partitionen funktionieren in Security Lake 2.0 etwas anders als in Security Lake 1.0. Security Lake implementiert jetzt die Partitionierung über `time_dt``region`, und`accountid`. In Security Lake 1.0 wurde dagegen die Partitionierung durch Parameter `eventDay``region`, und `accountid` implementiert. 

Bei der Abfrage `time_dt` werden automatisch die Datumspartitionen von S3 abgerufen und sie können wie jedes zeitbasierte Feld in Athena abgefragt werden.

Dies ist eine Beispielabfrage, bei der die ` time_dt` Partition verwendet wird, um die Logs nach dem Zeitpunkt 01. März 2023 abzufragen:

```
SELECT *
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_vpc_flow_2_0"
WHERE time_dt > TIMESTAMP '2023-03-01'
AND src_endpoint.ip = '192.0.2.1'
ORDER BY time desc
LIMIT 25
```

Zu den gängigen Werten für `time_dt` gehören die folgenden:

**Ereignisse, die im letzten Jahr eingetreten sind**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '1' YEAR`

**Ereignisse, die im letzten Monat eingetreten sind**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '1' MONTH`

**Ereignisse der letzten 30 Tage**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '30' DAY`

**Ereignisse der letzten 12 Stunden**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '12' HOUR`

**Ereignisse der letzten 5 Minuten**  
`WHERE time_dt > CURRENT_TIMESTAMP - INTERVAL '5' MINUTE`

**Ereignisse, die vor 7 bis 14 Tagen aufgetreten sind**  
`WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '14' DAY AND CURRENT_TIMESTAMP - INTERVAL '7' DAY`

**Ereignisse, die an oder nach einem bestimmten Datum auftreten**  
`WHERE time_dt >= TIMESTAMP '2023-03-01'`

**Beispiel: Liste aller CloudTrail Aktivitäten von der Quell-IP `192.0.2.1` am oder nach dem 1. März 2023 in der Tabelle `cloud_trail_mgmt_1_0`**

```
SELECT *
    FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0
    WHERE eventDay >= '{{20230301}}'
    AND src_endpoint.ip = '192.0.2.1'
    ORDER BY time desc
    LIMIT {{25}}
```

**Beispiel: Liste aller CloudTrail Aktivitäten von der Quell-IP `192.0.2.1` in den letzten 30 Tagen in der Tabelle `cloud_trail_mgmt_1_0`**

```
SELECT *
    FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0
    WHERE eventDay > cast(date_format(current_timestamp - INTERVAL '{{30}}' day, '%Y%m%d%H') as varchar) 
    AND src_endpoint.ip = '192.0.2.1'
    ORDER BY time desc
    LIMIT {{25 }}
```

## Security Lake-Observables abfragen
<a name="querying-observables-examples"></a>

Observables ist eine neue Funktion, die jetzt in Security Lake 2.0 verfügbar ist. Das beobachtbare Objekt ist ein Pivot-Element, das verwandte Informationen enthält, die sich an vielen Stellen des Ereignisses befinden. Durch die Abfrage von Observablen können Benutzer umfassende Sicherheitsinformationen aus ihren Datensätzen ableiten. 

Indem Sie bestimmte Elemente innerhalb von Observablen abfragen, können Sie die Datensätze auf Dinge wie bestimmte Benutzernamen, Ressourcen UIDs IPs, Hashes und andere IOC-Informationen beschränken

Dies ist eine Beispielabfrage, bei der das Observables-Array verwendet wird, um die Protokolle in den VPC Flow- und Route53-Tabellen abzufragen, die den IP-Wert '172.01.02.03' enthalten

```
WITH a AS 
    (SELECT 
    time_dt,
    observable.name,
    observable.value
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_vpc_flow_2_0",
    UNNEST(observables) AS t(observable)
    WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
    AND observable.value='172.01.02.03'
    AND observable.name='src_endpoint.ip'),
b as 
    (SELECT 
    time_dt,
    observable.name,
    observable.value
    FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_route53_2_0",
    UNNEST(observables) AS t(observable)
    WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP
    AND observable.value='172.01.02.03'
    AND observable.name='src_endpoint.ip')
SELECT * FROM a
LEFT JOIN b ON a.value=b.value and a.name=b.name
LIMIT 25
```

## Beispiel für Security Lake-Abfragen für Amazon EKS-Auditprotokolle
<a name="example-queries-eks-sourceversion2"></a>

Amazon EKS-Protokolle verfolgen Aktivitäten auf der Kontrollebene und stellen Prüf- und Diagnoseprotokolle direkt von der Amazon EKS-Steuerebene in CloudWatch Logs in Ihrem Konto zur Verfügung. Diese Protokolle erleichtern Ihnen die Absicherung und Ausführung Ihrer Cluster. Abonnenten können EKS-Protokolle abfragen, um die folgenden Arten von Informationen zu erhalten.

Hier sind einige Beispielabfragen für Amazon EKS-Audit-Logs für AWS Quellversion 2:

**Anfragen an eine bestimmte URL in den letzten 7 Tagen**

```
SELECT 
    time_dt,
    actor.user.name,
    http_request.url.path,
    activity_name
FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_eks_audit_2_0" 
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP 
AND activity_name = 'get'
and http_request.url.path = '/apis/coordination.k8s.io/v1/'
LIMIT 25
```

**Aktualisiere Anfragen von '10.0.97.167' in den letzten 7 Tagen**

```
SELECT 
    activity_name,
    time_dt,
    api.request,
    http_request.url.path,
    src_endpoint.ip,
    resources
FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_eks_audit_2_0" 
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP 
AND src_endpoint.ip = '10.0.97.167'
AND activity_name = 'Update'
LIMIT 25
```

**Anfragen und Antworten im Zusammenhang mit der Ressource 'kube-controller-manager' in den letzten 7 Tagen**

```
SELECT 
    activity_name,
    time_dt,
    api.request,
    api.response,
    resource.name
FROM "amazon_security_lake_glue_db_us_east_1"."amazon_security_lake_table_us_east_1_eks_audit_2_0",
UNNEST(resources) AS t(resource)
WHERE time_dt BETWEEN CURRENT_TIMESTAMP - INTERVAL '7' DAY AND CURRENT_TIMESTAMP 
AND resource.name = 'kube-controller-manager'
LIMIT 25
```