{"id":9712,"date":"2021-04-12T09:28:39","date_gmt":"2021-04-12T07:28:39","guid":{"rendered":"https:\/\/www.makingscience.com\/blog\/mejora-e-integra-seguridad-en-tus-aplicaciones-con-un-enfoque-devsecops-en-google-cloud-platform\/"},"modified":"2021-04-12T09:28:39","modified_gmt":"2021-04-12T07:28:39","slug":"mejora-e-integra-seguridad-en-tus-aplicaciones-con-un-enfoque-devsecops-en-google-cloud-platform","status":"publish","type":"post","link":"https:\/\/www.makingscience.com\/es\/blog\/mejora-e-integra-seguridad-en-tus-aplicaciones-con-un-enfoque-devsecops-en-google-cloud-platform\/","title":{"rendered":"Mejora e integra seguridad en tus aplicaciones con un enfoque DevSecOps en Google Cloud Platform"},"content":{"rendered":"<div>Mejora e integra seguridad en tus aplicaciones con un enfoque DevSecOps en Google Cloud Platform<\/div>\n<div>Google Cloud Platform es sin\u00f3nimo de seguridad. No lo decimos nosotros, lo dice el \u00faltimo <a href=\"https:\/\/cloud.google.com\/blog\/products\/identity-security\/google-cloud-a-leader-in-iaas-platform-native-security-wave\" target=\"_blank\" rel=\"noopener\">The Forrester Wave\u2122 Infrastructure-as-a-Service Platform Native Security Q4 2020 report.<\/a> Pero que tu proveedor de infraestructura en la nube sea seguro no quiere decir que las aplicaciones que despliegas en \u00e9l lo sean.\u00a0<b>\u00bfEst\u00e1s seguro de que toda aplicaci\u00f3n desplegada en tu entorno es segura?<\/b>  La seguridad debe de ser un topic m\u00e1s que importante para las organizaciones, por ello debemos operar en base a herramientas y soluciones que nos permitan trabajar y desplegar correctamente nuestras aplicaciones. <strong>\u00bfQu\u00e9 podemos hacer para mejorar e integrar la seguridad de nuestras aplicaciones desde el inicio de su ciclo de vida en Google Cloud?<\/strong> <\/p>\n<h3>De DevOps a DevSecOps<\/h3>\n<p> La responsabilidad de que el producto final desplegado funcione correctamente se comparte entre el departamento de desarrollo y el de operaciones, esta es la filosof\u00eda que define la filosof\u00eda DevOps. DevSecOps s\u00f3lo a\u00f1ade una capa m\u00e1s a la ecuaci\u00f3n, la de la seguridad.  La gran diferencia reside en que la comprobaci\u00f3n de seguridad del c\u00f3digo de la aplicaci\u00f3n, o cualquier otro componente de la aplicaci\u00f3n (paquetes, librer\u00edas, etc) se realiza desde el inicio de todo el proceso de despliegue, no una vez completado este. Es un elemento m\u00e1s de todo workflow del ciclo de vida de la aplicaci\u00f3n, integrado junto con otros tests automatizados, no un elemento externo que se ejecuta bajo demanda de vez en cuando.  <img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-4309 aligncenter\" src=\"https:\/\/www.makingscience.com\/wp-content\/uploads\/2021\/04\/Captura-de-pantalla-2021-04-12-a-las-10.51.50.png\" alt=\"\" width=\"805\" height=\"501\" \/> <\/p>\n<h3>Integrar tests de seguridad en tu CI\/CD<\/h3>\n<p> Para integrar la capa de seguridad en ese workflow de despliegue desde el inicio tenemos que realizarlo en el la herramienta de CI\/CD que estemos utilizando, en este caso usaremos de ejemplo la nativa de GCP, Cloud Build.  Hay dos etapas del esquema anterior en las que podemos aplicar tests de seguridad dentro del pipeline de despliegues autom\u00e1ticos, de verificaci\u00f3n de c\u00f3digo (con herramientas como SonarQube) antes de que ejecute el trigger de creaci\u00f3n del contenedor o a la hora de crear los artefactos que se van a desplegar, en este caso contenedores.  En esta \u00faltima etapa es donde entra en juego el <a href=\"https:\/\/cloud.google.com\/container-analysis\/docs\" target=\"_blank\" rel=\"noopener\">Container Analysis<\/a> de GCP. Esta herramienta, que se puede utilizar bajo demanda o integrar directamente en tu pipeline de CI\/CD, analiza el contenedor creado y guardado en Container Registry en busca de vulnerabilidades sacando un listado de ellas categorizado por gravedad.  <img decoding=\"async\" class=\"wp-image-4310 aligncenter\" src=\"https:\/\/www.makingscience.com\/wp-content\/uploads\/2021\/04\/Captura-de-pantalla-2021-04-12-a-las-10.52.02.png\" alt=\"\" width=\"1104\" height=\"387\" \/>  En el caso de la integraci\u00f3n con el pipeline de CI\/CD habr\u00eda que configurar un <a href=\"https:\/\/cloud.google.com\/binary-authorization\/docs\/creating-attestations-kritis\" target=\"_blank\" rel=\"noopener\">attestation<\/a> para que el servicio de <a href=\"https:\/\/cloud.google.com\/binary-authorization\/docs\/overview\" target=\"_blank\" rel=\"noopener\">Binary Authorization<\/a> de Google marque la build como fallida en caso de descubrirse una vulnerabilidad que no cumpla las policy definida en ese attestation, evitando as\u00ed su despliegue y sirviendo como alerta para obligar a parchear esas vulnerabilidades cuanto antes.  Container Analysis tambi\u00e9n posee una API para que podamos sacar toda la informaci\u00f3n sobre las vulnerabilidades en las diferentes im\u00e1genes de nuestro registry para integrar esta informaci\u00f3n con otras herramientas o aplicaciones caseras. Tambi\u00e9n se puede utilizar Pub\/Sub para recibir alertas en el caso de que se descubra una nueva vulnerabilidad en alguno de los contenedores que ten\u00edamos en el registry.  &nbsp; <\/p>\n<h3>Visibilidad<\/h3>\n<p> Otro aspecto muy importante para que la seguridad sea una preocupaci\u00f3n compartida por todos los departamentos t\u00e9cnicos es que tengan acceso sin ning\u00fan tipo de trabas las herramientas de monitorizaci\u00f3n y logs. La visibilidad de las trazas y m\u00e9tricas son vitales a la hora de dar una pista sobre un posible mal funcionamiento de la aplicaci\u00f3n o de un ataque.  Los logs son el primer recurso que nos puede ayudar a detectar que alguien le est\u00e1 buscando las cosquillas a nuestra aplicaci\u00f3n. Configurar correctamente los logs y los permisos (Logs Viewer en IAM) para que los diferentes departamentos puedan revisarlos y explotarlos agiliza enormemente la resoluci\u00f3n de problemas y ayuda a tomar medidas preventivas ante posibles ataques. Las m\u00e9tricas de monitorizaci\u00f3n son otro indicador de un posible mal funcionamiento de la aplicaci\u00f3n o incluso otros ataques como DDOS. Evidentemente los logs del CI\/CD, deben de ser consultables en tiempo real por los diferentes departamentos implicados para seguir en directo el desarrollo del pipeline y corregir los fallos detectados en los diferentes tests integrados en la mayor brevedad posible.  En definitiva, que ning\u00fan departamento tenga que pedir por ticket o mail las trazas o m\u00e9tricas de un fallo de aplicaci\u00f3n o comportamiento sospechoso, que sean independientes y por ello m\u00e1s eficientes. <\/p>\n<h3><\/h3>\n<h3>No olvidar lo esencial<\/h3>\n<p> Todas estas medidas, automatizaciones y trazas no deben hacer que olvidemos las buenas pr\u00e1cticas de seguridad aplicables a todas las capas de nuestro entorno, desde las infraestructuras, pasando por las redes, la autenticaci\u00f3n y permisos. Siempre usar el modelo del m\u00ednimo privilegio posible y reducir la superficie de ataque en la medida de lo posible.  &nbsp; <\/p>\n<h3><strong>Conclusi\u00f3n<\/strong><\/h3>\n<p> Hemos hablado de varias herramientas para implementar una filosof\u00eda DevSecOps en GCP, pero realmente las tecnolog\u00edas o providers que se usen son lo de menos, lo importante es el cambio de mentalidad y el deseo de mejorar e integrar la seguridad de nuestras aplicaciones desde el inicio de su ciclo de vida, haciendo as\u00ed de la seguridad una parte integral de la aplicaci\u00f3n, no un chequeo que se hace \u201ccuando est\u00e9 funcionando y haya tiempo\u201d.  Las herramientas mencionadas, y todas las alternativas que hay en el mercado, han simplificado mucho esta integraci\u00f3n, con lo que ya no tenemos excusa para no implementar un pipeline de despliegue que garantice que las aplicaciones que desplegamos no sean seguras.<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Mejora e integra seguridad en tus aplicaciones con un enfoque DevSecOps en Google Cloud Platform Google Cloud Platform es sin\u00f3nimo de seguridad. No lo decimos nosotros, lo dice el \u00faltimo The Forrester Wave\u2122 Infrastructure-as-a-Service Platform Native Security Q4 2020 report. Pero que tu proveedor de infraestructura en la nube sea seguro no quiere decir que [&hellip;]<\/p>\n","protected":false},"author":21,"featured_media":9715,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[910],"tags":[66,67],"class_list":["post-9712","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology-ai-es","tag-cloud","tag-systems"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/posts\/9712","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/comments?post=9712"}],"version-history":[{"count":0,"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/posts\/9712\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/media\/9715"}],"wp:attachment":[{"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/media?parent=9712"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/categories?post=9712"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.makingscience.com\/es\/wp-json\/wp\/v2\/tags?post=9712"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}