Aspectos básicos de la seguridad

GUÍA DE INTRODUCCIÓN

Introducción

Proteger su cuenta y recursos en la nube puede ser una tarea abrumadora. Las prácticas de seguridad se deben reevaluar y ajustar constantemente a medida que los agentes malintencionados sigan desarrollando sus técnicas. Esta guía le proporciona las tareas esenciales que puede llevar a cabo desde el primer día de su traspaso a la nube. Las siguientes prácticas se consideran esenciales para la postura de seguridad de una organización, pero de ninguna manera son definitivas ni garantizan la protección. Aplique estas prácticas como parte de su diligencia debida continua en torno a la seguridad en la nube. Para cada una de las siguientes áreas, proporcionamos enlaces adicionales que profundizan en cada tema.

  • ¿Qué es la seguridad en la nube? Al igual que la seguridad tradicional que se encuentra en las redes locales, la seguridad en la nube implica la práctica de crear una infraestructura segura, de alto rendimiento, resiliente y eficiente para sus aplicaciones. La seguridad en la nube implica la implementación de controles diseñados para evitar el acceso no autorizado, así como controles para detectar, responder y corregir si es necesario. La seguridad en la nube puede incluir una combinación de seguridad de redes e infraestructuras, seguridad de host y puntos de conexión, protección de datos y cifrado, gestión de identidades, seguridad de aplicaciones y registro, supervisión y detección de amenazas. La seguridad en la nube no es una única cosa, sino más bien una práctica que utiliza herramientas y técnicas para proteger los datos, los recursos y los procesos de una organización.

  • Los asuntos relacionados con la seguridad y la conformidad son una responsabilidad compartida entre AWS y el cliente. Al seguir este modelo compartido, los clientes pueden reducir la carga operativa, ya que AWS asume la responsabilidad de operar, administrar y controlar los componentes “de la nube”. Esto permite a los clientes centrarse en crear sus aplicaciones e implementar sus servicios, al tiempo que asumen la responsabilidad de proteger esos servicios “en la nube”. Infórmese sobre el Modelo de responsabilidad compartida.

  • Al crear por primera vez una nueva cuenta de AWS, se recomiendan varios pasos para administrarla y acceder a ella de forma segura.

    Usuario raíz

    Cuando crea una cuenta de AWS, comienza con lo que se conoce como usuario raíz. Este es el primer usuario de AWS que existe en su cuenta de AWS. AWS recomienda que no utilice esta cuenta para las operaciones diarias, ya que tiene acceso y control totales de la cuenta, y debe seguir las prácticas recomendadas para proteger al usuario raíz. Esto implica bloquear las claves de acceso del usuario raíz, usar una contraseña segura, habilitar la autenticación multifactor de AWS y crear un usuario de IAM para acceder a su cuenta. A esta cuenta se le pueden asignar privilegios de administrador y se debe usar para todas las tareas administrativas futuras.

    Contactos de seguridad

    A continuación, debe asignar contactos de seguridad alternativos a su cuenta. El contacto de seguridad alternativo recibirá notificaciones relacionadas con la seguridad, incluidas las del Equipo de confianza y seguridad de AWS. Puede obtener más información sobre la importancia de configurar esta información de contacto al principio de la configuración de su cuenta en la entrada del blog Actualice el contacto de seguridad alternativo en sus cuentas de AWS para recibir notificaciones de seguridad oportunas.

    Control regional

    Una vez que haya confirmado sus contactos de seguridad, debería considerar las regiones de AWS en las que deberían ejecutarse sus cargas de trabajo y las regiones en las que no deberían ejecutarse. A continuación, puede bloquear las regiones no utilizadas para garantizar que no se puedan ejecutar cargas de trabajo desde esas regiones. Si bien esto ayuda a la optimización de los costos, también contribuye a la seguridad. ¿Cómo es posible? Al bloquear las regiones en las que no espera ejecutar cargas de trabajo, puede centrar sus esfuerzos de supervisión en las regiones que utiliza activamente.

    Acceso a la consola y a la CLI de AWS

    En este punto, protegió al usuario raíz, creó uno o más usuarios de IAM, asignó contactos de seguridad y bloqueó las regiones en las que se pueden ejecutar las cargas de trabajo. A continuación, consideremos cómo interactuarán los usuarios con los recursos de AWS. Hay dos métodos principales de interacción: la CLI de AWS y la Consola de administración de AWS. Se recomienda configurar el inicio de sesión único para la CLI de AWS y la consola. Consulte el artículo Configuración de la CLI de AWS para usar AWS IAM Identity Center (sucesor de AWS Single Sign-On) para obtener información detallada sobre cómo administrar el acceso de forma centralizada con AWS IAM Identity Center.

    Grupos de IAM

    El siguiente paso para proteger su cuenta es configurar grupos de usuarios de AWS IAM para controlar el acceso. En lugar de controlar el acceso de los usuarios individuales estableciendo políticas directamente sobre el usuario, es mejor crear un grupo, asignarle los permisos necesarios y, a continuación, asignar los usuarios al grupo. Los usuarios heredarán los permisos de ese grupo. Esto ofrece una forma más escalable de proporcionar control de acceso a muchos usuarios. Es importante entender la IAM y los grupos de IAM porque abarcan varios servicios. IAM es un servicio que interactúa hasta cierto punto con todos los servicios de AWS, así que asegúrese de dedicar tiempo a familiarizarse con IAM.

    Seguir estas prácticas desde el principio lo ayudará a proporcionar un acceso seguro a sus recursos de AWS. A continuación, analizaremos cómo proteger la infraestructura que crea en AWS.

  • La infraestructura que se crea a menudo se pasa por alto, ya que forma parte de la arquitectura subyacente y no es algo que esté orientado al cliente. Sin embargo, si la infraestructura falla, los servicios que proporciona a sus clientes fallan. Por esta razón, es imperativo que la infraestructura esté protegida desde el primer día.

    Seguridad de Amazon VPC

    A medida que desarrolla su infraestructura de nube, empezará por crear una Amazon Virtual Private Cloud (Amazon VPC). Se trata de una red virtual que usted define (se crea una red predeterminada en cada región al crear su cuenta) que le permite lanzar recursos. Una VPC se parece a una red tradicional, ya que tiene asignado un rango de direcciones IP CIDR y se subdivide mediante la creación de subredes. Las subredes se pueden usar para proporcionar aislamiento a diferentes conjuntos de recursos. Las subredes pueden ser públicas o privadas. Las subredes públicas tienen una ruta a una puerta de enlace de Internet, tienen acceso a Internet a través de esta puerta de enlace y se puede acceder a ellas desde Internet si los controles de acceso pertinentes lo permiten. Las subredes privadas también tienen una tabla de enrutamiento, pero no tienen una ruta a una puerta de enlace de Internet, por lo que, de forma predeterminada, no pueden acceder a Internet ni se puede acceder a ellas desde Internet. Para permitir que los recursos de una subred privada accedan a Internet, se necesita una puerta de enlace NAT. En el nivel de subred, una lista de control de acceso (ACL) a la red permite o rechaza tráfico entrante o saliente específico. Puede usar la ACL de red predeterminada para su VPC o puede crear una ACL de red personalizada para su VPC. Las ACL de red son listas numeradas, se procesan de arriba a abajo y no tienen estado. Esto significa que necesitará una regla de ACL de red entrante y saliente para permitir el tráfico bidireccional.

    Grupos de seguridad

    A medida que implemente los recursos de EC2 en su VPC, asociará un grupo de seguridad a ellos. Un grupo de seguridad controla el tráfico entrante y saliente que puede llegar a los recursos de EC2. Los grupos de seguridad son similares a un firewall, pero en lugar de usar solo una lista o un rango de direcciones IP, pueden apuntar a algo denominado referencia de recursos. Una referencia de recursos es un grupo con nombre que mantiene una lista actualizada de las direcciones IP asignadas a cada recurso del grupo. Por ejemplo, si crea un grupo de escalado automático para activar las instancias de Amazon EC2, a cada instancia se le asigna una nueva IP cuando se inicia. Al añadir un grupo de seguridad a estas instancias, puede conceder acceso al grupo de seguridad del servidor de base de datos mediante el ID del grupo de seguridad de las instancias de EC2, y cualquier instancia de EC2 nueva que se lance tendrá acceso a la base de datos sin necesidad de añadir su dirección IP a la lista de permitidos.

    Las reglas de los grupos de seguridad son similares a las ACL de red porque, al crearlas, coinciden en el puerto, el protocolo y las direcciones, pero tienen estado; puede pensar que son similares a un firewall con estado. Al crear una entrada para permitir un tipo específico de tráfico, no es necesario crear una regla que coincida con el tráfico de retorno; si tiene estado, se permitirá el tráfico de retorno. Para entender mejor cómo interactúan los grupos de seguridad y las ACL, esta comparación es útil.

    AWS Network Firewall y protección contra DDoS

    Para añadir una capa adicional de seguridad a la infraestructura, puede implementar el AWS Network Firewall. El Network Firewall es un servicio gestionado que implementa la protección de su Amazon VPC. Ofrece una protección más detallada que los grupos de seguridad, ya que puede incorporar el contexto de los flujos de tráfico, como el seguimiento de conexiones y la identificación de protocolos, para aplicar políticas como la de impedir que sus VPC accedan a dominios utilizando un protocolo no autorizado. Esto se hace mediante la configuración de reglas de Suricata personalizadas. Por ejemplo, puede configurar el Network Firewall para protegerse contra los ataques de malware. Si va un paso más allá, puede implementar otro servicio gestionado, AWS Shield Avanzado, para protegerse contra las amenazas de DDoS.

  • Al crear recursos en la nube de AWS, debe considerar cómo protegerlos según las prácticas recomendadas actuales. Esto es cierto si implementa una instancia de EC2, una base de datos o recursos sin servidor. En esta sección, proporcionaremos algunos pasos esenciales para proteger los recursos que cree.

    Seguridad de Amazon EC2

    Al crear recursos en AWS, debe tener cuidado de seguir las prácticas recomendadas de seguridad para el tipo de recurso con el que esté trabajando. En el caso de las instancias de EC2, la seguridad comienza por controlar el acceso a la red a las instancias, por ejemplo, mediante la configuración de la VPC y los grupos de seguridad. (Para obtener más información, consulte “Seguridad de Amazon VPC” en la sección “Proteger la infraestructura que crea”).

    Otro aspecto de la seguridad de las instancias es la gestión de las credenciales utilizadas para conectarse a las instancias. Esto comienza con los permisos de usuario de IAM que asigne, pero se extiende al grupo asignado. Esto proporciona un nivel de seguridad para el usuario que trabaja con la instancia de EC2, pero no para la instancia en sí. También debe configurar los roles de IAM asociados a la instancia y los permisos asociados a esos roles. Para acceder a una instancia de EC2, en lugar de abrir el puerto para SSH o configurar un host bastion/jump, debe usar EC2 Instance Connect.

    Debe asegurarse de que el sistema operativo invitado y el software implementados en la instancia estén al día con las actualizaciones y los parches de seguridad del sistema operativo. Para obtener más información, visite Seguridad en Amazon EC2.

    Seguridad de bases de datos

    Proteger la base de datos es un aspecto importante de su enfoque de seguridad. Como se menciona en la sección de seguridad de Amazon VPC, se recomienda implementar bases de datos en una subred privada para evitar el acceso de terceros a través de Internet. AWS ofrece 15 bases de datos personalizadas. Cada una está protegida de manera diferente, pero todas comparten lo siguiente en común.

    Autenticación

    Para acceder a una base de datos, se requiere algún tipo de autenticación. Esto puede adoptar la forma de un nombre de usuario y una contraseña, que deben renovarse periódicamente. También puede utilizar Amazon RDS Proxy para aprovechar los roles de IAM y gestionar el acceso a la base de datos por usted. Algunos de los servicios de bases de datos, como Amazon DynamoDB, utilizan roles de IAM para proporcionar acceso, por lo que no es necesario que administre ninguna credencial usted mismo.

    Acceso SSH basado en consola

    SSH es uno de los métodos más comunes para administrar las instancias de EC2 y Amazon EC2 Instance Connect le permite usar SSH para conectarse a las instancias de EC2 mediante claves SSH de un solo uso directamente en la consola. En los siguientes artículos se explica cómo habilitar Amazon EC2 Instance Connect y se explica el caso de uso típico. También puede generar claves SSH al crear su instancia de EC2, descargarlas localmente y usarlas para conectarse a su instancia. Sin embargo, esto significa que debe proteger esas claves, asegurarse de que estén almacenadas en algún lugar al que no perderá el acceso y que solo puede conectarse a su instancia desde una máquina que tenga esas claves descargadas. EC2 Instance Connect proporciona el mismo acceso SSH, de forma segura, desde la consola, en todas las máquinas, de una manera fácil de usar.

    Permisos mínimos

    Restringir el acceso a la base de datos solo a los servicios e infraestructuras que requieren acceso es una práctica recomendada. Esto se puede hacer configurando grupos de seguridad para las instancias de RDS, las bases de datos de Amazon Neptune o los clústeres de Amazon Redshift.

    Realizar copias de seguridad y probar restauraciones

    Hacer copias de seguridad de los datos y realizar restauraciones frecuentes para confirmar que las copias de seguridad funcionan correctamente debe ser una prioridad. Con AWS Backup, puede configurar y administrar fácilmente las copias de seguridad de servicios de AWS específicos, incluidos Amazon RDS, DynamoDB, Neptune y más.

    Seguridad sin servidor

    Para la seguridad sin servidor, debe estar familiarizado con AWS Lambda, Amazon API Gateway, Amazon DynamoDB, Amazon SQS e IAM. Con la seguridad sin servidor, AWS asume una mayor responsabilidad en comparación con el modelo de responsabilidad compartida, pero sigue existiendo una responsabilidad del cliente que debe tener en cuenta. En un entorno sin servidor, AWS administra la infraestructura, la computación, el entorno de ejecución y el lenguaje de ejecución. El cliente es responsable de las bibliotecas y códigos de funciones del cliente, de la configuración de recursos y de la gestión de la identidad y el acceso, como se muestra en la siguiente imagen.
    En las siguientes secciones, proporcionamos detalles sobre las prácticas de seguridad que son responsabilidad del cliente. Para obtener más información, consulte Seguridad en AWS Lambda.
    Bibliotecas y códigos de funciones del cliente
    AWS Lambda proporciona tiempos de ejecución que ejecutan el código de su función en un entorno de ejecución basado en Amazon Linux. Sin embargo, si usa bibliotecas adicionales con su función, es responsable de actualizarlas. Asegurarse de que sus bibliotecas estén actualizadas puede ayudarle a mantener su postura de seguridad.
    Configuración de recursos
    AWS Lambda se integra con varios recursos de AWS, como Amazon DynamoDB, Amazon EventBridge y Amazon Simple Notification Service (Amazon SNS). Seguir las prácticas de seguridad recomendadas para cada servicio que utilice como parte de su función le ayudará a reforzar su postura de seguridad. La documentación de cada servicio proporciona orientación adicional.
    Administración de identidades y accesos
    La ejecución de las funciones de Lambda puede requerir permisos y funciones de IAM específicos. Encontrará más información en la sección Permisos de la Guía para desarrolladores de AWS Lambda.
    Inventario y configuración
    Su estrategia de seguridad también debe incluir la supervisión, el registro y la gestión de la configuración. Por ejemplo, muchas organizaciones habilitan la contabilidad de sus dispositivos mediante el protocolo TACACS+, RADIUS o los registros de Active Directory. Esto ayuda a garantizar que se cree una pista de auditoría para todas las actividades administrativas. Dentro de la nube de AWS, esto se puede hacer con AWS CloudTrail. CloudTrail permite la auditoría, el monitoreo de la seguridad y la solución de problemas operativos a partir del seguimiento de la actividad del usuario y el uso de la API. El repositorio de aplicaciones sin servidor de AWS, que facilita a los desarrolladores y las empresas la búsqueda, implementación y publicación rápidas de aplicaciones sin servidor en la nube de AWS, está integrado con AWS CloudTrail. Para obtener más información, consulte la Guía para desarrolladores del Repositorio de aplicaciones sin servidor de AWS.
     
    Aún tendrá que proporcionar protección contra DoS y la infraestructura hasta cierto punto para sus entornos sin servidor, lo que puede hacer con AWS Shield y AWS Shield Avanzado. La supervisión y la detección de amenazas se analizan con más detalle en la sección “Monitorización de su entorno”.
  • Los clientes almacenan una gran cantidad de datos en la nube de AWS. Estos datos contienen información que es fundamental para el funcionamiento de una organización. Incluyen datos de clientes, propiedad intelectual, pedidos vinculados directamente a los ingresos y más. En esta sección, compartimos información básica sobre cómo configurar los datos que se almacenan en AWS, así como los datos que se transfieren a través de la red hacia y desde AWS.

    Seguridad de Amazon S3

    En AWS, los datos se almacenan en Amazon S3, que tiene varios controles para proteger los datos. En el artículo Las 10 mejores prácticas de seguridad para proteger los datos en Amazon S3 se describen las técnicas más fundamentales. Estas incluyen el bloqueo de los buckets de S3 públicos a nivel de la organización, el uso de políticas de buckets para verificar que todos los accesos otorgados estén restringidos y sean específicos, y el cifrado y la protección de los datos.

    Cifrado de datos en reposo

    Para el cifrado, AWS Key Management Service (AWS KMS) le permite crear y controlar las claves que se utilizan para cifrar o firmar sus datos de forma digital. Si desea cifrar sus datos en AWS, tiene varias opciones. La primera consiste en utilizar un cifrado del servidor con claves de cifrado administradas por Amazon S3 (SSE-S3). Con este método, el cifrado se produce después de que los datos se envíen a AWS mediante claves administradas por AWS.

    La segunda opción es cifrar los datos una vez que estén en AWS, pero en lugar de utilizar claves creadas y administradas por AWS, puede realizar el cifrado del lado del servidor con claves maestras de cliente (CMK) que se almacenan en AWS KMS (SSE-KMS).

    La tercera opción para almacenar datos cifrados en AWS es utilizar el cifrado del cliente. Con este enfoque, los datos se cifran antes de transferirlos a AWS.

    En la siguiente imagen se puede ver un ejemplo de cómo el cifrado del cliente y el cifrado del servidor benefician a los clientes.

    Redes privadas virtuales (VPN)

    Las VPN pueden abarcar varias tecnologías. La idea detrás de una VPN es que sus datos en tránsito mantengan su integridad y puedan intercambiarse de forma segura entre dos partes. AWS ofrece varias tecnologías que ayudan a proteger los datos en tránsito. Una de ellas es AWS PrivateLink, que proporciona conectividad privada y cifrada entre las VPC, los servicios de AWS y sus redes locales. Esto se hace sin exponer su tráfico a la Internet pública. Esto también podría considerarse una red privada virtual.

    Sin embargo, en la mayoría de los casos, una discusión sobre la VPN gira en torno al uso del cifrado de datos. En función de las circunstancias, es posible que deba proporcionar un cifrado entre un cliente y sus recursos en la nube de AWS. Esta situación requeriría AWS Client VPN. Por otro lado, es posible que esté transfiriendo datos entre su centro de datos o sucursal y sus recursos de AWS. Puede lograrlo mediante túneles IPsec entre sus recursos locales y sus Amazon VPC o AWS Transit Gateway. Esta conectividad segura se conoce como VPN de sitio a sitio.

    Por último, la gestión de los recursos de la nube mediante la Consola de administración de AWS también ofrece datos cifrados en tránsito. Si bien normalmente no se referiría a la conectividad con la consola como una VPN, su sesión utiliza el cifrado TLS (Transport Layer Security). Por lo tanto, sus configuraciones se mantienen confidenciales a medida que crea su arquitectura segura. TLS también se usa con la API de AWS.

  • Con cada uno de los aspectos anteriores protegidos, es esencial que supervise lo que sucede en su entorno. Esto ayudará a identificar las amenazas y ofrecerá la posibilidad de mitigarlas de forma proactiva.

    Visibilidad de los flujos de tráfico

    AWS ofrece varios servicios gestionados para ayudar a monitorear su entorno, junto con opciones de autoservicio. Por ejemplo, puede usar los registros de flujo de VPC para registrar y ver los flujos de tráfico de la red, o puede usar Amazon CloudWatch para analizar los registros de AWS WAF o incluso para crear alarmas para las instancias de EC2. Puede obtener más información sobre Amazon CloudWatch en este taller.

    Visibilidad de la actividad de la cuenta

    Además, AWS CloudTrail monitoriza y registra la actividad de la cuenta en toda la infraestructura de AWS, lo que le permite controlar las acciones de almacenamiento, análisis y reparación. Esto es esencial para crear un registro de auditoría administrativa, identificar los incidentes de seguridad y solucionar problemas operativos.

    Detección de amenazas

    Por último, Amazon GuardDuty se puede utilizar para la detección de amenazas e incluso para ir un paso más allá al hacer que los resultados publicados inicien acciones de corrección automática en su entorno de AWS.

    Al abordar cada una de estas áreas operativas, estará bien encaminado para establecer las funciones de seguridad esenciales para su entorno de nube.

¿Le resultó útil esta página?