Implementando Seguridad con AWS Config y AWS Systems Manager

Avatar img
David Morán
DevSecOps Specialist @Kushki
agosto 03, 2021
Lectura de 2 minutos
Implementando Seguridad con AWS Config y AWS Systems Manager

Desde que estamos en pandemia, muchas empresas han cambiado totalmente su forma de pensar, optando por utilizar la tecnología como base para sus negocios, y al entender que no necesitan recursos físicos para crear o mejorar sus procesos, deciden implementar o migrar su infraestructura a la nube. Sin embargo, por ser un tema relativamente nuevo para algunos comercios, estos pueden cometer ciertos errores al momento de configurar sus sistemas y volverse vulnerables. Por esto, es fundamental que las empresas posean conocimientos de cómo asegurar sus sistemas implementados en la nube.

Existen varias empresas que proveen servicios en la nube como AWS, Microsoft Azure, Google Cloud, etc. Estas te brindan facilidades para que puedas crear tu infraestructura y reducir los costos de esta implementación. Al realizar este proceso tienes que ser consiente de la seguridad, ya que estas empresas solo te ofrecen servicios para implementarla en los sistemas informáticos y esto queda de nuestro lado. En Kushki utilizamos AWS, por lo que te hablaré sobre dos de los tantos servicios de seguridad que nos ofrecen: AWS Config y AWS Systems Manager.

AWS Config

Este servicio permite realizar auditoría y evaluación de todas las configuraciones de nuestros recursos en AWS. Además, permite visualizar cuándo se hacen o se hicieron cambios de cualquier componente en el “resource timeline” que es una característica utilizada para acceder al histórico desde la creación del componente hasta la fecha. Por otro lado, AWS Config nos provee una funcionalidad de revisión de la configuración en base a reglas. Estas son las AWS Config Rules, las cuales nos permiten generar la revisión de cumplimiento de un recurso y generar una acción con los resultados.

AWS Systems Manager

Es un servicio de AWS que centraliza la gestión de varios procesos para evaluar y resolver diferentes problemas operativos para todos tus recursos y aplicaciones dentro de la nube. Con este servicio se pueden mitigar errores de seguridad automáticamente en diferentes recursos como los EC2. En este caso vamos a utilizar una herramienta de AWS Systems Manager llamada AWS Systems Manager Documents, que nos servirá para realizar un proceso o acción automática al momento de mitigar un incumplimiento que detecte AWS Config.


A continuación te enseñaré a configurar tus sistemas, para mantenerlos seguros en la nube.

En primer lugar, se debe realizar la configuración de AWS Config para poder obtener los eventos de cambios de los security groups de EC2. Para realizar la configuración inicial puedes seguir esta guía de aws en donde podrás escuchar los cambios de los recursos que tu negocio necesita.

Vamos a empezar configurando una regla en AWS Config. Para los security groups vamos a utilizar una regla pre-establecida que evalúa si un grupo de seguridad tiene habilitado las reglas de entrada al puerto 22 (ssh) desde internet. Esta regla se llama restricted-ssh.

Creamos una nueva regla y seleccionamos las reglas manejadas por AWS en donde vamos a buscar nuestra regla restricted-ssh:

Cuadro AWS 1

Cuadro AWS 2

Dejamos la configuración por defecto validando que estén seleccionados los grupos de seguridad de EC2 en los recursos de AWS y en el siguiente paso damos clic en agregar regla:

Cuadro AWS 3

Cuadro AWS 4

Una vez creada la regla, asignamos una remediación manual (esta puede ser automática o manual), utilizando un documento para ejecutar la mitigación de restricted-ssh, estos documentos pueden ser customizados o puedes utilizar uno por defecto de AWS.

Para esta vulnerabilidad de ssh vamos a utilizar el documento llamado AWS-DisableIncomingSSHOnPort22 el cual automáticamente deshabilita las reglas de entrada en los grupos de seguridad por el puerto 22. En este caso necesitaremos crear un grupo de seguridad habilitando una regla de entrada en el puerto 22 que es el puerto para ssh.

