Recopila registros de Amazon CloudFront

Se admite en los siguientes países:

En este documento, se describe cómo puedes recopilar registros de Amazon CloudFront configurando un feed de Google Security Operations.

Para obtener más información, consulta la descripción general de la transferencia de datos a Google Security Operations.

Una etiqueta de transferencia identifica el analizador que normaliza los datos de registro sin procesar al formato estructurado del UDM. La información de este documento se aplica al analizador con la etiqueta de transferencia AWS_CLOUDFRONT.

Antes de comenzar

Asegúrate de que se haya creado el bucket de Amazon S3. Para obtener más información, consulta Crea tu primer bucket de S3.

Configura Amazon CloudFront

  1. Accede a la consola de Administración de AWS.
  2. Accede a la consola de Amazon S3 y crea el bucket de Amazon S3.
  3. Para habilitar el registro, selecciona Activar.
  4. En el campo Bucket de registros, especifica el nombre del bucket de Amazon S3.
  5. En el campo Prefijo de registro, especifica un prefijo opcional.
  6. Después de que los archivos de registro se almacenen en el bucket de Amazon S3, crea una fila de SQS y adjúntalo al bucket de Amazon S3.

Identifica los extremos para la conectividad

Verifica las políticas de claves de usuario y de KMS de IAM requeridas para S3, SQS y KMS.

Según el servicio y la región, identifica los extremos de conectividad. Para ello, consulta la siguiente documentación de AWS:

Configura un feed en Google Security Operations para transferir los registros de Amazon CloudFront

  1. Selecciona Configuración de SIEM > Feeds.
  2. Haz clic en Agregar nueva.
  3. Ingresa un nombre único para el Nombre del feed.
  4. Selecciona Amazon S3 o Amazon SQS como Tipo de fuente.
  5. Selecciona AWS CloudFront como el Tipo de registro.
  6. Haz clic en Siguiente.
  7. Google Security Operations admite la recopilación de registros con el ID de la clave de acceso y el método secreto. Para crear el ID de clave de acceso y el secreto, consulta Cómo configurar la autenticación de herramientas con AWS.
  8. Según la configuración de Amazon CloudFront que creaste, especifica los valores para los siguientes campos.
    • Si usas Amazon S3, especifica valores para los siguientes campos:
      • Región
      • URI de S3
      • Un URI es un
      • Opción de eliminación de fuentes
    • Si usas Amazon SQS, especifica valores para los siguientes campos:
      • Región
      • Nombre de la cola
      • Número de cuenta
      • ID de clave de acceso de la cola
      • Coloca en cola la clave de acceso secreta
      • Opción de eliminación de fuentes
  9. Haz clic en Siguiente y, luego, en Enviar.

Para enviar los registros de Amazon CloudFront al bucket de Amazon S3, consulta Configura y usa registros estándar (registros de acceso).

Para obtener más información sobre los feeds de Google Security Operations, consulta la documentación de los feeds de Google Security Operations. Para obtener información sobre los requisitos de cada tipo de feed, consulta Configuración de feeds por tipo. Si tienes problemas cuando creas feeds, comunícate con el equipo de asistencia de Operaciones de seguridad de Google.

Referencia de la asignación de campos

Este analizador extrae campos de los registros de AWS CloudFront en formato SYSLOG o JSON y los normaliza en la UDM. Usa patrones de grok para analizar cadenas de mensajes, controla varias transformaciones de datos (p.ej., conversiones de tipo, cambio de nombre) y enriquece los datos con contexto adicional, como el análisis del usuario-agente y la identificación del protocolo de la aplicación.

Tabla de asignación de la UDM

Campo de registro Asignación de UDM Lógica
c-ip principal.ip Se asignan directamente. También se asigna a principal.asset.ip.
c-port principal.port Se asignan directamente.
cs(Cookie) additional.fields[].key: "cookie"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si cs(Cookie) está presente y agent no contiene "://".
cs(Host) principal.hostname Se asignan directamente. También se asigna a principal.asset.hostname. Se usa para construir el target.url si no hay otros campos de URL disponibles.
cs(Referer) network.http.referral_url Se asignan directamente.
cs(User-Agent) network.http.user_agent Se asignan directamente. También se asigna a network.http.parsed_user_agent y se analiza en sus componentes si no contiene "://".
cs-bytes network.sent_bytes Se asignan directamente. Se convirtió en un número entero sin signo.
cs-method network.http.method Se asignan directamente.
cs-protocol network.application_protocol Se asigna después de convertir a mayúsculas. Si el valor no se reconoce como un protocolo de aplicación estándar y cs-protocol-version contiene "HTTP", network.application_protocol se establece en "HTTP".
dport target.port Se asignan directamente. Se convirtió en número entero.
edge_location principal.location.name Se asignan directamente.
fle-encrypted-fields additional.fields[].key: "fle-encrypted-fields"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si está presente.
fle-status additional.fields[].key: "fle-status"
additional.fields[].value.string_value: Se asignó directamente.
Se asigna de forma condicional si está presente.
host principal.hostname, principal.asset.hostname Se asignan directamente.
id principal.asset_id Se asignan directamente con el prefijo "id: ".
ip target.ip, target.asset.ip Se asignan directamente.
log_id metadata.product_log_id Se asignan directamente.
resource additional.fields[].key: "resource"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si está presente.
result_type additional.fields[].key: "result_type"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si está presente.
sc-bytes network.received_bytes Se asignan directamente. Se convirtió en un número entero sin signo.
sc-content-len additional.fields[].key: "sc-content-len"
additional.fields[].value.string_value: Se asigna directamente.
Se asigna de forma condicional si está presente.
sc-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: Se asigna directamente.
Se asigna de forma condicional si está presente.
sc-status network.http.response_code Se asignan directamente. Se convirtió en número entero.
ssl-cipher network.tls.cipher Se asignan directamente.
ssl-protocol network.tls.version Se asignan directamente.
timestamp metadata.event_timestamp Se analizan y se asignan si están disponibles. Se admiten diferentes formatos.
ts metadata.event_timestamp Se analizan y se asignan si están disponibles. Se espera el formato ISO8601.
url target.url Se asignan directamente.
url_back_to_product metadata.url_back_to_product Se asignan directamente.
x-edge-detailed-result-type additional.fields[].key: "x-edge-detailed-result-type"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si está presente.
x-edge-location additional.fields[].key: "x-edge-location"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si está presente.
x-edge-request-id additional.fields[].key: "x-edge-request-id"
additional.fields[].value.string_value: Se asigna directamente.
Se asigna de forma condicional si está presente.
x-edge-response-result-type additional.fields[].key: "x-edge-response-result-type"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si está presente.
x-edge-result-type additional.fields[].key: "x-edge-result-type"
additional.fields[].value.string_value: Se asignan directamente.
Se asigna de forma condicional si está presente.
x-forwarded-for target.ip, target.asset.ip Se asignan directamente. Si hay varias IP (separadas por comas), se dividen y se combinan en los campos de la AUA correspondientes.
x-host-header target.hostname, target.asset.hostname Se asignan directamente. Se establece en "NETWORK_HTTP" si ip o x-forwarded-for y http_verb están presentes. De lo contrario, configúralo como "GENERIC_EVENT". Está codificado de forma fija en "AWS_CLOUDFRONT". Está codificado de forma fija en "AWS CloudFront". Está codificado de forma fija en “AMAZON”. Es la hora de transferencia de la entrada de registro a Google Security Operations.