Reducir las vulnerabilidades del código fuente

  • Gestión de apps

seguridad-binario

Al ritmo del desarrollo continuo de software, los desarrolladores deben moverse rápidamente para crear aplicaciones. Sin embargo, los equipos de seguridad que deben evitar las filtraciones no suelen estar bien versados en todas las facetas del ciclo de vida del desarrollo de software (SDLC).

Esto se convierte en un problema a medida que el número de líneas de código (y los secretos que se guardan en ellas) aumenta junto con el número de aplicaciones desarrolladas. Según un informe reciente de 1Password, "dos de cada tres (65%) empleados de TI y DevOps estimaron que su empresa tiene más de 500 secretos". Y, según el mismo informe, "el coste medio de la filtración de un secreto es de 1,2 millones de dólares". Una mala gestión de los secretos puede hacer que las organizaciones pierdan 8.500 millones de dólares al año". Los secretos son vitales para construir cualquier aplicación o proceso conectado. Si se codifican o se dejan sin protección en el código fuente, las proverbiales llaves del reino corren el riesgo de quedar expuestas, al igual que sus fieles clientes.

Está claro que la seguridad del código fuente debe ser una prioridad para los equipos de seguridad y los profesionales de DevSecOps. Examinemos cómo pueden lograrlo sin sacrificar la productividad de los desarrolladores.

Cómo reducir las amenazas mediante las mejores prácticas de gestión de secretos

Buscar manualmente en los repositorios de código fuente secretos vulnerables puede ser casi imposible. Sin embargo, hay algunas mejores prácticas a seguir para asegurar que las vulnerabilidades se detecten temprano y con frecuencia:

? Identificar y eliminar los secretos en el código: No se puede proteger lo que no se puede ver. Es importante tener visibilidad en el código fuente para poder ver dónde pueden existir vulnerabilidades. Hay varias maneras de hacer brillar una luz sobre las vulnerabilidades. Una de ellas es el escaneo manual del código fuente, pero esto resta un tiempo valioso que los desarrolladores podrían dedicar a tareas más innovadoras. También hay algunas soluciones de código abierto que pueden ayudar a escanear los repositorios de código fuente, pero como todo lo que es de código abierto, esto significa que los desarrolladores tendrán que mantenerlo (mantenerlo actualizado, integrarlo, etc.). En su lugar, los equipos de seguridad deben considerar la búsqueda de una plataforma de cadena de herramientas unificada para ayudar con la identificación de la vulnerabilidad del código fuente y la remediación.

 Alertar y remediar en los repositorios de código: Proporcionar un bucle de retroalimentación rápida a un desarrollador o ingeniero DevOps antes de liberar el código en la producción. La remediación debe ocurrir en el momento del commit. La idea aquí es bloquear los secretos para que no se envíen a los repositorios de código fuente en primer lugar.

Adopta una herramienta de gestión de secretos: No almacene secretos o binarios dentro del código fuente; nada más que el código debe estar en sus repositorios de código fuente. Retira los secretos a un gestor de secretos (por ejemplo, HashiCorp Vault), gestor de claves y certificados (por ejemplo, Azure Key Vault), etc. Modularice y aísle estos gestores, pero asegúrese de que siguen comunicándose entre sí para no exponer los secretos.

A medida que los ciberataques siguen aumentando, es imperativo que los equipos de seguridad echen un vistazo a su código fuente para asegurarse de que está bien cerrado. Mantener los secretos fuera del código fuente por completo es recomendable en teoría, pero difícil de asegurar en la práctica. Seguir las mejores prácticas anteriores ayudará a reducir el riesgo de exposición de datos sensibles y a reducir el riesgo de perder clientes fieles y dólares de ingresos.

Descubre la innovación

Para asegurar el éxito empresarial, ahora y a futuro, es imprescindible maximizar el retorno de la inversión existente en software, a la vez que innovar y adoptar nuevas tecnologías. Los retos que hay abordar para competir en un mundo de TI Híbrida incluyen DevOps, Seguridad, Gestión de riesgos y Análisis predictivo. Puedes obtener más información sobre cómo abordar estos retos e innovar en este enlace.