
[27/05/2022] Debido a la naturaleza ágil, continua y rápida de DevOps, incorporar seguridad es esencial, pero muchas organizaciones enfrentan obstáculos al hacerlo. Si bien esa lucha suele ser una falta cultural de prioridades organizacionales, o incluso un desafío de proceso, las buenas herramientas pueden ayudar a las empresas a poner la Sec (seguridad) en DevOps. Estas herramientas ayudan a las organizaciones a mantener la seguridad integrada en las organizaciones de DevOps al hacer que los desarrolladores, los equipos de operaciones y los equipos de seguridad estén en sintonía cuando se trata de administrar riesgos.
[Reciba lo último de CIO Perú suscribiéndose a nuestro newsletter semanal]
La necesidad de DevSecOps está creciendo, impulsada por la rápida expansión del desarrollo de código personalizado, Emergen Research estima que la demanda de herramientas DevSecOps crecerá a poco más de 23 mil millones de dólares para el 2028. A continuación, se muestra un resumen de algunas de las herramientas más importantes en las categorías principales de DevSecOps.
Alertas de DevSecOps
DevOps se mueve rápido, por lo que la capacidad de asegurar estas organizaciones debe ser igual de rápida y lo que no se puede evitar debe resolverse rápidamente. Las herramientas de esta sección ayudan a mantener informados a los equipos de desarrolladores, seguridad y operaciones para poder responder a los problemas con rapidez.
A menudo hay mucha superposición en las herramientas de DevSecOps, razón por la cual algunas de estas herramientas se enfocan en alertar y otras pueden proporcionar capacidades adicionales, como el seguimiento y la remediación del flujo de trabajo. Lo importante es encontrar las herramientas de alerta que se ajusten a su organización para administrar las alertas con respecto a los eventos que surgen y las vulnerabilidades descubiertas dentro de la tubería de desarrollo.
- Pagerduty: Muchos equipos de operaciones y desarrollo ya confían en Pagerduty, o herramientas similares, para administrar eventos dentro de sus ambientes. Cuando se trata de DevSecOps, Pagerduty puede vincular a los equipos de seguridad con los eventos relacionados con la seguridad dentro del pipeline, e integrarse con otras herramientas de seguridad para la nube, administradores de vulnerabilidades, información de seguridad y administradores de eventos que también monitorean el ambiente más amplio. Esto ayuda a que la seguridad sea un trabajo de todos.
- xMatters: Desde que las primeras herramientas de detección de intrusos e incidentes de seguridad emitieron alertas, los equipos de operaciones y seguridad se han visto inundados de alertas. Herramientas como xMatters intentan desviar la mayor parte de la avalancha de datos y mitigar la fatiga de las alertas al permitir que los equipos se concentren en las notificaciones que les importan. Se pueden establecer umbrales y disparadores para filtrar alertas, ciertas alertas pueden desencadenar una respuesta automática, y las alertas para ciertos eventos se pueden correlacionar, de modo que un incidente no active 300 notificaciones.
- Alerta: Los equipos de DevSecOps necesitan alertas de todas partes y herramientas como Alerta pueden aceptar alertas de las fuentes habituales, Syslog, SNMP, Prometheus, Nagios, Zabbix, Sensu, netdata, cualquier herramienta que pueda emitir una solicitud de URL, así como a través de scripts como Python. Las alertas pueden ser deduplicadas, correlacionadas y personalizadas.
- ElastAlert: ElastAlert es una herramienta de código abierto que proporciona un marco de trabajo para recibir alertas casi en tiempo real sobre anomalías de seguridad, picos y otros patrones de los datos de Elasticsearch. Consulta a Elasticsearch y compara los datos con un conjunto de reglas. Cuando ocurre una coincidencia, ElastAlert emite alertas con acciones recomendadas.
Desarrollo seguro de aplicaciones
Cambiar la seguridad de una aplicación -partiendo de algo que se hace después de que esta es creada, o peor aún, después de que se envía a producción- en función al proceso de desarrollo es fundamental para DevSecOps. Esto requiere que los desarrolladores asuman una mayor responsabilidad por la seguridad del código que desarrollan, y que los equipos de seguridad ayuden a los desarrolladores cuando sea necesario. Para tener éxito aquí, se requieren las herramientas adecuadas de evaluación de la seguridad del software.
- Pruebas de seguridad de aplicaciones estáticas de Checkmarx: Las pruebas de seguridad de aplicaciones estáticas (SAST, por sus siglas en inglés) de Checkmarx realizan escaneos del código fuente de la aplicación, los cuales ayudan a los equipos de desarrollo a mantener seguro el código que confirman. Se integra con las herramientas de orquestación de lanzamiento de aplicaciones y desarrollo que se encuentran en las canalizaciones de desarrollo, el software de automatización de compilación, los sistemas de seguimiento de errores y más. A diferencia de muchas herramientas SAST tradicionales, Checkmarx SAST solo puede analizar código nuevo o modificado.
- Veracode Platform: Veracode Platform proporciona herramientas de seguridad de aplicaciones que encajan perfectamente en un ambiente DevSecOps. Entre estos se encuentra Veracode Static Analysis, que examina el código antes de que haya sido compilado, y ayuda a los desarrolladores a corregir el código directamente en el ambiente de desarrollo integrado (IDE, por sus siglas en inglés). Otro es el análisis Veracode Software Composition, que ayuda a identificar vulnerabilidades en componentes de código abierto.
- Burp Suite Enterprise Edition: Burp Suite Enterprise Edition de PortSwigger puede realizar escaneos dinámicos recurrentes automáticos en todas las aplicaciones. Sus integraciones, previamente construidas, para pipelines de integración continua, soporte para Jira y API ayudan a los desarrolladores a integrar las pruebas de seguridad en sus procesos de desarrollo de software existentes.
- Synopsys: Synopsys ofrece varias herramientas de prueba de seguridad de aplicaciones, incluida Coverity, una herramienta SAST que automatiza las pruebas y se integra en pipelines de integración continua/entrega continua (CI/CD, por sus siglas en inglés); Black Duck, una herramienta de análisis de composición de software (SCA, por sus siglas en inglés) diseñada para detectar y gestionar los riesgos que surgen del uso de código abierto y código de terceros en aplicaciones y contenedores; Seeker IAST (Interactive Application Security Testing), que identifica vulnerabilidades de seguridad en tiempo de ejecución que podrían exponer datos confidenciales; y servicios administrados para pruebas de seguridad de aplicaciones.
- Parasoft: Parasoft ofrece herramientas automatizadas para realizar pruebas de seguridad de desarrollo de aplicaciones. Estos incluyen Parasoft C/C++test para identificar defectos temprano en el desarrollo, Parasoft Insure++ para encontrar programación errática y errores de acceso a la memoria, Parasoft Jtest para pruebas de desarrollo de software Java y Parasoft dotTEST complementar las herramientas de Visual Studio con análisis estático profundo.
Paneles de control DevSecOps: visibilidad de seguridad en las canalizaciones de desarrollo continuo
Los paneles de control dedicados de DevSecOps permiten la visualización gráfica y el intercambio de información de seguridad desde el comienzo del proceso de desarrollo hasta la producción. Mientras que otras herramientas de DevSecOps proporcionan paneles de control, estas aplicaciones están dedicadas a la creación de paneles de control personalizados y algunos equipos las encontrarán invaluables.
- Grafana: Grafana es una plataforma de analítica de código abierto que permite la creación de paneles de control personalizados para agregar datos relevantes con el fin de visualizarlos y consultarlos. Si crear un panel de control desde cero suena como una tarea, existen muchos paneles de control, disponibles en el sitio, creados por la comunidad.
- Kibana: Para las organizaciones que usan Elasticsearch, Kibana de código abierto integrará miles de entradas de registro en una vista gráfica unificada de datos operativos, analítica de series temporales, monitoreo de aplicaciones y más.
Modelado de amenazas: predicción de las amenazas dirigidas a las aplicaciones
Las herramientas de modelado de amenazas ayudan a los equipos de seguridad a definir, identificar y, con suerte, anticipar con precisión las amenazas que podrían atacar a las aplicaciones y predecir cómo pueden ser atacadas. De esta manera, los equipos de diseño y desarrollo pueden evitar resultados de seguridad potencialmente costosos, o incluso desastrosos, antes de que se escriba la primera línea de código. Algunas herramientas construyen automáticamente modelos de amenazas a partir de la información que los usuarios proporcionan sobre sus sistemas y aplicaciones, para luego generar una interfaz visual que les ayuda a los equipos a explorar las amenazas y sus impactos potenciales.
- IriusRisk: IriusRisk es una aplicación on premises o en la nube que automatiza los análisis de riesgos y requisitos. También diseña modelos de amenazas y requisitos técnicos de seguridad utilizando una interfaz basada en cuestionarios, y ayuda a administrar las fases de creación de código y pruebas de seguridad.
- ThreatModeler: En función de la inteligencia de amenazas disponible, este sistema automatizado de modelado de amenazas analiza automáticamente los datos e identifica amenazas potenciales en toda la superficie de ataque. ThreatModeler proporciona visualizaciones de la superficie de ataque, los requisitos de seguridad y los pasos priorizados para mitigar las amenazas.
- OWASP Threat Dragon: Esta herramienta web de código abierto ofrece diagramas de sistema y un motor de reglas para modelar y mitigar amenazas automáticamente. Threat Dragon cuenta con una interfaz fácil de usar y una integración perfecta con otras herramientas de ciclo de vida de desarrollo de software (SDLC, por sus siglas en inglés).
Otras herramientas de DevSecOps a considerar
Las siguientes herramientas de DevSecOps incluyen características y capacidades que ofrecen las herramientas en las categorías anteriores, pero son diferentes de diversas formas.
- Chef InSpec: En cada etapa de desarrollo, Chef InSpec de código abierto automatiza las pruebas de seguridad para ayudar a garantizar el cumplimiento, la seguridad y otros requisitos de políticas que se ejecutan en servidores tradicionales, contenedores y APIs en la nube.
- Gauntlt: Otra opción de código abierto, Gauntlt es un popular marco de trabajo para pruebas, diseñado para facilitar la prueba de seguridad y la comunicación entre los equipos de seguridad, desarrollo y operaciones. GauntIt promete generar ataques para pruebas fácilmente y la capacidad de conectarse a herramientas y procesos existentes de una manera más simple.
- Red Hat Ansible Automation: Esta herramienta incluye tres módulos -Ansible Tower, Ansible Engine y Red Hat Ansible Network Automation. Cada aplicación se puede utilizar de forma individual o automatizada y trabajar en conjunto. Aunque no es exclusivamente una herramienta de seguridad, Ansible Automation permite a los equipos definir reglas de seguridad dentro de su proceso de desarrollo de software seguro.
- StackStorm: Promocionado como un "IFTTTT [si esto entonces eso] para Ops”, StackStorm de código abierto ofrece automatizaciones basadas en eventos que brindan soluciones y respuestas programadas cuando se detectan fallas de seguridad, además de implementación continua, optimización de ChatOps y más.
- Aqua Security: Diseñado para administrar la seguridad en toda una tubería de desarrollo y un ambiente de tiempo de ejecución, Aqua soporta contenedores y aplicaciones nativas de la nube en todas las plataformas y nubes.
- GitLab: Esta herramienta integra la arquitectura DevSecOps en el proceso de desarrollo. GitLab promete probar cada pieza de código al confirmarles y permitirles a los desarrolladores remediar las vulnerabilidades de seguridad mientras trabajan en el código y proporcionar un panel de control de todas las vulnerabilidades.
- Red Hat OpenShift: Red Hat OpenShiftpromete capacidades de seguridad integradas para aplicaciones basadas en contenedores, como controles de acceso basados en roles, Linux con seguridad mejorada (SELinux) habilitado para aislamiento y comprobaciones a lo largo del proceso de construcción del contenedor.
- SD Elements: SD Elements, de Security Compass, es una plataforma de automatización diseñada para recopilar información sobre software, identificar amenazas y contramedidas y resaltar controles de seguridad relevantes para ayudar a las empresas a lograr sus objetivos de seguridad y cumplimiento. .
- WhiteSource: diseñado para abordar las vulnerabilidades de código abierto, WhiteSource se puede integrar en el proceso de compilación independientemente de los lenguajes de programación, las herramientas de compilación o los ambientes de desarrollo. WhiteSource verifica continuamente la seguridad y las licencias de los componentes de código abierto utilizando una base de datos, actualizada constantemente, de repositorios de código abierto.
Basado en el artículo de James A. Martin (CSO) y editado por CIO Perú
Puede ver también: