AWS Inspector-Logs erfassen

Parserversion: 1.0

Unterstützt in:

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

  1. Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu der Anleitung unter Bucket erstellen.
  2. Speichern Sie den Namen und die Region des Buckets zur späteren Verwendung (z. B. inspector-findings-to-secops).

  3. Wählen Sie den erstellten Bucket in der Amazon S3-Konsole unter https://console.aws.amazon.com/s3 aus.

  4. Wählen Sie den Tab Berechtigungen aus.

  5. Klicken Sie im Bereich Bucket-Richtlinie auf Bearbeiten.

  6. Fügen Sie der Bucket-Richtlinie die folgende Anweisung hinzu (ersetzen Sie inspector-findings-to-secops durch Ihren Bucket-Namen, 111122223333 durch Ihre AWS-Konto-ID und us-east-1 durch 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/*"
                    }
                }
            }
        ]
    }
    
  7. 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.

  1. Öffnen Sie die AWS KMS-Konsole unter https://console.aws.amazon.com/kms.
  2. Wählen Sie im Navigationsbereich Vom Kunden verwaltete Schlüssel aus.
  3. Wählen Sie den KMS-Schlüssel aus, den Sie verwenden möchten, oder erstellen Sie einen neuen symmetrischen Verschlüsselungsschlüssel.
  4. Wählen Sie den Tab Schlüsselrichtlinie aus und klicken Sie auf Bearbeiten.
  5. Fügen Sie der Schlüsselrichtlinie die folgende Anweisung hinzu (ersetzen Sie 111122223333 durch Ihre AWS-Konto-ID und us-east-1 durch 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/*"
            }
        }
    }
    
  6. Klicken Sie auf Änderungen speichern.

Amazon Inspector-Ergebnisse nach S3 exportieren

  1. Melden Sie sich in der Amazon Inspector-Konsole unter https://console.aws.amazon.com/inspector/v2/home an.
  2. Gehen Sie im Navigationsbereich zu Ergebnisse > Alle Ergebnisse.
  3. Optional: Verwenden Sie die Filterleiste über der Tabelle Ergebnisse, um anzugeben, welche Ergebnisse in den Bericht aufgenommen werden sollen.

  4. Klicken Sie auf Ergebnisse exportieren.

  5. Wählen Sie im Bereich Exporteinstellungen für Exportdateityp die Option JSON aus.

  6. Klicken Sie unter Exportspeicherort für S3-URI auf S3 durchsuchen und wählen Sie den S3-Bucket inspector-findings-to-secops aus.

  7. Wählen Sie unter KMS-Schlüssel den AWS KMS-Schlüssel aus, den Sie konfiguriert haben.

  8. 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.

  1. Erstellen Sie einen Nutzer gemäß dieser Anleitung: IAM-Nutzer erstellen.
  2. Wählen Sie den erstellten Nutzer aus.
  3. Wählen Sie den Tab Sicherheitsanmeldedaten aus.
  4. Klicken Sie im Bereich Zugriffsschlüssel auf Zugriffsschlüssel erstellen.
  5. Wählen Sie Drittanbieterdienst als Anwendungsfall aus.
  6. Klicken Sie auf Weiter.
    • Optional: Fügen Sie ein Beschreibungs-Tag hinzu.
  7. Klicken Sie auf Zugriffsschlüssel erstellen.
  8. Klicken Sie auf CSV-Datei herunterladen, um den Zugriffsschlüssel und den geheimen Zugriffsschlüssel zur späteren Verwendung zu speichern.
  9. Klicken Sie auf Fertig.
  10. Wählen Sie den Tab Berechtigungen aus.
  11. Klicken Sie im Bereich Berechtigungsrichtlinien auf Berechtigungen hinzufügen.
  12. Wählen Sie Berechtigungen hinzufügen aus.
  13. Wählen Sie Richtlinien direkt anhängen aus.
  14. Suchen Sie nach der Richtlinie AmazonS3FullAccess.
  15. Wählen Sie die Richtlinie aus.
  16. Klicken Sie auf Weiter.
  17. Klicken Sie auf Berechtigungen hinzufügen.

Feed in Google SecOps konfigurieren, um AWS Inspector-Logs aufzunehmen

  1. Rufen Sie die SIEM-Einstellungen > Feeds auf.
  2. Klicken Sie auf Neuen Feed hinzufügen.
  3. Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
  4. Geben Sie einen eindeutigen Namen für den Feednamen ein.
  5. Wählen Sie Amazon S3 V2 als Quelltyp aus.
  6. Wählen Sie AWS Inspector als Logtyp aus.
  7. Klicken Sie auf Weiter und dann auf Senden.
  8. 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
  9. 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