Para realizar este paso, elegimos nuestra regla en AWS Config, damos clic en “Actions” y luego en “Manage remediation”, elegimos remediación manual, ya que queremos realizar la mitigación por nuestra cuenta para demostrar un recurso que no cumple y luego ver el cambio. En las acciones de remediación seleccionamos el nombre del documento de Systems Manager

Cuadro AWS 5

Para este caso en específico, existe un campo de parámetros que son requeridos los cuales se solicitan dependiendo de la remediación, por lo que vamos a agregar un valor obligatorio que es el o los grupos de seguridad a los cuales vamos a poder realizar dicha remediación.

Cuadro AWS 6

Hasta aquí ya tenemos todo listo, ahora veremos cómo funciona la remediación que configuramos para los grupos de seguridad.

Vamos a nuestra regla en AWS Config y veremos que existe un recurso que no cumple con la regla:

Cuadro AWS 7

Simplemente seleccionamos el recurso y damos clic en la opción “Remediate”.

Cuadro AWS 8

El estatus va a cambiar a "remediación encolada".

Cuadro AWS 9

Después de unos minutos podemos ver que la remediación se ha ejecutado con éxito y podemos validar en las reglas de nuestro grupo de seguridad que, en efecto, se haya eliminado la regla de entrada del puerto 22.

Cuadro AWS 10

Conclusión

Al utilizar AWS Config podemos realizar mitigaciones de vulnerabilidades de nuestros recursos en la nube. Aquí pudimos observar un ejemplo básico de cómo realizar la remediación automática por parte de AWS Systems Manager de forma manual, ya que nosotros elegimos a qué recurso aplicar la remediación.

Con AWS Config también puedes generar tus propias reglas, lo cual depende los requisitos de seguridad del negocio, junto con funciones Lambda para así poder validar cualquier cambio realizado en tus recursos y crear tus propios documentos en AWS Systems Manager para realizar la remediación a tu medida.

Sé el alma de la fiesta con la información más fresca sobre pagos digitales.

Suscríbete a nuestro Kushki Hub para recibir alertas de nuestro nuevo contenido.

Suscribe illustration
¿No sabes qué producto es el indicado para tu comercio?
¿El mundo de los pagos llama tu atención?

Más de nuestro Kushki Hub

Cultura de aprendizaje, un factor clave en el éxito de toda organización

