AWS Inspector-Logs erfassen
Parserversion: 1.0
In diesem Dokument wird beschrieben, wie Sie AWS Inspector-Logs mit Amazon S3 in Google Security Operations aufnehmen.
Amazon Inspector ist ein verwalteter Dienst zur Verwaltung von Sicherheitslücken, der Arbeitslasten automatisch erkennt und sie kontinuierlich auf Software-Sicherheitslücken und unbeabsichtigte Netzwerkexposition scannt. Es scannt Amazon EC2-Instanzen, Container-Images in Amazon ECR und AWS Lambda-Funktionen und liefert detaillierte Ergebnisse mit Schweregraden und Empfehlungen zur Behebung. Bei dieser Integration wird die integrierte Exportfunktion für Amazon Inspector-Ergebnisse verwendet, um Ergebnisseberichte im JSON-Format an einen S3-Bucket zu senden, der dann von Google SecOps über einen Amazon S3 V2-Feed aufgenommen wird.
Hinweis
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz
- Privilegierter Zugriff auf die AWS Management Console mit Berechtigungen zum Verwalten von:
- Amazon Inspector (Ergebnisse, Berichte)
- Amazon S3 (Buckets, Bucket-Richtlinien)
- AWS KMS (Schlüsselrichtlinien)
- AWS IAM (Rollen, Richtlinien, Nutzer)
S3-Bucket für den Export von Amazon Inspector-Ergebnissen konfigurieren
Amazon Inspector verschlüsselt Berichte zu Ergebnissen mit einem AWS KMS-Schlüssel, bevor sie in einem S3-Bucket gespeichert werden. Sie müssen sowohl die S3-Bucket-Richtlinie als auch die KMS-Schlüsselrichtlinie so konfigurieren, dass Amazon Inspector Zugriff erhält.
S3-Bucket erstellen und konfigurieren
- Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu der Anleitung unter Bucket erstellen.
Speichern Sie den Namen und die Region des Buckets zur späteren Verwendung (z. B.
inspector-findings-to-secops).Wählen Sie den erstellten Bucket in der Amazon S3-Konsole unter https://console.aws.amazon.com/s3 aus.
Wählen Sie den Tab Berechtigungen aus.
Klicken Sie im Bereich Bucket-Richtlinie auf Bearbeiten.
Fügen Sie der Bucket-Richtlinie die folgende Anweisung hinzu (ersetzen Sie
inspector-findings-to-secopsdurch Ihren Bucket-Namen,111122223333durch Ihre AWS-Konto-ID undus-east-1durch Ihre AWS-Region):{ "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/*" } } } ] }Klicken Sie auf Änderungen speichern.
AWS-KMS-Schlüssel konfigurieren
Amazon Inspector erfordert einen kundenverwalteten, symmetrischen AWS KMS-Verschlüsselungsschlüssel in derselben Region wie der S3-Bucket, um Berichte zu Ergebnissen zu verschlüsseln.
- Öffnen Sie die AWS KMS-Konsole unter https://console.aws.amazon.com/kms.
- Wählen Sie im Navigationsbereich Vom Kunden verwaltete Schlüssel aus.
- Wählen Sie den KMS-Schlüssel aus, den Sie verwenden möchten, oder erstellen Sie einen neuen symmetrischen Verschlüsselungsschlüssel.
- Wählen Sie den Tab Schlüsselrichtlinie aus und klicken Sie auf Bearbeiten.
Fügen Sie der Schlüsselrichtlinie die folgende Anweisung hinzu (ersetzen Sie
111122223333durch Ihre AWS-Konto-ID undus-east-1durch Ihre AWS-Region):{ "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/*" } } }Klicken Sie auf Änderungen speichern.
Amazon Inspector-Ergebnisse nach S3 exportieren
- Melden Sie sich in der Amazon Inspector-Konsole unter https://console.aws.amazon.com/inspector/v2/home an.
- Gehen Sie im Navigationsbereich zu Ergebnisse > Alle Ergebnisse.
Optional: Verwenden Sie die Filterleiste über der Tabelle Ergebnisse, um anzugeben, welche Ergebnisse in den Bericht aufgenommen werden sollen.
Klicken Sie auf Ergebnisse exportieren.
Wählen Sie im Bereich Exporteinstellungen für Exportdateityp die Option JSON aus.
Klicken Sie unter Exportspeicherort für S3-URI auf S3 durchsuchen und wählen Sie den S3-Bucket
inspector-findings-to-secopsaus.Wählen Sie unter KMS-Schlüssel den AWS KMS-Schlüssel aus, den Sie konfiguriert haben.
Klicken Sie auf Exportieren.
Export von Ergebnissen mit der AWS CLI automatisieren
Wenn Sie Ergebnisberichte regelmäßig exportieren möchten, verwenden Sie den AWS CLI-Befehl create-findings-report. Sie können diesen Befehl mit Amazon EventBridge Scheduler oder einem Cron-Job planen.
Beispielbefehl:
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
Weitere Informationen finden Sie in der AWS CLI-Referenz für create-findings-report.
IAM-Nutzer für Google SecOps konfigurieren
Google SecOps benötigt einen IAM-Nutzer mit Lesezugriff auf den S3-Bucket, um die exportierten Ergebnisse aufzunehmen.
- Erstellen Sie einen Nutzer gemäß dieser Anleitung: IAM-Nutzer erstellen.
- Wählen Sie den erstellten Nutzer aus.
- Wählen Sie den Tab Sicherheitsanmeldedaten aus.
- Klicken Sie im Bereich Zugriffsschlüssel auf Zugriffsschlüssel erstellen.
- Wählen Sie Drittanbieterdienst als Anwendungsfall aus.
- Klicken Sie auf Weiter.
- Optional: Fügen Sie ein Beschreibungs-Tag hinzu.
- Klicken Sie auf Zugriffsschlüssel erstellen.
- Klicken Sie auf CSV-Datei herunterladen, um den Zugriffsschlüssel und den geheimen Zugriffsschlüssel zur späteren Verwendung zu speichern.
- Klicken Sie auf Fertig.
- Wählen Sie den Tab Berechtigungen aus.
- Klicken Sie im Bereich Berechtigungsrichtlinien auf Berechtigungen hinzufügen.
- Wählen Sie Berechtigungen hinzufügen aus.
- Wählen Sie Richtlinien direkt anhängen aus.
- Suchen Sie nach der Richtlinie AmazonS3FullAccess.
- Wählen Sie die Richtlinie aus.
- Klicken Sie auf Weiter.
- Klicken Sie auf Berechtigungen hinzufügen.
Feed in Google SecOps konfigurieren, um AWS Inspector-Logs aufzunehmen
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf Neuen Feed hinzufügen.
- Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
- Geben Sie einen eindeutigen Namen für den Feednamen ein.
- Wählen Sie Amazon S3 V2 als Quelltyp aus.
- Wählen Sie AWS Inspector als Logtyp aus.
- Klicken Sie auf Weiter und dann auf Senden.
Geben Sie Werte für die folgenden Felder an:
- S3-URI:
s3://inspector-findings-to-secops/findings/ - Option zum Löschen der Quelle: Wählen Sie die gewünschte Löschoption aus.
- Höchstalter der Datei: Dateien einbeziehen, die in den letzten Tagen geändert wurden (Standardwert: 180 Tage)
- Zugriffsschlüssel-ID: Nutzerzugriffsschlüssel mit Zugriff auf den S3-Bucket
- Geheimer Zugriffsschlüssel: Geheimer Schlüssel des Nutzers mit Zugriff auf den S3-Bucket
- Asset-Namespace: Der Asset-Namespace
- Labels für Datenaufnahme: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll
- S3-URI:
Klicken Sie auf Weiter und dann auf Senden.
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
duration_ms_label |
additional.fields |
Zusammengeführt |
evnt_app_class_label |
additional.fields |
Zusammengeführt |
evnt_cloud_application_class_label |
additional.fields |
Zusammengeführt |
evnt_cloud_sandbox_md5_label |
additional.fields |
Zusammengeführt |
evnt_cloudapp_rule_label |
additional.fields |
Zusammengeführt |
evnt_content_type_label |
additional.fields |
Zusammengeführt |
evnt_customer_label |
additional.fields |
Zusammengeführt |
evnt_department_label |
additional.fields |
Zusammengeführt |
evnt_location_label |
additional.fields |
Zusammengeführt |
evnt_lpclagg_label |
additional.fields |
Zusammengeführt |
evnt_lpcltype_label |
additional.fields |
Zusammengeführt |
evnt_network_service_label |
additional.fields |
Zusammengeführt |
evnt_tenant_label |
additional.fields |
Zusammengeführt |
evnt_url_category_label |
additional.fields |
Zusammengeführt |
exception_label |
additional.fields |
Zusammengeführt |
function_label |
additional.fields |
Zusammengeführt |
id_label |
additional.fields |
Zusammengeführt |
level_no_label |
additional.fields |
Zusammengeführt |
line_label |
additional.fields |
Zusammengeführt |
location_label |
additional.fields |
Zusammengeführt |
logger_field |
additional.fields |
Zusammengeführt |
msg_location_label |
additional.fields |
Zusammengeführt |
msg_record_functionName_label |
additional.fields |
Zusammengeführt |
msg_record_functionVersion_label |
additional.fields |
Zusammengeführt |
msg_record_initializationType_label |
additional.fields |
Zusammengeführt |
msg_record_instancId_label |
additional.fields |
Zusammengeführt |
msg_record_instanceMaxMemory_label |
additional.fields |
Zusammengeführt |
msg_record_phase_label |
additional.fields |
Zusammengeführt |
msg_service_label |
additional.fields |
Zusammengeführt |
msg_type_label |
additional.fields |
Zusammengeführt |
msg_xray_trace_id_label |
additional.fields |
Zusammengeführt |
protocol_label |
additional.fields |
Zusammengeführt |
record_version_label |
additional.fields |
Zusammengeführt |
repr_label |
additional.fields |
Zusammengeführt |
service_label |
additional.fields |
Zusammengeführt |
sourcetype_label |
additional.fields |
Zusammengeführt |
thread_name_label |
additional.fields |
Zusammengeführt |
type_label |
additional.fields |
Zusammengeführt |
xray_trace_id_label |
additional.fields |
Zusammengeführt |
evnt_device_hostname |
intermediary.hostname |
Direkt zugeordnet |
evnt_fwd_method_label |
intermediary.resource.attribute.labels |
Zusammengeführt |
desc_msg |
metadata.description |
Direkt zugeordnet |
message |
metadata.description |
Direkt zugeordnet |
msg |
metadata.description |
Direkt zugeordnet |
msg_desc_msg |
metadata.description |
Direkt zugeordnet |
msg_record_desc_msg |
metadata.description |
Direkt zugeordnet |
msg_text |
metadata.description |
Direkt zugeordnet |
msg.time |
metadata.event_timestamp |
Als ISO8601 geparst |
repr_time |
metadata.event_timestamp |
Als ISO8601 geparst |
timestamp |
metadata.event_timestamp |
Als ISO8601 geparst |
has_host |
metadata.event_type |
Zugeordnet: true → STATUS_UPDATE |
has_user |
metadata.event_type |
Zugeordnet: true → USER_COMMUNICATION, true → USER_UNCATEGORIZED |
msg_record_module |
metadata.product_event_type |
Direkt zugeordnet |
id_1 |
metadata.product_log_id |
Direkt zugeordnet |
evnt_bytes_in |
network.received_bytes |
Direkt zugeordnet |
evnt_bytes_out |
network.sent_bytes |
Direkt zugeordnet |
evnt_app_name |
principal.application |
Direkt zugeordnet |
msg_record_process_name |
principal.application |
Direkt zugeordnet |
evnt_device_app_version_label |
principal.asset.attribute.labels |
Zusammengeführt |
evnt_ssl_policy_label |
principal.asset.attribute.labels |
Zusammengeführt |
evnt_server_ip |
principal.asset.ip |
Zusammengeführt |
evnt_src_ip |
principal.asset.ip |
Zusammengeführt |
evnt_src_translated_ip |
principal.asset.ip |
Zusammengeführt |
msg_record_file_path |
principal.file.full_path |
Direkt zugeordnet |
msg_record_file_name |
principal.file.names |
Zusammengeführt |
evnt_hostname |
principal.hostname |
Direkt zugeordnet |
host |
principal.hostname |
Direkt zugeordnet |
evnt_server_ip |
principal.ip |
Zusammengeführt |
evnt_src_ip |
principal.ip |
Zusammengeführt |
evnt_src_translated_ip |
principal.ip |
Zusammengeführt |
evnt_os |
principal.platform |
Zugeordnet: Windows → WINDOWS, Linux → LINUX |
evnt_src_port |
principal.port |
Direkt zugeordnet |
port_number |
principal.port |
Direkt zugeordnet |
msg_record_process_id |
principal.process.pid |
Direkt zugeordnet |
cmd_status_label |
principal.resource.attribute.labels |
Zusammengeführt |
evnt_format_label |
principal.resource.attribute.labels |
Zusammengeführt |
evnt_os_label |
principal.resource.attribute.labels |
Zusammengeführt |
msg_record_runtimeVersionArn_label |
principal.resource.attribute.labels |
Zusammengeführt |
msg_record_runtimeVersion_label |
principal.resource.attribute.labels |
Zusammengeführt |
record_requestId_labels |
principal.resource.attribute.labels |
Zusammengeführt |
requestId_labels |
principal.resource.attribute.labels |
Zusammengeführt |
msg_record_name |
principal.resource.name |
Direkt zugeordnet |
id |
principal.resource.product_object_id |
Direkt zugeordnet |
evnt_url |
principal.url |
Direkt zugeordnet |
evnt_device_owner |
principal.user.user_display_name |
Direkt zugeordnet |
evnt_user |
principal.user.userid |
Direkt zugeordnet |
msg_extra_desc_msg_body_account_id |
principal.user.userid |
Direkt zugeordnet |
evnt_action |
security_result.action |
Zugeordnet: allow → security_result_action |
security_result_action |
security_result.action |
Zusammengeführt |
security_result_category_details |
security_result.category_details |
Zusammengeführt |
security_result_url_super_category |
security_result.category_details |
Zusammengeführt |
elapsed_time_label |
security_result.detection_fields |
Zusammengeführt |
evnt_session_count_label |
security_result.detection_fields |
Zusammengeführt |
evnt_ssl_decrypted_label |
security_result.detection_fields |
Zusammengeführt |
evnt_url_class_label |
security_result.detection_fields |
Zusammengeführt |
level_icon_label |
security_result.detection_fields |
Zusammengeführt |
level |
security_result.severity |
Zugeordnet: INFO → INFORMATIONAL, WARNING → MEDIUM |
msg_level |
security_result.severity |
Zugeordnet: INFO → INFORMATIONAL, WARNING → MEDIUM |
evnt_dest_ip |
target.ip |
Zusammengeführt |
evnt_dest_country |
target.location.country_or_region |
Direkt zugeordnet |
evnt_dest_port |
target.port |
Direkt zugeordnet |
dst_url |
target.url |
Direkt zugeordnet |
| – | metadata.event_type |
Konstante: USER_COMMUNICATION |
| – | metadata.product_name |
Konstante: AWS Inspector |
| – | metadata.vendor_name |
Konstante: AWS Inspector |
| – | network.ip_protocol |
Konstante: UDP |
| – | principal.platform |
Konstante: WINDOWS |
| – | security_result.detection_fields |
Konstante: client_tunnel_ip_label |
| – | security_result.severity |
Konstante: INFORMATIONAL |
Änderungsprotokoll
Änderungsprotokoll für diesen Parser ansehen
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten