Detectar vulnerabilidades más temprano y enviar software más rápido son los pilares detrás del creciente interés en trasladar los flujos de trabajo de seguridad de aplicaciones desde los equipos de seguridad hacia los desarrolladores, un movimiento conocido como “cambio a la izquierda” en el ciclo de vida del desarrollo de software. Aunque la intención es noble, la implementación de esta estrategia ha generado ciertos desafíos.
El cambio a la izquierda se ha traducido más en una reubicación de la carga que de la habilidad. A pesar de las herramientas de seguridad de aplicaciones que afirman ser amigables para desarrolladores, requieren un cierto nivel de experiencia en seguridad. Esto interrumpe el proceso de codificación y saca a los desarrolladores de su flujo, a menudo exacerbando los problemas que intentaban solucionar. Una encuesta revela que el 81% de los desarrolladores han lanzado software con vulnerabilidades solo para cumplir con plazos.
Según Mike Hanley, Chief Security Officer de GitHub, «la mayoría de los desarrolladores no son expertos en seguridad». Sin embargo, con el uso de la inteligencia artificial (IA), se está transformando radicalmente la definición tradicional del cambio a la izquierda, trayendo la seguridad directamente a los desarrolladores mientras codifican, previniendo así la creación de vulnerabilidades desde el principio.
Nick Liffen, Director de Servicios de Campo para GitHub Advanced Security, demostró este desafío durante GitHub Universe. Pidió a los desarrolladores presentes que se levantaran y permanecieran de pie si disfrutaban remediando vulnerabilidades. La mayoría optó por sentarse, evidenciando su preferencia por escribir código sobre solucionar vulnerabilidades.
Mientras que los equipos de desarrollo se centran en lanzar nuevas funcionalidades rápidamente, los equipos de seguridad se enfocan en proteger los datos y la reputación de la organización. Esta dualidad de avanzar rápido pero con reducción de riesgos crea fricciones entre ambos equipos.
El cambio a la izquierda no siempre conlleva un uso efectivo de las herramientas de seguridad por parte de los desarrolladores. Una abundancia de alertas de falsos positivos puede llevarlos a prestar menos atención a las posibles vulnerabilidades. Además, los desarrolladores a menudo no tienen el conocimiento completo para solucionar las vulnerabilidades, lo que disminuye la productividad al romper su flujo de trabajo.
Las organizaciones enfrentan desafíos significativos: las aplicaciones son el vector de ataque número uno para actores maliciosos, y las brechas de seguridad son cada vez más costosas, con un 15% de aumento en los últimos tres años. Sin embargo, las empresas que utilizan IA y automatización en seguridad pueden ahorrar hasta $1.76 millones en comparación con organizaciones que no lo hacen.
Para que las empresas innoven a gran escala y ahorren dinero, los desarrolladores no deben verse obligados a elegir entre seguridad y velocidad. Herramientas como GitHub Copilot hacen que la seguridad esté más centrada en el desarrollador al proporcionar sugerencias de código y contexto sobre las vulnerabilidades durante su flujo de trabajo. Estas herramientas ayudan a escribir código más seguro desde el inicio.
Laura Paine, Directora de Marketing de Productos de GitHub, enfatiza la importancia de la seguridad integrada, afirmando que «los desarrolladores necesitan la capacidad de proteger proactivamente su código donde se crea, en lugar de probar y remediar vulnerabilidades después del hecho.»
Con el uso de la IA, la detección de vulnerabilidades mejora significativamente. Herramientas como CodeQL, junto con IA, automatizan el proceso de modelado de amenazas, asegurando el cumplimiento de estándares industriales.
Asha Chakrabarty, Vicepresidenta de Gestión de Productos de GitHub, advierte sobre el potencial de las soluciones generadas por IA, proporcionando sugerencias precisas y accionables para resolver problemas más rápido y prevenir nuevas vulnerabilidades.
En los próximos cinco años, se proyecta la creación de 500 millones de aplicaciones, más que en los últimos 40 años combinados. La seguridad se complicará si no se aborda adecuadamente. La meta es lograr herramientas que los desarrolladores quieran usar, convirtiendo la seguridad en una parte inconsciente y sin fricción en su flujo de trabajo.
El objetivo final es hacer que la seguridad sea simplemente la forma en que los desarrolladores trabajan, buscando eliminar las fricciones y retos actuales.