Generar una cultura de aprendizaje dentro de una empresa es una estrategia que conlleva muchos retos para que el cumplimiento de esta no sea percibida como una obligación sino una motivación. Muchas empresas estamos pensando si es conveniente la formación del talento en casa o delegarle la responsabilidad al colaborador y un miedo común que se suele escuchar cuando se conversa con empresarios sobre este tema es: ¿Y si lo formamos y nuestro colaborador renuncia? Ante esta pregunta la respuesta es simple, si no das a un colaborador las herramientas necesarias para crecer esta persona las buscará y te dejará, sabemos que la competencia por talento en tecnología es arrasadora y no podemos quedarnos atrás por un miedo a perder el talento, en cambio podemos verlo desde una perspectiva en la que brindamos las herramientas y beneficios que harán que sientan el compromiso de la empresa con su actualización profesional y su bienestar como persona. Pero ¿Qué ventajas podemos tener si decidimos capacitar nuestro equipo? : Retención de talento Sabemos que todas las empresas tenemos personas que sobresalen por su agilidad para realizar sus tareas a tiempo y con calidad, estas personas son probablemente percibidas como líderes informales dentro de la organización y referentes técnicamente o por su liderazgo para un grupo de trabajo, perderlos es difícil y ningún empleador quisiera estar en esta posición entonces ¿qué hacemos? Dar visibilidad de crecimiento, premiar su esfuerzo por la empresa con certificaciones y darle acceso a recursos personalizados pueden ser un factor de cambio para que no abandonen una empresa. Procesos de crecimiento ligados a capacitación Los esfuerzo que se emprendan para desarrollar un plan de capacitación deben ser vistos como beneficio para crecer en un career path o mejorar desempeño dentro de la empresa, si nuestra estrategia va de lado de completar únicamente cursos con altas horas dedicadas posterior al trabajo del día a día sin poner en práctica lo aprendido o sin empatar las necesidades para cada puesto, probablemente será una reacción de emoción por los colaboradores a corto plazo, por eso el involucrar los líderes desde el día 1 en una ruta de aprendizaje es clave para comprender sus necesidades como departamento y brindar un acompañamiento personalizado, los colaboradores deben sentir que cada avance en su path está mejorando sus indicadores profesionales y le trae crecimiento y mejores resultados. Sentimiento de pertenencia Nuestros colaboradores percibirán que más allá de los resultados esperados para su trabajo, la empresa está interesada en su crecimiento profesional con planes a largo plazo y comprometidos con brindar todos los recursos necesarios para que sea un o una mejor profesional cada día. Mejora en indicadores de desempeño A medida que desarrollamos estrategias de aprendizaje dentro de una empresa los indicadores de desempeño se ven reflejados, por esto, seleccionar el contenido ideal para cada perfil es clave, por medio de educación podemos lograr una adaptación al rol en menor tiempo, evitar colaboradores frustrados, disminuir la curva de aprendizaje, etc. ¿Y en nuestra empresa cómo lo estamos logrando? En Kushki lo entendimos, sabemos que si queremos trabajar con los mejores implica apostar por ellos y ser parte de su crecimiento, por esto, el Departamento de Capacitación ha elaborado varias estrategias que comenzarán a brindar oportunidades de actualización profesional con herramientas en línea, compartir conocimiento entre equipos y certificar a cada colaborador que tenga interés en crecer y su desempeño sea alto. En un primer nivel hemos iniciado por el corazón de nuestra empresa y el más sensible de cara a nuestros clientes, el departamento de Ingeniería de Producto en el que tenemos 9 subdepartamentos que son dedicados en Infraestructura, UX/UI, Ingeniería, Quality Assurance, Análisis de Negocio, Agile Release, Performance, Soporte de Producto y Arquitectura. A medida que nos expandimos y aumentamos la calidad en nuestro producto sabemos la necesidad de que nuestro equipo esté entrenado con las últimas tendencias tecnológicas en metodologías, plataformas y habilidades blandas para brindar lo mejor de nosotros a nuestros clientes con una satisfacción de calidad en cada entrega. Estamos muy felices de compartir que el Jueves 15 de Julio hicimos el lanzamiento de una alianza con Udemy for Business que permitirá a nuestros colaboradores de Ingeniería de Producto un acceso a una plataforma con +4,000 cursos en idioma inglés y español con aprendizaje por medio de rutas de estudio guiadas desde el Departamento de Capacitación en las cuales contemplamos cursos de la misma plataforma, recursos gratuitos y material que generamos internamente como conocimiento de nuestros equipos. Además, complementario a esta oportunidad elaboramos un plan de certificación para cada una de las áreas de Ingeniería de Producto puedan certificar a +45 colaboradores durante estos 3 siguientes meses en AWS, ISTQB, CBAP y Design Thinking. En Kushki nos interesa contar con tu talento, constantemente estamos en búsqueda de personal para nuestros equipos de producto, por eso, te invitamos a pasar a nuestra sección kushki/jobs en Linkedin.
Avatar img
Crisly González
Gerente de Entrenamiento @Kushki
julio 27, 2021

¿Sabes cómo puedes automatizar los procesos de tu ecommerce con webhooks?

