Mengumpulkan log AWS Inspector
Parser Version: 1.0
Dokumen ini menjelaskan cara menyerap log AWS Inspector ke Google Security Operations menggunakan Amazon S3.
Amazon Inspector adalah layanan pengelolaan kerentanan yang otomatis menemukan workload dan terus memindainya untuk menemukan kerentanan software dan eksposur jaringan yang tidak diinginkan. Layanan ini memindai instance Amazon EC2, image container di Amazon ECR, dan fungsi AWS Lambda, sehingga menghasilkan temuan mendetail dengan skor tingkat keparahan dan rekomendasi perbaikan. Integrasi ini menggunakan fitur ekspor temuan bawaan Amazon Inspector untuk mengirimkan laporan temuan berformat JSON ke bucket S3, yang kemudian di-ingest oleh Google SecOps menggunakan feed Amazon S3 V2.
Sebelum memulai
Pastikan Anda memiliki prasyarat berikut:
- Instance Google SecOps
- Akses istimewa ke AWS Management Console dengan izin untuk mengelola:
- Amazon Inspector (temuan, laporan)
- Amazon S3 (bucket, kebijakan bucket)
- AWS KMS (kebijakan kunci)
- AWS IAM (peran, kebijakan, pengguna)
Mengonfigurasi bucket S3 untuk ekspor temuan Amazon Inspector
Amazon Inspector mengenkripsi laporan temuan dengan kunci AWS KMS sebelum menyimpannya di bucket S3. Anda harus mengonfigurasi kebijakan bucket S3 dan kebijakan kunci KMS untuk mengizinkan akses Amazon Inspector.
Buat dan konfigurasi bucket S3
- Buat bucket Amazon S3 dengan mengikuti panduan pengguna ini: Membuat bucket.
Simpan Name dan Region bucket untuk referensi di masa mendatang (misalnya,
inspector-findings-to-secops).Pilih bucket yang dibuat di konsol Amazon S3 di https://console.aws.amazon.com/s3.
Pilih tab Izin.
Di bagian Bucket policy, klik Edit.
Tambahkan pernyataan berikut ke kebijakan bucket (ganti
inspector-findings-to-secopsdengan nama bucket Anda,111122223333dengan ID akun AWS Anda, danus-east-1dengan Region AWS Anda):{ "Version": "2012-10-17", "Statement": [ { "Sid": "allow-inspector", "Effect": "Allow", "Principal": { "Service": "inspector2.amazonaws.com" }, "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:AbortMultipartUpload" ], "Resource": "arn:aws:s3:::inspector-findings-to-secops/*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:inspector2:us-east-1:111122223333:report/*" } } } ] }Klik Simpan perubahan.
Mengonfigurasi kunci AWS KMS
Amazon Inspector memerlukan kunci AWS KMS enkripsi simetris yang dikelola pelanggan di Region yang sama dengan bucket S3 untuk mengenkripsi laporan temuan.
- Buka konsol AWS KMS di https://console.aws.amazon.com/kms.
- Di panel navigasi, pilih Customer managed keys.
- Pilih kunci KMS yang ingin Anda gunakan (atau buat kunci enkripsi simetris baru).
- Pilih tab Key policy, lalu klik Edit.
Tambahkan pernyataan berikut ke kebijakan kunci (ganti
111122223333dengan ID akun AWS Anda danus-east-1dengan AWS Region Anda):{ "Sid": "Allow Amazon Inspector to use the key", "Effect": "Allow", "Principal": { "Service": "inspector2.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:inspector2:us-east-1:111122223333:report/*" } } }Klik Simpan perubahan.
Mengekspor temuan Amazon Inspector ke S3
- Login ke konsol Amazon Inspector di https://console.aws.amazon.com/inspector/v2/home.
- Di panel navigasi, buka Findings > All findings.
Opsional: Gunakan panel filter di atas tabel Temuan untuk menentukan temuan mana yang akan disertakan dalam laporan.
Klik Ekspor temuan.
Di bagian Setelan ekspor, untuk Jenis file ekspor, pilih JSON.
Di bagian Export location, untuk S3 URI, klik Browse S3, lalu pilih bucket S3
inspector-findings-to-secops.Untuk KMS key, pilih kunci AWS KMS yang Anda konfigurasi.
Klik Ekspor.
Mengotomatiskan ekspor temuan menggunakan AWS CLI
Untuk mengekspor laporan temuan secara berulang, gunakan perintah create-findings-report AWS CLI. Anda dapat menjadwalkan perintah ini menggunakan Amazon EventBridge Scheduler atau cron job.
Contoh perintah:
aws inspector2 create-findings-report \ --report-format JSON \ --s3-destination bucketName=inspector-findings-to-secops,keyPrefix=findings/,kmsKeyArn=arn:aws:kms:us-east-1:111122223333:key/your-kms-key-id
Untuk mengetahui informasi selengkapnya, lihat referensi AWS CLI create-findings-report.
Mengonfigurasi pengguna IAM untuk Google SecOps
Google SecOps memerlukan pengguna IAM dengan akses baca ke bucket S3 untuk menyerap temuan yang diekspor.
- 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 referensi di masa mendatang.
- Klik Done.
- Pilih tab Permissions.
- Klik Tambahkan izin di bagian Kebijakan izin.
- Pilih Tambahkan izin.
- Pilih Attach policies directly.
- Cari kebijakan AmazonS3FullAccess.
- Pilih kebijakan.
- Klik Berikutnya.
- Klik Add permissions.
Mengonfigurasi feed di Google SecOps untuk menyerap log AWS Inspector
- Buka Setelan SIEM > Feed.
- Klik Tambahkan Feed Baru.
- Di halaman berikutnya, klik Konfigurasi satu feed.
- Masukkan nama unik untuk Nama feed.
- Pilih Amazon S3 V2 sebagai Jenis sumber.
- Pilih AWS Inspector sebagai Log type.
- Klik Berikutnya, lalu klik Kirim.
Tentukan nilai untuk kolom berikut:
- URI S3:
s3://inspector-findings-to-secops/findings/ - Opsi penghapusan sumber: Pilih opsi penghapusan sesuai preferensi Anda
- Usia File Maksimum: Menyertakan file yang diubah dalam beberapa hari terakhir (default adalah 180 hari)
- Access Key ID: Kunci akses pengguna dengan akses ke bucket S3
- Secret Access Key: Kunci rahasia pengguna dengan akses ke bucket S3
- Namespace aset: Namespace aset
- Label penyerapan: Label yang akan diterapkan ke peristiwa dari feed ini
- URI S3:
Klik Berikutnya, lalu klik Kirim.
Tabel pemetaan UDM
| Kolom Log | Pemetaan UDM | Logika |
|---|---|---|
duration_ms_label |
additional.fields |
Digabung |
evnt_app_class_label |
additional.fields |
Digabung |
evnt_cloud_application_class_label |
additional.fields |
Digabung |
evnt_cloud_sandbox_md5_label |
additional.fields |
Digabung |
evnt_cloudapp_rule_label |
additional.fields |
Digabung |
evnt_content_type_label |
additional.fields |
Digabung |
evnt_customer_label |
additional.fields |
Digabung |
evnt_department_label |
additional.fields |
Digabung |
evnt_location_label |
additional.fields |
Digabung |
evnt_lpclagg_label |
additional.fields |
Digabung |
evnt_lpcltype_label |
additional.fields |
Digabung |
evnt_network_service_label |
additional.fields |
Digabung |
evnt_tenant_label |
additional.fields |
Digabung |
evnt_url_category_label |
additional.fields |
Digabung |
exception_label |
additional.fields |
Digabung |
function_label |
additional.fields |
Digabung |
id_label |
additional.fields |
Digabung |
level_no_label |
additional.fields |
Digabung |
line_label |
additional.fields |
Digabung |
location_label |
additional.fields |
Digabung |
logger_field |
additional.fields |
Digabung |
msg_location_label |
additional.fields |
Digabung |
msg_record_functionName_label |
additional.fields |
Digabung |
msg_record_functionVersion_label |
additional.fields |
Digabung |
msg_record_initializationType_label |
additional.fields |
Digabung |
msg_record_instancId_label |
additional.fields |
Digabung |
msg_record_instanceMaxMemory_label |
additional.fields |
Digabung |
msg_record_phase_label |
additional.fields |
Digabung |
msg_service_label |
additional.fields |
Digabung |
msg_type_label |
additional.fields |
Digabung |
msg_xray_trace_id_label |
additional.fields |
Digabung |
protocol_label |
additional.fields |
Digabung |
record_version_label |
additional.fields |
Digabung |
repr_label |
additional.fields |
Digabung |
service_label |
additional.fields |
Digabung |
sourcetype_label |
additional.fields |
Digabung |
thread_name_label |
additional.fields |
Digabung |
type_label |
additional.fields |
Digabung |
xray_trace_id_label |
additional.fields |
Digabung |
evnt_device_hostname |
intermediary.hostname |
Dipetakan secara langsung |
evnt_fwd_method_label |
intermediary.resource.attribute.labels |
Digabung |
desc_msg |
metadata.description |
Dipetakan secara langsung |
message |
metadata.description |
Dipetakan secara langsung |
msg |
metadata.description |
Dipetakan secara langsung |
msg_desc_msg |
metadata.description |
Dipetakan secara langsung |
msg_record_desc_msg |
metadata.description |
Dipetakan secara langsung |
msg_text |
metadata.description |
Dipetakan secara langsung |
msg.time |
metadata.event_timestamp |
Diuraikan sebagai ISO8601 |
repr_time |
metadata.event_timestamp |
Diuraikan sebagai ISO8601 |
timestamp |
metadata.event_timestamp |
Diuraikan sebagai ISO8601 |
has_host |
metadata.event_type |
Dipetakan: true → STATUS_UPDATE |
has_user |
metadata.event_type |
Dipetakan: true → USER_COMMUNICATION, true → USER_UNCATEGORIZED |
msg_record_module |
metadata.product_event_type |
Dipetakan secara langsung |
id_1 |
metadata.product_log_id |
Dipetakan secara langsung |
evnt_bytes_in |
network.received_bytes |
Dipetakan secara langsung |
evnt_bytes_out |
network.sent_bytes |
Dipetakan secara langsung |
evnt_app_name |
principal.application |
Dipetakan secara langsung |
msg_record_process_name |
principal.application |
Dipetakan secara langsung |
evnt_device_app_version_label |
principal.asset.attribute.labels |
Digabung |
evnt_ssl_policy_label |
principal.asset.attribute.labels |
Digabung |
evnt_server_ip |
principal.asset.ip |
Digabung |
evnt_src_ip |
principal.asset.ip |
Digabung |
evnt_src_translated_ip |
principal.asset.ip |
Digabung |
msg_record_file_path |
principal.file.full_path |
Dipetakan secara langsung |
msg_record_file_name |
principal.file.names |
Digabung |
evnt_hostname |
principal.hostname |
Dipetakan secara langsung |
host |
principal.hostname |
Dipetakan secara langsung |
evnt_server_ip |
principal.ip |
Digabung |
evnt_src_ip |
principal.ip |
Digabung |
evnt_src_translated_ip |
principal.ip |
Digabung |
evnt_os |
principal.platform |
Dipetakan: Windows → WINDOWS, Linux → LINUX |
evnt_src_port |
principal.port |
Dipetakan secara langsung |
port_number |
principal.port |
Dipetakan secara langsung |
msg_record_process_id |
principal.process.pid |
Dipetakan secara langsung |
cmd_status_label |
principal.resource.attribute.labels |
Digabung |
evnt_format_label |
principal.resource.attribute.labels |
Digabung |
evnt_os_label |
principal.resource.attribute.labels |
Digabung |
msg_record_runtimeVersionArn_label |
principal.resource.attribute.labels |
Digabung |
msg_record_runtimeVersion_label |
principal.resource.attribute.labels |
Digabung |
record_requestId_labels |
principal.resource.attribute.labels |
Digabung |
requestId_labels |
principal.resource.attribute.labels |
Digabung |
msg_record_name |
principal.resource.name |
Dipetakan secara langsung |
id |
principal.resource.product_object_id |
Dipetakan secara langsung |
evnt_url |
principal.url |
Dipetakan secara langsung |
evnt_device_owner |
principal.user.user_display_name |
Dipetakan secara langsung |
evnt_user |
principal.user.userid |
Dipetakan secara langsung |
msg_extra_desc_msg_body_account_id |
principal.user.userid |
Dipetakan secara langsung |
evnt_action |
security_result.action |
Dipetakan: allow → security_result_action |
security_result_action |
security_result.action |
Digabung |
security_result_category_details |
security_result.category_details |
Digabung |
security_result_url_super_category |
security_result.category_details |
Digabung |
elapsed_time_label |
security_result.detection_fields |
Digabung |
evnt_session_count_label |
security_result.detection_fields |
Digabung |
evnt_ssl_decrypted_label |
security_result.detection_fields |
Digabung |
evnt_url_class_label |
security_result.detection_fields |
Digabung |
level_icon_label |
security_result.detection_fields |
Digabung |
level |
security_result.severity |
Dipetakan: INFO → INFORMATIONAL, WARNING → MEDIUM |
msg_level |
security_result.severity |
Dipetakan: INFO → INFORMATIONAL, WARNING → MEDIUM |
evnt_dest_ip |
target.ip |
Digabung |
evnt_dest_country |
target.location.country_or_region |
Dipetakan secara langsung |
evnt_dest_port |
target.port |
Dipetakan secara langsung |
dst_url |
target.url |
Dipetakan secara langsung |
| T/A | metadata.event_type |
Konstanta: USER_COMMUNICATION |
| T/A | metadata.product_name |
Konstanta: AWS Inspector |
| T/A | metadata.vendor_name |
Konstanta: AWS Inspector |
| T/A | network.ip_protocol |
Konstanta: UDP |
| T/A | principal.platform |
Konstanta: WINDOWS |
| T/A | security_result.detection_fields |
Konstanta: client_tunnel_ip_label |
| T/A | security_result.severity |
Konstanta: INFORMATIONAL |
Log Perubahan
Melihat Log Perubahan untuk parser ini
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.