Recoger registros de AWS Route 53
En este documento se explica cómo configurar AWS CloudTrail para almacenar los registros DNS de AWS Route 53 en un contenedor de S3 e ingerir los registros de S3 en Google Security Operations. Amazon Route 53 ofrece registro de consultas de DNS y la posibilidad de monitorizar sus recursos mediante comprobaciones de estado. Route 53 está integrado con AWS CloudTrail, un servicio que proporciona un registro de las acciones realizadas por un usuario, un rol o un servicio de AWS en Route 53.
Antes de empezar
Asegúrate de que cumples los siguientes requisitos previos:
- Instancia de Google SecOps
- Acceso privilegiado a AWS
Cómo configurar AWS CloudTrail y Route 53
- Inicia sesión en la consola de AWS.
- Busca Cloudtrail.
- Si aún no tienes un recorrido, haz clic en Crear recorrido.
- Proporciona un nombre de ruta .
- Seleccione Create new S3 bucket (Crear nuevo contenedor de S3). También puede usar un contenedor de S3 que ya tenga.
- Proporciona un nombre para el alias de KMS de AWS o elige una clave de KMS de AWS.
- Deje el resto de los ajustes como están y haga clic en Siguiente.
- Seleccione Tipo de evento y asegúrese de que esté seleccionada la opción Eventos de gestión (estos son los eventos que incluirán las llamadas a la API de Route 53).
- Haz clic en Siguiente.
- Revisa los ajustes en Revisar y crear.
- Haz clic en Crear recorrido.
- En la consola de AWS, busca S3.
- Haz clic en el segmento de registro que acabas de crear y selecciona la carpeta AWSLogs .
- Haz clic en Copiar URI de S3 y guárdalo.
Configurar un usuario de gestión de identidades y accesos de AWS
- En la consola de AWS, busca IAM.
- Haz clic en Usuarios.
- Haz clic en Añadir usuarios.
- Proporciona un nombre para el usuario (por ejemplo, chronicle-feed-user).
- Seleccione Clave de acceso - Acceso programático como tipo de credencial de AWS.
- Haz clic en Siguiente: Permisos.
- Seleccione Adjuntar políticas directamente.
- Selecciona AmazonS3ReadOnlyAccess o AmazonS3FullAccess.
- Haz clic en Siguiente: Etiquetas.
- Opcional: añade las etiquetas que quieras.
- Haz clic en Siguiente: Revisar.
- Revisa la configuración y haz clic en Crear usuario.
- Copia el ID de clave de acceso y la clave de acceso secreta del usuario creado.
Configurar feeds
Hay dos puntos de entrada diferentes para configurar feeds en la plataforma Google SecOps:
- Configuración de SIEM > Feeds > Añadir nuevo
- Centro de contenido > Paquetes de contenido > Empezar
Cómo configurar el feed de DNS de AWS Route 53
- Haz clic en el paquete Amazon Cloud Platform.
- Busca el tipo de registro DNS de AWS Route 53.
Especifique los valores en los campos siguientes.
- Tipo de fuente: Amazon SQS V2
- Nombre de la cola: el nombre de la cola de SQS de la que se va a leer.
- URI de S3: el URI del segmento.
s3://your-log-bucket-name/
- Sustituye
your-log-bucket-name
por el nombre real de tu segmento de S3.
- Sustituye
Opciones de eliminación de la fuente: selecciona la opción de eliminación que prefieras según tus preferencias de ingesta.
Antigüedad máxima del archivo: incluye los archivos modificados en los últimos días. El valor predeterminado es de 180 días.
ID de clave de acceso a la cola de SQS: una clave de acceso de cuenta que es una cadena alfanumérica de 20 caracteres.
Clave de acceso secreta de la cola de SQS: una clave de acceso de cuenta que es una cadena alfanumérica de 40 caracteres.
Opciones avanzadas
- Nombre del feed: valor rellenado automáticamente que identifica el feed.
- Espacio de nombres del recurso: espacio de nombres asociado al feed.
- Etiquetas de ingestión: etiquetas aplicadas a todos los eventos de este feed.
Haga clic en Crear feed.
Para obtener más información sobre cómo configurar varios feeds para diferentes tipos de registros en esta familia de productos, consulta el artículo Configurar feeds por producto.
Tabla de asignación de UDM
Campo de registro | Asignación de UDM | Lógica |
---|---|---|
account_id | read_only_udm.principal.resource.product_object_id | ID de cuenta de AWS asociado a la consulta. |
firewall_domain_list_id | read_only_udm.security_result.rule_labels.value | El ID de la lista de dominios a la que pertenece el dominio de la consulta. |
firewall_rule_action | read_only_udm.security_result.action | Acción realizada por la regla de cortafuegos que coincide con la consulta. Los valores posibles son "ALLOW", "BLOCK" o "UNKNOWN_ACTION" si la acción no se reconoce. |
firewall_rule_group_id | read_only_udm.security_result.rule_id | ID del grupo de reglas de firewall que coincide con la consulta. |
logEvents{}.id | read_only_udm.principal.resource.product_object_id | ID único del evento de registro. Se usa como alternativa si no se incluye "account_id". |
logEvents{}.message | Este campo se analiza en otros campos UDM en función de su formato. | |
logEvents{}.timestamp | read_only_udm.metadata.event_timestamp.seconds | La hora en la que se registró la consulta de DNS. |
messageType | Este campo se usa para determinar la estructura del mensaje de registro. | |
propietario | read_only_udm.principal.user.userid | El ID de cuenta de AWS del propietario del registro. |
query_class | read_only_udm.network.dns.questions.class | La clase de la consulta de DNS. |
query_name | read_only_udm.network.dns.questions.name | El nombre de dominio que se ha consultado. |
query_timestamp | read_only_udm.metadata.event_timestamp.seconds | Hora en la que se hizo la consulta de DNS. |
query_type | read_only_udm.metadata.product_event_type | El tipo de consulta de DNS. |
rcode | read_only_udm.metadata.description | El código de respuesta de la consulta de DNS. |
región | read_only_udm.principal.location.name | Región de AWS en la que se ha originado la consulta. |
srcaddr | read_only_udm.principal.ip | La dirección IP del cliente que ha hecho la consulta de DNS. |
srcids.instance | read_only_udm.principal.hostname | El ID de instancia del cliente que ha realizado la consulta de DNS. |
srcids.resolver_endpoint | read_only_udm.security_result.rule_labels.value | ID del endpoint del resolver que ha gestionado la consulta. |
srcids.resolver_network_interface | read_only_udm.security_result.rule_labels.value | ID de la interfaz de red del resolvedor que ha gestionado la consulta. |
srcport | read_only_udm.principal.port | Número de puerto del cliente que ha realizado la consulta de DNS. |
transporte | read_only_udm.network.ip_protocol | Protocolo de transporte utilizado para la consulta de DNS. |
version | read_only_udm.metadata.product_version | La versión del formato de los registros de consultas de Route 53 Resolver. |
N/A | read_only_udm.metadata.event_type | Codificado como "NETWORK_DNS". |
N/A | read_only_udm.metadata.product_name | Codificado como "AWS Route 53". |
N/A | read_only_udm.metadata.vendor_name | Codificado como "AMAZON". |
N/A | read_only_udm.principal.cloud.environment | Codificado como "AMAZON_WEB_SERVICES". |
N/A | read_only_udm.network.application_protocol | Codificado como "DNS". |
N/A | read_only_udm.network.dns.response_code | Se asigna desde el campo "rcode" mediante una tabla de consulta. |
N/A | read_only_udm.network.dns.questions.type | Se asigna desde el campo "query_type" mediante una tabla de consulta. |
N/A | read_only_udm.metadata.product_deployment_id | Se extrae del campo "logevent.message_data" mediante un patrón grok. |
N/A | read_only_udm.network.dns.authority.name | Se extrae del campo "logevent.message_data" mediante un patrón grok. |
N/A | read_only_udm.security_result.rule_labels.key | Asigna el valor "firewall_domain_list_id", "resolver_endpoint" o "resolver_network_interface" en función de los campos disponibles. |
N/A | read_only_udm.security_result.action_details | Se asigna el valor de "firewall_rule_action" si no es "ALLOW" o "BLOCK". |
¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.