domingo, 6 de noviembre de 2016

5 pasos para mejorar la seguridad de aplicaciones en la nube

Cuando usted mueve sus aplicaciones hacia la nube, su superficie de ataque cambia, mientras que las vulnerabilidades en las aplicaciones, bases de datos y a nivel de red persisten. Para abordar estas cuestiones, brindar seguridad a su perímetro de nube, evitar el acceso no autorizado, y proteger sus datos es crucial.
El primer paso para reducir la superficie de ataque es ejecutar un análisis de puertos específicos de una instancia IP y bloquear todos los puertos abiertos no necesarios. Además, debe asegurarse de bloquear sus datos meta y de usuario. Nuestro equipo le brinda detalles sobre cómo realizar estas medidas de seguridad en AWS.
Vamos a profundizar un poco más en impedir el acceso no autorizado a sus servidores de nube, en particular, en Amazon Web Services (AWS). Al emplear Identity and Access Management (IAM), puede crear y gestionar usuarios y grupos de AWS, y utilizar permisos para permitir y denegar su acceso a AWS. Aquí están 5 de las mejores prácticas para la configuración de un Identity and Access Management seguro en AWS:
Nunca Utilice la Cuenta Raíz
La cuenta raíz es la cuenta utilizada al registrarse en AWS. Es similar a una cuenta de super-usuario y tiene libre acceso a todos los servicios y recursos de AWS. Por lo tanto, nunca comparta las credenciales de la cuenta raíz con nadie. En su lugar, cree un grupo de administración para agregar usuarios que necesiten tener privilegios de nivel de administrador para las actividades cotidianas.
Gestión de Claves de Acceso
Para acceder a la AWS Application Programming Interface (API) y realizar una solicitud correcta, los usuarios requieren dos conjuntos de claves. Estas claves se utilizan para determinar si los recursos solicitados son permitidos, y quién está realizando una solicitud. Además, se usan para firmar las solicitudes. No se recomienda utilizar claves de acceso para la cuenta raíz.
Como alternativa, utilice un nombre de usuario y una contraseña para iniciar sesión en la consola AWS con autenticación de factores múltiples habilitada. Asegúrese que las claves de acceso para la cuenta raíz sean deshabilitadas o eliminadas. Si existe un requisito de negocios para utilizar claves de acceso a la cuenta raíz, mantenga una rotación de claves periódicamente.
Es muy común codificar manualmente claves para el código y meterlas a repositorios públicos. Esto le permite a cualquiera acceder a cuentas y generar más instancias de EC2. Los atacantes suelen analizar repositorios públicos como GitHub y SourceForge para robar información confidencial. Para evitar la exposición de claves, siga estos pasos:
  • No codifique manualmente claves de acceso directamente en el código. También puede colocar las claves en lugares específicos (por ejemplo, archivo de credenciales AWS) que están siendo accedido por AWS SDKs o AWS CLI.
  • Configure variables de entorno que puedan ser accedidas por SDKs o CLI.
  • Utilice claves de acceso separadas para diferentes aplicaciones. Esto puede aislar los permisos utilizados por una aplicación y le permitirá revocar esos permisos sin afectar a otras aplicaciones en el caso de claves puestas en riesgo.
  • Rote las claves de acceso periódicamente; probablemente cada 3 a 6 meses.
  • Automatice la remoción de claves que no sean utilizadas por 90 días o más.

Conceda Permisos Empelando Roles IAM
Los roles IAM son diferentes de los usuarios y grupos IAM. Los usuarios y grupos IAM se gestionan dentro de la misma cuenta, mientras que los roles se utilizan para proporcionar acceso delegado a los recursos. Los roles proporcionan un control estricto sobre las identidades y la rotación de las claves. El acceso a los recursos de las aplicaciones móviles siempre debe hacerse a través de los roles IAM. Esto ayuda a implementar el principio de mínimo privilegio.

Habilite Autenticación de Múltiples Factores
Autenticación de Múltiples Factores (MFA) es el proceso de verificar la identidad de un usuario en más de un método que sean independientes. AWS brinda soporte a MFA y recomendamos ampliamente habilitar MFA para todas las cuentas de AWS.
El hardware MFA debería estar activado para la cuenta raíz que reduce la superficie de ataque frente a un MFA virtual. En general, el MFA virtual o SMS sufre la superficie de ataque móvil o de tablet en la que reside el MFA virtual. Siga los pasos a continuación para activar MFA para cuentas AWS:
  1. Inicie sesión en la consola IAM.
  2. Elija Activate MFA en su cuenta bajo Dashboard > Security Status.
  3. Haga clic en el botón Manage MFA y seleccione una MFA virtual o un dispositivo de hardware MFA dispositivo (como se muestra en la figura siguiente) luego de verificar las aplicaciones compatibles con AWS-MFA.
  4. Continúe con el paso siguiente para activar el dispositivo MFA seleccionado en el paso anterior.
 mfadevice
Haga Cumplir una Política Robusta de Contraseñas
Las cuentas de usuario IAM deben hacer cumplir políticas de contraseñas robustas similares a las aplicaciones tradicionales. La política de contraseña debe ser como la siguiente (CIS AWS benchmark):
  • Longitud mínima de contraseña 14 o superior.
  • Las contraseñas deben caducar en un plazo de 90 días o menos.
  • Las contraseñas deben contener al menos una letra mayúscula, una letra minúscula, un número y un carácter especial.
  • El número de contraseñas que recordar debería estar configurado para restringir la reutilización de contraseñas.
Además, configure la preguntas de verificación para cuentas AWS. Esto es útil para propósitos de identificación cuando se ponga en contacto con el servicio de atención al cliente. Para configurar las preguntas de seguridad, siga estos pasos después del inicio de sesión:
Account Name (top right) > My Account > Configure Security Challenge Questions

Informe de Credenciales
El informe de credenciales proporciona una instantánea de todos los detalles de la cuenta de los usuarios, tales como Amazon Resource Name (ARN), cuenta utilizada por última vez, última modificación de contraseña, próxima fecha de rotación, etc. Estos informes son útiles para fines de auditoría y conformidad. Además, esto es útil para suprimir las cuentas no utilizadas.
La aplicación de unas cuantas salvaguardias tales como nunca compartir las claves/credenciales, implementación de roles de acceso menos privilegiados, y hacer cumplir la MFA, ayudará a brindar seguridad al acceso de sus datos en la nube.