Mengumpulkan log AWS Control Tower
Parser Version: 1.0
Dokumen ini menjelaskan cara menyerap log AWS Control Tower ke Google Security Operations. AWS Control Tower memungkinkan tata kelola, kepatuhan, dan pemantauan keamanan di beberapa akun AWS. Integrasi ini memungkinkan Anda menganalisis log dari AWS Control Tower untuk mendapatkan visibilitas dan postur keamanan yang lebih baik.
Sebelum memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps
- Akses istimewa ke AWS
Mengonfigurasi bucket Amazon S3
- Buat bucket Amazon S3 dengan mengikuti panduan pengguna ini: Membuat bucket
- Simpan Nama dan Region bucket untuk digunakan nanti.
- Buat pengguna dengan mengikuti panduan pengguna ini: Membuat pengguna IAM.
- Pilih User yang dibuat.
- Pilih tab kredensial keamanan.
- Klik Create Access Key di bagian Access Keys.
- Pilih Layanan pihak ketiga sebagai Kasus penggunaan.
- Klik Berikutnya.
- Opsional: tambahkan tag deskripsi.
- Klik Create access key.
- Klik Download CSV file untuk menyimpan Access Key dan Secret Access Key untuk digunakan nanti.
- Klik Done.
- Pilih tab Izin.
- Klik Add permissions di bagian Permissions policies.
- Pilih Add permissions.
- Pilih Lampirkan kebijakan secara langsung.
- Cari dan pilih kebijakan AmazonS3FullAccess dan CloudWatchLogsFullAccess.
- Klik Berikutnya.
- Klik Add permissions.
Mengonfigurasi CloudTrail di AWS Control Tower
- Login ke AWS Management Console.
- Buka AWS Control Tower.
- Di kotak penelusuran, ketik CloudTrail dan pilih dari daftar layanan.
Klik Create Trail untuk membuat jejak baru.
Tentukan Setelan Jalur:
- Trail name: Berikan nama yang bermakna untuk trail (misalnya, ControlTowerTrail).
- Terapkan jejak ke semua region: Pastikan Anda memilih Ya untuk Terapkan jejak ke semua region.
- Peristiwa pengelolaan: Pastikan peristiwa Baca/Tulis disetel ke Semua.
- Opsional: Peristiwa data: Aktifkan peristiwa data S3 dan peristiwa data Lambda untuk merekam aktivitas data secara mendetail.
- Opsional: Validasi file log: Aktifkan opsi ini untuk memastikan bahwa file log tidak dirusak setelah disimpan.
Di pemilih Event, pilih untuk mencatat Management events dan Data events ke dalam log.
Cara mengonfigurasi CloudTrail
- Buka AWS IAM Console.
- Klik Peran.
- Cari peran yang digunakan CloudTrail
AWSServiceRoleForCloudTrail(peran dibuat secara otomatis saat Anda menyiapkan CloudTrail). - Di tab Izin untuk peran, klik Lampirkan kebijakan.
- Telusuri
CloudTrailS3DeliveryPolicy. - Centang kotak di samping kebijakan
CloudTrailS3DeliveryPolicy. - Klik Attach policy.
- Buka Konsol CloudTrail AWS.
- Di bagian Storage location, pilih S3 sebagai tujuan file log.
- Pilih bucket S3 yang Anda buat sebelumnya.
- Klik Allow saat diminta untuk memberikan izin kepada CloudTrail untuk menulis log ke bucket yang Anda pilih.
- Tinjau setelan Anda, lalu klik Buat (atau Simpan perubahan jika Anda mengedit jalur yang ada).
Menyiapkan feed
Ada dua titik entri yang berbeda untuk menyiapkan feed di platform Google SecOps:
- SIEM Settings > Feeds > Add New Feed
- Hub Konten > Paket Konten > Mulai
Cara menyiapkan feed AWS Control Tower
- Klik paket Amazon Cloud Platform.
- Cari jenis log AWS Control Tower.
Tentukan nilai di kolom berikut.
- Jenis Sumber: Amazon SQS V2
- Nama Antrean: Nama antrean SQS yang akan dibaca
- URI S3: URI bucket.
s3://your-log-bucket-name/- Ganti
your-log-bucket-namedengan nama bucket S3 Anda yang sebenarnya.
- Ganti
Opsi penghapusan sumber: Pilih opsi penghapusan sesuai dengan preferensi penyerapan Anda.
Usia File Maksimum: Sertakan file yang diubah dalam jumlah hari terakhir. Defaultnya adalah 180 hari.
SQS Queue Access Key ID: Kunci akses akun yang merupakan string alfanumerik 20 karakter.
SQS Queue Secret Access Key: Kunci akses akun yang berupa string alfanumerik 40 karakter.
Opsi lanjutan
- Nama Feed: Nilai yang diisi otomatis yang mengidentifikasi feed.
- Namespace Aset: Namespace yang terkait dengan feed.
- Label Penyerapan: Label yang diterapkan ke semua peristiwa dari feed ini.
Klik Buat feed.
Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi beberapa feed untuk berbagai jenis log dalam kelompok produk ini, lihat Mengonfigurasi feed menurut produk.
Tabel Pemetaan UDM
| Kolom log | Pemetaan UDM | Logika |
|---|---|---|
| awsAccountId | target.user.group_identifiers | ID akun AWS yang terkait dengan peristiwa. |
| digestPublicKeyFingerprint | target.file.sha1 | Sidik jari kunci publik yang digunakan untuk menandatangani ringkasan. |
| digestPublicKeyFingerprint | target.resource.attribute.labels.value | Sidik jari kunci publik yang digunakan untuk menandatangani ringkasan. |
| digestS3Bucket | target.resource.name | Nama bucket S3 tempat ringkasan disimpan. |
| digestS3Object | target.file.full_path | Jalur ke objek ringkasan dalam bucket S3. |
| digestSignatureAlgorithm | network.tls.cipher | Algoritma yang digunakan untuk menandatangani digest. |
| digestSignatureAlgorithm | target.resource.attribute.labels.value | Algoritma yang digunakan untuk menandatangani digest. |
| digestStartTime | metadata.event_timestamp | Waktu mulai periode ringkasan. Digunakan sebagai waktu peristiwa jika eventTime tidak tersedia. |
| eventCategory | security_result.category_details | Kategori peristiwa. |
| eventID | metadata.product_log_id | ID unik peristiwa. |
| eventName | metadata.product_event_type | Nama peristiwa. |
| eventName | security_result.summary | Nama peristiwa, yang digunakan untuk membuat ringkasan hasil keamanan. |
| eventSource | target.application | Sumber peristiwa. |
| eventTime | metadata.event_timestamp | Waktu terjadinya peristiwa. |
| eventType | additional.fields.value.string_value | Jenis peristiwa. |
| logFiles.hashValue | about.file.sha256 | Hash SHA-256 file log. |
| logFiles.s3Bucket | about.resource.name | Nama bucket S3 tempat file log disimpan. |
| logFiles.s3Object | about.file.full_path | Jalur ke objek file log di bucket S3. |
| previousDigestHashValue | target.file.sha256 | Hash SHA-256 dari ringkasan sebelumnya. |
| recipientAccountId | target.resource.attribute.labels.value | ID akun AWS penerima peristiwa. |
| Records.awsRegion | principal.location.name | Region AWS tempat peristiwa terjadi. |
| Records.errorCode | security_result.rule_id | Kode error, jika ada, yang terkait dengan permintaan. |
| Records.errorMessage | security_result.description | Pesan error, jika ada, yang terkait dengan permintaan. |
| Records.eventCategory | security_result.category_details | Kategori peristiwa. |
| Records.eventID | metadata.product_log_id | ID unik peristiwa. |
| Records.eventName | metadata.product_event_type | Nama peristiwa. |
| Records.eventName | security_result.summary | Nama peristiwa, yang digunakan untuk membuat ringkasan hasil keamanan. |
| Records.eventSource | target.application | Sumber peristiwa. |
| Records.eventTime | metadata.event_timestamp | Waktu terjadinya peristiwa. |
| Records.eventType | additional.fields.value.string_value | Jenis peristiwa. |
| Records.requestID | target.resource.attribute.labels.value | ID permintaan. |
| Records.requestParameters.groupName | target.group.group_display_name | Nama grup, jika ada, yang terkait dengan permintaan. |
| Records.requestParameters.userName | src.user.userid | Nama pengguna, jika ada, yang terkait dengan permintaan. |
| Records.requestParameters.userName | src.user.user_display_name | Nama pengguna, jika ada, yang terkait dengan permintaan. |
| Records.responseElements.ConsoleLogin | security_action | Hasil upaya login konsol. |
| Records.responseElements.ConsoleLogin | security_result.summary | Hasil upaya login konsol, yang digunakan untuk membuat ringkasan hasil keamanan. |
| Records.sourceIPAddress | principal.hostname | Alamat IP utama. Digunakan sebagai nama host jika bukan IP yang valid. |
| Records.sourceIPAddress | principal.ip | Alamat IP akun utama. |
| Records.tlsDetails.cipherSuite | network.tls.cipher | Cipher suite yang digunakan untuk koneksi TLS. |
| Records.tlsDetails.tlsVersion | network.tls.version | Versi TLS yang digunakan untuk koneksi. |
| Records.userAgent | network.http.user_agent | Agen pengguna permintaan. |
| Records.userIdentity.accessKeyId | additional.fields.value.string_value | ID kunci akses yang digunakan untuk permintaan. |
| Records.userIdentity.accountId | principal.user.group_identifiers | ID akun AWS pengguna. |
| Records.userIdentity.arn | principal.user.attribute.labels.value | ARN pengguna. |
| Records.userIdentity.arn | target.user.userid | ARN pengguna. Digunakan sebagai userid jika userName tidak tersedia. |
| Records.userIdentity.principalId | principal.user.product_object_id | ID utama pengguna. |
| Records.userIdentity.sessionContext.attributes.mfaAuthenticated | principal.user.attribute.labels.value | Apakah MFA digunakan untuk permintaan. |
| Records.userIdentity.sessionContext.sessionIssuer.userName | principal.user.userid | Nama pengguna yang mengeluarkan sesi. |
| Records.userIdentity.type | principal.resource.type | Jenis identitas yang digunakan untuk permintaan. |
| Records.userIdentity.userName | target.user.userid | Nama pengguna pengguna. |
| - | extensions.auth.mechanism | Setel ke "REMOTE". |
| - | metadata.event_type | Tetapkan ke "STATUS_UPDATE", "USER_RESOURCE_ACCESS", "USER_LOGIN", atau "GENERIC_EVENT" berdasarkan eventName. |
| - | metadata.log_type | Tetapkan ke "AWS_CONTROL_TOWER". |
| - | metadata.product_name | Tetapkan ke "AWS Control Tower". |
| - | metadata.vendor_name | Tetapkan ke "AWS". |
| - | principal.asset.attribute.cloud.environment | Tetapkan ke "AMAZON_WEB_SERVICES". |
| - | security_result.action | Tetapkan ke "ALLOW" atau "BLOCK" berdasarkan errorCode. |
| - | security_result.severity | Tetapkan ke "INFORMASI". |
Log Perubahan
Melihat Log Perubahan untuk parser ini
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.