Antes que nada es importante saber a qué nos referimos cuando hablamos de un webhook; esto es una forma de enviar notificaciones automáticas de eventos ocurridos fuera de la plataforma principal del comercio, pero __¿cómo ayuda a automatizar los procesos? __ Es muy sencillo, los comercios operan desde una plataforma propia en la que tienen personal que opera con diferentes niveles de permiso, y que ejecutan acciones subsecuentes a la compra del cliente, ejemplo de esto podemos tener casos como: El equipo de almacén de una tienda de tenis que prepara los pedidos para envío en cuanto se concreta la compra del usuario. Los equipos administrativos de una escuela que pueden ver el estatus de pago de los alumnos. Las aerolíneas que entregan el pase de abordaje a los usuarios en cuanto el pago queda registrado. Y así podemos hablar de muchos otros modelos que necesitan tener actualizado en tiempo real el status de las transacciones dentro de su sistema administrativo. Para lograr lo anterior, la tecnología de Kushki provee Webhooks que permiten conectar ambas plataformas y tener actualizados los status. Con la actualización de status en tiempo real se evita la necesidad de tener a un encargado del equipo revisando el cambio de status dentro de la consola Kushki y permite que los flujos operativos se puedan hacer de manera automática, lo cual también reduce tiempos y posibilidad de errores humanos. Incluso la configuración del cambio de status es un evento que puede ejecutar el siguiente, por ejemplo, si un pago está en estado pendiente, y es aprobado, puede actualizarse automáticamente y pasar al estado de embalaje, envío de recibo o el paso que haya establecido el comercio. Para poner un ejemplo de cómo se utiliza esto, podemos pensar en que tenemos una aerolínea en donde uno de los clientes generó una referencia para hacer un pago en efectivo, la transacción no se termina en ese momento y queda como pendiente de pago dentro de la plataforma. Para evitar que el sistema de la aerolínea tenga que estar preguntando constantemente a la consola Kushki por el status de la transacción, se conecta un webhook que permite que sea Kushki quien avisa al comercio, en cuanto haya una modificación en el status del pago. Conoce aquí lo que se puede notificar con nuestros webhooks. Conoce las últimas actualizaciones en tecnología de webhooks que tenemos en Kushki. En tu modelo, ¿ya tienes implementadas las notificaciones via webhook?
Avatar img
Cristina Maldonado
Product Marketing Manager @Kushki
julio 21, 2021

CTO de Kushki y los desafíos del crecimiento acelerado: “la evolución nos ha llevado a ser especialistas”

