El camino a DevSecOps: Retos en la concientización de AppSec

Comparte este artículo

Share on facebook
Share on twitter
Share on linkedin
Share on whatsapp

Recientemente, tuve la oportunidad de sentarme con Kurt Risley y preguntarle sobre sus experiencias y observaciones al trabajar con organizaciones que desean desarrollar un Programa de Concienciación AppSec integral.

Las preguntas y respuestas son las siguientes:

Stephen: Dado que nuestro mundo depende en gran medida del software, hoy más que nunca, el software debe ser un sinónimo de seguridad.

En este contexto, ¿qué piensas sobre el origen de las vulnerabilidades del software?

Kurt: Casi todas las investigaciones sobre este origen apuntan a la falta de educación, capacitación, conciencia y habilidades de codificación seguras.

De hecho, el 70 por ciento de los desarrolladores indican que carecen de la formación necesaria para proteger adecuadamente el software que desarrollan.

Además,

  • Hay 22 millones de desarrolladores de software en todo el mundo (Evans Data), 
  • 90% de los incidentes de seguridad se deben a defectos en el diseño o el código del software (DHS),
  • 21% de las filtraciones de datos son el resultado de vulnerabilidades de software (Verizon),
  • 1 de cada 3 de las aplicaciones recién escaneadas tuvo vulnerabilidades de Inyección de SQL durante los últimos 5 años (Cisco),
  • Hay una proporción de desarrolladores de 100 a 1 en comparación con el personal de seguridad de aplicaciones (SANS).

Hoy en día, la mayoría de las organizaciones desean aumentar la conciencia y la seguridad, y esto incluye aprovechar los materiales prácticos para los desarrolladores de software sobre las mejores prácticas y los errores comunes en los diversos pasos necesarios para lograr este objetivo.

<< Te puede interesar: ¿Cuál es el ROI de las Pruebas de Seguridad de las Aplicaciones (AST) de Checkmarx? >>

Un programa de concientización de AppSec debe apuntar principalmente a su comunidad de desarrollo de software en primer lugar, y debe llevarse a cabo y realizarse un seguimiento de forma regular.

Por lo tanto, el mejor lugar para comenzar es desde el principio con los propios desarrolladores.

Sin embargo, la realidad es que los desarrolladores de hoy tienen otras prioridades como plazos, errores funcionales frente a vulnerabilidades, nuevos lenguajes, expansión de la utilización de software, aumento de proyectos, etc.

Stephen: ¿Cómo sueles empezar tu conversación con una organización en torno a un programa de concientización de AppSec?

Kurt: Por lo general, primero le hago a la organización esta pregunta básica: “¿Tienes actualmente un programa de conocimiento de AppSec para sus desarrolladores?”

La mayoría de los clientes con los que hablo tienen un programa informal, donde el desarrollador debe recibir una cierta cantidad de capacitación, mientras que otros no tienen nada, pero realmente desean llevarlo al siguiente nivel.

Es casi lo mismo sin importar con quién hable.

Aunque algunas organizaciones tienen requisitos de cumplimiento obligatorios como PCI, GDPR, etc., su programa actual no está bien concebido para abordar adecuadamente sus mandatos de cumplimiento.

Hoy en día, el conocimiento de AppSec ya no es una opción.

Ahora, en el contexto de un programa oficial de concientización, estas son las preguntas más comunes que recibo: “¿Cómo armamos un programa formal para nuestros desarrolladores? ¿Por dónde empezamos? ¿Cómo conseguimos el compromiso de los desarrolladores cuando es divertido y no la formación típica en la que todo el mundo pone los ojos en blanco?”.

Para ser honesto, he pasado la mayor parte de mi tiempo respondiendo estas preguntas.

Stephen: ¿Cómo es un programa de concientización de AppSec que funciona y ha sido probado y cómo se puede poner en marcha uno?

Kurt: Hay algunos hitos y enfoques clave que cualquier organización puede adoptar.

Primero, queremos el compromiso del liderazgo. Esto es fundamental. El patrocinio ejecutivo es un factor clave de éxito, pero no significa que deba tenerlo para implementar un programa para sus desarrolladores.

Estas son las 4 áreas clave que deben abordarse para obtener la aceptación de las partes interesadas clave:

En primer lugar, comunícate con tu equipo ejecutivo sobre el por qué, el cómo y el qué, de un programa de concientización de AppSec; por lo general, los objetivos y beneficios del programa.

En segundo lugar, responde a las preguntas de sus ejecutivos sobre: ​​”¿Qué gano yo?” Yo suelo responder con esto:

  • Fortalece los lazos entre desarrolladores y equipos de seguridad
  • Reduce el riesgo de software y mitiga el riesgo empresarial
  • Ayuda a demostrar que es una organización impulsada por la seguridad para sus clientes (lo cual es importante para todas las organizaciones)

A continuación, habla con tus gerentes de desarrollo de software sobre los objetivos y beneficios del programa, principalmente desde su perspectiva.

Finalmente, responde las preguntas de tus gerentes de desarrollo sobre, “¿Qué gano yo con esto?” Normalmente empiezo con esto:

  • Reduce la cantidad de costosos errores de seguridad que retrasan la entrega y la implementación del software.
  • Pone la seguridad en el primer plano del desarrollo de software e incorpora la seguridad como una mejor práctica de codificación en toda la organización.
  • Mejora la colaboración entre el equipo de seguridad y los desarrolladores.
  • Proporciona una manera fácil de identificar y medir las habilidades de seguridad entre los nuevos empleados y candidatos.

Stephen: ¿Cuál es la mejor manera de organizar un enfoque para la configuración de una solución? “

Kurt: Primero hablemos de una estructura organizativa y de cómo se ve esa configuración un poco más en detalle.

  • Implementación (Roll out): el uso de equipos hace que la implementación sea más estructurada y más fácil de administrar a largo plazo. Eso podría hacerse por geografía, por unidades de negocio, por aplicación, por idioma, etc.
  • Lanzamiento: comunícate con los desarrolladores sobre los detalles del lanzamiento. Explica claramente las metas y los objetivos y deja en claro que esto será divertido y muy productivo. Este no será un fastidio que requiera mucho tiempo.
  • Evaluación: obtén un baseline al comienzo de tu programa. ¿No sería bueno evaluar continuamente su organización de desarrolladores y comprender dónde están sus fortalezas, y luego comprender las áreas que necesitan mejorar?
  • Conclusión: hay muchos beneficios en este enfoque y la conclusión clave es que ahora puede demostrar el valor del liderazgo después de que se haya realizado la capacitación y las áreas que se hayan mejorado cada vez más.
  • ROI: esto ofrece KPI medibles que dan como resultado un ROI acelerado comprobado, que es un retorno significativo de su inversión inicial y a largo plazo por el costo de un programa oficial.

Stephen: Entonces, ¿qué debería pasar a continuación?

Kurt: Debe ser proactivo y, como resultado, reducirá el riesgo en su organización. Lo que quiero decir con ser proactivo debería implicar:

  • Capacitar, capacitar, capacitar: Realiza capacitación enfocada durante ciertos períodos de tiempo, en un horario regular.
  • Crea una competencia amistosa entre los desarrolladores: dado que a todos les encanta cierto nivel de competencia, agrégalo a la combinación y asegúrate de que nadie se sienta abandonado o excluido.
  • Agrega un programa de incentivos: dado que la mayoría de las personas están motivadas por premios y felicitaciones de algún tipo, piense en incentivos que sus equipos agradecerían. No siempre tienen que basarse en dinero. A veces, el simple reconocimiento público es suficiente para motivar a la gente.
  • Evaluar y realizar un seguimiento: no olvides evaluar continuamente tu programa y el progreso de tus equipos. Comparte ese progreso en formatos similares a informes a la administración que sean fáciles de digerir. Mantén buenos registros de todos los avances y áreas problemáticas.
  • Aborda los problemas de frente: si se identifican áreas problemáticas, aborda esas áreas primero y luego comparte el progreso positivo con el grupo y con la audiencia más amplia.
  • Enjuaga y repite: si lo que estás haciendo está funcionando, es simple desde allí. No repares lo que no está roto. Sin embargo, si algo está roto, asegúrate de no esperar hasta que las cosas se conviertan en un problema.

Si estás interesado en obtener más información sobre cómo puedes desarrollar un programa integral de concientización sobre AppSec en tu organización, el mejor lugar para comenzar es solicitar una prueba gratuita de la solución Checkmarx Codebashing.

Mediante el uso de capacitación justo a tiempo, comunicación continua y participación divertida, los gerentes de seguridad cultivan una cultura de seguridad de software que permite a los desarrolladores pensar y actuar de manera segura en su trabajo diario.

Desde allí, puedes solicitar una demostración donde puedes obtener más información sobre cómo implementar un programa en tu organización.

Bio

Stephen Gates

Stephen Gates es un escritor experimentado, bloguero y autor publicado que aporta más de 15 años de conocimiento práctico en seguridad de la información al equipo de Checkmarx. Stephen se dedica a transmitir hechos, cifras e información que crea conciencia sobre los problemas de ciberseguridad que enfrentan todas las organizaciones y los consumidores. Al alinearse con la misión de Checkmarx de mejorar la seguridad del software para todas las organizaciones, es un defensor y promotor de sus soluciones en todo el mundo.

Proteje mejor tu organización hoy, gratis

Descarga KICS y proteje tu IaC, tus API y toda tu organización de fallas y configuraciones incorrectas.