Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Pertanyaan Danau Keamanan untuk AWS versi sumber 1 (OCSF1.0.0-rc.2)
Bagian berikut memberikan panduan tentang kueri data dari Security Lake dan menyertakan beberapa contoh kueri untuk didukung secara asli AWS sumber. Kueri ini dirancang untuk mengambil data secara spesifik Wilayah AWS. Contoh-contoh ini menggunakan us-east-1 (US East (Virginia N.)). Selain itu, contoh query menggunakan LIMIT 25
parameter, yang mengembalikan hingga 25 record. Anda dapat menghilangkan parameter ini atau menyesuaikannya berdasarkan preferensi Anda. Untuk contoh lainnya, lihat GitHub direktori Amazon Security Lake OCSF Queries.
Tabel sumber log
Saat Anda menanyakan data Security Lake, Anda harus menyertakan nama tabel Lake Formation tempat data berada.
SELECT * FROM amazon_security_lake_glue_db_
DB_Region
.amazon_security_lake_table_DB_Region
_SECURITY_LAKE_TABLE
WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) LIMIT25
Nilai umum untuk tabel sumber log meliputi yang berikut:
cloud_trail_mgmt_1_0
– AWS CloudTrail acara manajemenlambda_execution_1_0
— peristiwa CloudTrail data untuk Lambdas3_data_1_0
— peristiwa CloudTrail data untuk S3route53_1_0
- Log kueri penyelesai Amazon Route 53sh_findings_1_0
– AWS Security Hub temuanvpc_flow_1_0
— Log Aliran Amazon Virtual Private Cloud (AmazonVPC)
Contoh: Semua temuan Security Hub dalam tabel sh_findings_1_0
dari Wilayah us-east-1
SELECT * FROM amazon_security_lake_glue_db_
us_east_1
.amazon_security_lake_table_us_east_1
_sh_findings_1_0
WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) LIMIT25
Database Wilayah
Saat Anda menanyakan data Security Lake, Anda harus menyertakan nama Wilayah database tempat Anda menanyakan data. Untuk daftar lengkap Wilayah basis data tempat Danau Keamanan saat ini tersedia, lihat titik akhir Amazon Security Lake.
Contoh: Daftar AWS CloudTrail Aktivitas dari sumber IP
Contoh berikut mencantumkan semua CloudTrail aktivitas dari IP sumber 192.0.2.1
yang direkam setelah 20230301
(01 Maret 2023), dalam tabel cloud_trail_mgmt_1_0
dari us-east-1
DB_Region
.
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 LIMIT25
Tanggal partisi
Dengan mempartisi data Anda, Anda dapat membatasi jumlah data yang dipindai oleh setiap kueri, sehingga meningkatkan kinerja dan mengurangi biaya. Security Lake mengimplementasikan partisi melaluieventDay
,region
, dan parameter. accountid
eventDay
partisi menggunakan formatYYYYMMDD
.
Ini adalah contoh query menggunakan eventDay
partisi:
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
Nilai umum untuk eventDay
meliputi yang berikut:
- Peristiwa yang terjadi dalam 1 tahun terakhir
-
> cast(date_format(current_timestamp - INTERVAL '1' year, '%Y%m%d%H') as varchar)
- Peristiwa yang terjadi dalam 1 bulan terakhir
-
> cast(date_format(current_timestamp - INTERVAL '1' month, '%Y%m%d%H') as varchar)
- Peristiwa yang terjadi dalam 30 hari terakhir
-
> cast(date_format(current_timestamp - INTERVAL '30' day, '%Y%m%d%H') as varchar)
- Peristiwa yang terjadi dalam 12 jam terakhir
-
> cast(date_format(current_timestamp - INTERVAL '12' hour, '%Y%m%d%H') as varchar)
- Peristiwa yang terjadi dalam 5 menit terakhir
-
> cast(date_format(current_timestamp - INTERVAL '5' minute, '%Y%m%d%H') as varchar)
- Peristiwa yang terjadi antara 7-14 hari yang lalu
-
BETWEEN cast(date_format(current_timestamp - INTERVAL '14' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar)
- Peristiwa yang terjadi pada atau setelah tanggal tertentu
-
>= '20230301'
Contoh: Daftar semua CloudTrail aktivitas dari IP sumber 192.0.2.1
pada atau setelah 1 Maret 2023 dalam tabel 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
Contoh: Daftar semua CloudTrail aktivitas dari sumber IP 192.0.2.1
dalam 30 hari terakhir dalam tabel 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
Contoh kueri untuk data CloudTrail
AWS CloudTrail melacak aktivitas dan API penggunaan pengguna di Layanan AWS. Pelanggan dapat meminta CloudTrail data untuk mempelajari jenis informasi berikut:
Berikut adalah beberapa contoh kueri CloudTrail data:
Upaya yang tidak sah terhadap Layanan AWS dalam 7 hari terakhir
SELECT time, api.service.name, api.operation, api.response.error, api.response.message, unmapped['responseElements'], cloud.region, actor.user.uuid, src_endpoint.ip, http_request.user_agent FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND api.response.error in ( 'Client.UnauthorizedOperation', 'Client.InvalidPermission.NotFound', 'Client.OperationNotPermitted', 'AccessDenied') ORDER BY time desc LIMIT 25
Daftar semua CloudTrail aktivitas dari sumber IP 192.0.2.1
dalam 7 hari terakhir
SELECT api.request.uid, time, api.service.name, api.operation, cloud.region, actor.user.uuid, src_endpoint.ip, http_request.user_agent FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND src_endpoint.ip = '127.0.0.1.' ORDER BY time desc LIMIT 25
Daftar semua IAM aktivitas dalam 7 hari terakhir
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND api.service.name = 'iam.amazonaws.com' ORDER BY time desc LIMIT 25
Contoh di mana AIDACKCEVSQ6C2EXAMPLE
kredensi digunakan dalam 7 hari terakhir
SELECT actor.user.uid, actor.user.uuid, actor.user.account_uid, cloud.region FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND actor.user.credential_uid = 'AIDACKCEVSQ6C2EXAMPLE' LIMIT 25
Daftar CloudTrail catatan gagal dalam 7 hari terakhir
SELECT actor.user.uid, actor.user.uuid, actor.user.account_uid, cloud.region FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_cloud_trail_mgmt_1_0 WHERE status='failed' and eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) ORDER BY time DESC LIMIT 25
Contoh kueri untuk log kueri resolver Route 53
Log kueri penyelesai Amazon Route 53 melacak DNS kueri yang dibuat oleh sumber daya di Amazon Anda. VPC Pelanggan dapat menanyakan log kueri resolver Route 53 untuk mempelajari jenis informasi berikut:
Berikut adalah beberapa contoh kueri log kueri resolver Route 53:
Daftar DNS pertanyaan dari CloudTrail dalam 7 hari terakhir
SELECT time, src_endpoint.instance_uid, src_endpoint.ip, src_endpoint.port, query.hostname, rcode FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_route53_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) ORDER BY time DESC LIMIT 25
Daftar DNS kueri yang cocok s3.amazonaws.com
dalam 7 hari terakhir
SELECT time, src_endpoint.instance_uid, src_endpoint.ip, src_endpoint.port, query.hostname, rcode, answers FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_route53_1_0 WHERE query.hostname LIKE 's3.amazonaws.com.' and eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) ORDER BY time DESC LIMIT 25
Daftar DNS kueri yang tidak diselesaikan dalam 7 hari terakhir
SELECT time, src_endpoint.instance_uid, src_endpoint.ip, src_endpoint.port, query.hostname, rcode, answers FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_route53_1_0 WHERE cardinality(answers) = 0 and eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) LIMIT 25
Daftar DNS pertanyaan yang diselesaikan 192.0.2.1
dalam 7 hari terakhir
SELECT time, src_endpoint.instance_uid, src_endpoint.ip, src_endpoint.port, query.hostname, rcode, answer.rdata FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_route53_1_0 CROSS JOIN UNNEST(answers) as st(answer) WHERE answer.rdata='192.0.2.1' and eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) LIMIT 25
Contoh kueri untuk temuan Security Hub
Security Hub memberi Anda pandangan komprehensif tentang status keamanan Anda di AWS dan membantu Anda memeriksa lingkungan Anda terhadap standar industri keamanan dan praktik terbaik. Security Hub menghasilkan temuan untuk pemeriksaan keamanan dan menerima temuan dari layanan pihak ketiga.
Berikut adalah beberapa contoh kueri temuan Security Hub:
Temuan baru dengan tingkat keparahan lebih besar dari atau sama dengan MEDIUM
dalam 7 hari terakhir
SELECT time, finding, severity FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0_findings WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND severity_id >= 3 AND state_id = 1 ORDER BY time DESC LIMIT 25
Temuan duplikat dalam 7 hari terakhir
SELECT finding.uid, MAX(time) AS time, ARBITRARY(region) AS region, ARBITRARY(accountid) AS accountid, ARBITRARY(finding) AS finding, ARBITRARY(vulnerabilities) AS vulnerabilities FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) GROUP BY finding.uid LIMIT 25
Semua temuan non-informasi dalam 7 hari terakhir
SELECT time, finding.title, finding, severity FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 WHERE severity != 'Informational' and eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) LIMIT 25
Temuan di mana sumber dayanya adalah ember Amazon S3 (tanpa batasan waktu)
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 WHERE any_match(resources, element -> element.type = 'amzn-s3-demo-bucket') LIMIT 25
Temuan dengan Common Vulnerability Scoring System (CVSS) skor lebih besar dari 1
(tidak ada batasan waktu)
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 WHERE any_match(vulnerabilities, element -> element.cve.cvss.base_score > 1.0) LIMIT 25
Temuan yang cocok dengan Kerentanan Umum dan Eksposur (CVE) CVE-0000-0000
(tidak ada batasan waktu)
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 WHERE any_match(vulnerabilities, element -> element.cve.uid = 'CVE-0000-0000') LIMIT 25
Jumlah produk yang mengirimkan temuan dari Security Hub dalam 7 hari terakhir
SELECT metadata.product.feature.name, count(*) FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) GROUP BY metadata.product.feature.name ORDER BY metadata.product.feature.name DESC LIMIT 25
Hitungan jenis sumber daya dalam temuan dalam 7 hari terakhir
SELECT count(*), resource.type FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 CROSS JOIN UNNEST(resources) as st(resource) WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) GROUP BY resource.type LIMIT 25
Paket rentan dari temuan dalam 7 hari terakhir
SELECT vulnerability FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0, UNNEST(vulnerabilities) as t(vulnerability) WHERE vulnerabilities is not null LIMIT 25
Temuan yang telah berubah dalam 7 hari terakhir
SELECT finding.uid, finding.created_time, finding.first_seen_time, finding.last_seen_time, finding.modified_time, finding.title, state FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_sh_findings_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) LIMIT 25
Contoh kueri untuk Amazon VPC Flow Logs
Amazon Virtual Private Cloud (AmazonVPC) memberikan rincian tentang lalu lintas IP yang pergi ke dan dari antarmuka jaringan di AndaVPC.
Berikut adalah beberapa contoh kueri Amazon VPC Flow Logs:
Lalu lintas secara spesifik Wilayah AWS dalam 7 hari terakhir
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND region in ('us-east-1','us-east-2','us-west-2') LIMIT 25
Daftar aktivitas dari sumber IP 192.0.2.1
dan port sumber 22
dalam 7 hari terakhir
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND src_endpoint.ip = '192.0.2.1' AND src_endpoint.port = 22 LIMIT 25
Jumlah alamat IP tujuan yang berbeda dalam 7 hari terakhir
SELECT COUNT(DISTINCT dst_endpoint.ip) FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) LIMIT 25
Lalu lintas berasal dari 198.51.100.0/24 dalam 7 hari terakhir
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND split_part(src_endpoint.ip,'.', 1)='198'AND split_part(src_endpoint.ip,'.', 2)='51' LIMIT 25
Semua HTTPS lalu lintas dalam 7 hari terakhir
SELECT dst_endpoint.ip as dst, src_endpoint.ip as src, traffic.packets FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND dst_endpoint.port = 443 GROUP BY dst_endpoint.ip, traffic.packets, src_endpoint.ip ORDER BY traffic.packets DESC LIMIT 25
Pesan berdasarkan jumlah paket untuk koneksi yang ditujukan ke port 443
dalam 7 hari terakhir
SELECT traffic.packets, dst_endpoint.ip FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND dst_endpoint.port = 443 GROUP BY traffic.packets, dst_endpoint.ip ORDER BY traffic.packets DESC LIMIT 25
Semua lalu lintas antara IP 192.0.2.1
dan 192.0.2.2
dalam 7 hari terakhir
SELECT start_time, end_time, src_endpoint.interface_uid, connection_info.direction, src_endpoint.ip, dst_endpoint.ip, src_endpoint.port, dst_endpoint.port, traffic.packets, traffic.bytes FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND( src_endpoint.ip = '192.0.2.1' AND dst_endpoint.ip = '192.0.2.2') OR ( src_endpoint.ip = '192.0.2.2' AND dst_endpoint.ip = '192.0.2.1') ORDER BY start_time ASC LIMIT 25
Semua lalu lintas masuk dalam 7 hari terakhir
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND connection_info.direction = 'ingress' LIMIT 25
Semua lalu lintas keluar dalam 7 hari terakhir
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND connection_info.direction = 'egress' LIMIT 25
Semua lalu lintas ditolak dalam 7 hari terakhir
SELECT * FROM amazon_security_lake_glue_db_us_east_1.amazon_security_lake_table_us_east_1_vpc_flow_1_0 WHERE eventDay BETWEEN cast(date_format(current_timestamp - INTERVAL '7' day, '%Y%m%d%H') as varchar) and cast(date_format(current_timestamp - INTERVAL '0' day, '%Y%m%d%H') as varchar) AND type_uid = 400105 LIMIT 25