<iframe width="560" height="315" src="https://www.youtube.com/embed/ChbpGFukKrA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> En un mundo y una industria que se mueve a toda velocidad, hay empresas obteniendo rápido crecimiento o rápido declive. La competencia abunda y muchos jefes y managers se sienten presionados a generar resultados a toda costa. Sin embargo, en un equipo en rápido crecimiento, la impaciencia no tiene cabida. En Kushki nuestro equipo de tecnología ha crecido a una velocidad vertiginosa, pasando de ser 30 personas a inicios de 2019, a más de 150 personas para mediados del 2021. Este crecimiento tan rápido requiere la creación de nuevas estructuras, capacitación de personal, familiarización con la industria y demás. Nuestro Chief Technology Officer (CTO), José Santacruz, nos cuenta su experiencia liderando esta rápida expansión, abordando los desafíos de cómo plantear la reestructuración de los equipos, y qué aspectos considerar en la búsqueda de talento, entre otros. Por otro lado, es importante considerar cómo estos cambios afectan al resto del equipo por lo que decidimos preguntarle a algunas personas su opinión al respecto. Estas fueron nuestras preguntas: ¿Qué te parece trabajar en Kushki (y con tu equipo)? ¿Cómo ha sido tu experiencia en Kushki? ¿Cómo ha sido el proceso de integración con tu equipo? ¿Cómo ha sido el proceso de crecimiento de tu equipo? Y estas sus respuestas: Marco Moreno. Developer. ¿Qué te parece trabajar en Kushki (y con tu equipo)? Trabajar en kushki es espectacular, siempre hay algo nuevo que aprender, nuevos retos para solucionar requerimientos o mejorar nuestros productos. Existe muchísimo movimiento en ese sentido, y eso me gusta porque es muestra de que todo el equipo está comprometido y sobre todo que siempre hay algo nuevo, hay innovación. En cuanto a los equipos con los que he trabajado todos han sido espectaculares. Siempre ha habido mucho compañerismo y un ambiente super agradable en el que se aprende no solo acerca del área sino también de las diferencias culturales que tenemos con otros países de Latinoamérica. Me encanta que el equipo siempre está aportando en todo. ¿Cómo ha sido tu experiencia en Kushki? En 1 año y 9 meses que llevo en Kushki siento que he crecido mucho como profesional y persona, ver que existe constante desarrollo e innovación es motivante en mi opinión, porque no existe un momento en el que te puedas sentir estancado y eso es bueno cuando tienes todas las ganas de seguir avanzando y creciendo. ¿Cómo ha sido el proceso de integración con tu equipo? / ¿Qué te ha parecido? He tenido la fortuna de pertenecer a todas las tribus de producto que hoy por hoy existen, la integración ha sido fácil porque siempre hay alguien apoyandote y nunca te dejan solo y siempre están prestos a ayudarte en cualquier problema que se presente en el día a día, eso es muy importante porque significa que hay un buen liderato de por medio y eso me parece EXCELENTE. ¿Cómo ha sido el proceso de crecimiento de tu equipo? / ¿Qué te ha parecido? El crecimiento del equipo ha sido muy notorio y espectacular siempre se integran nuevos talentos que demuestran bastante capacidad, eso hace que tengamos dentro de cada tribu nuevos retos como estar preparados para reorganizarnos como equipos y brindar todo el apoyo posible. Danelly Sotomayor. UX Designer ¿Qué te parece trabajar en Kushki (y con tu equipo)? Trabajar en Kushki es un reto, porque estamos en una industria que evoluciona todos los días y debemos ser capaces de adaptarnos a los cambios con rapidez. También me ha permitido conocer muchísimo sobre la industria y ser capaz de proponer mejoras para los usuarios. Además, trabajar en el equipo de UX/UI durante el tiempo que llevo aquí, que es poco más de un año, ha sido genial y me da gusto saber que poco a poco se va llenando de profesionales que tienen mucho que aportar. ¿Cómo ha sido el proceso de crecimiento de tu equipo? He visto un crecimiento acelerado, ya que prácticamente en un año el equipo se triplicó, lo cual me hace pensar que cada vez la labor de los UX y UI Designers es más importante y necesaria. Karell Padilla. Head of Product Owners - HPO ¿Qué te parece trabajar en Kushki (y con tu equipo)? Kushki no es un trabajo, es una familia donde todos damos el máximo, es un barco donde todos remamos día a día hacia un mismo destino, lo cual hace de kushki una empresa única. ¿Cómo ha sido el proceso de crecimiento de tu equipo? / Qué te ha parecido? Es un crecimiento exponencial y constante, son pocas las empresas que cuentan con un crecimiento tan grande en tan poco tiempo, lo cual es algo verdaderamente sorprendente Alexander Galvez. Product QA ¿Qué te parece trabajar en Kushki (y con tu equipo)? Trabajar en Kushki me parece algo increíble, realmente estoy muy contento. A pesar que el equipo es joven hemos tenido buenos resultados. ¿Cómo ha sido tu experiencia en Kushki? Desde el primer día empecé a aprender un montón y eso me encanta. ¿Cómo ha sido el proceso de crecimiento de tu equipo? El equipo en cada sprint ha tenido un crecimiento increíble, tenemos metas muy ambiciosas para contribuir de la mejor manera al equipo de producto y a Kushki
Avatar img
Stella Vargas
Líder de contenido @Kushki
julio 13, 2021