Mitigar la deuda técnica con seguridad impulsada por los desarrolladores
Hablemos de la deuda
Casi todo el mundo sabe ya que la ciberdelincuencia se ha convertido en un grave problema al que se enfrenta nuestra economía mundial. En 2022, el coste medio de una violación de datos en Estados Unidos ascendía a 9,44 millones de dólares, frente a los 9,05 millones del año anterior. Es importante no ignorar el coste del código inseguro y su deuda técnica acumulada. Según el informe 2022 Consortium for Information and Software Quality: The Cost of Poor Software Quality, se estima que el coste de la mala calidad del software en EE.UU. ha crecido hasta los 2,41 billones de dólares y la deuda técnica de software acumulada ha crecido hasta los 1,52 billones de dólares.
Los crecientes costes de abordar el código inseguro y su deuda técnica se han convertido en el mayor obstáculo para realizar cualquier cambio en las bases de código existentes, dejándolas así vulnerables a la explotación y a las amenazas externas. El estado de la seguridad del software se enfrenta a una crisis existencial: sabemos que tenemos que mejorar nuestra postura de seguridad y abordar la deuda técnica acumulada, pero las barreras son enormes:
- Se calcula que en EE.UU. hay unos 300.000 puestos de trabajo vacantes para desarrolladores de software e informáticos, con una tasa de crecimiento prevista del 15%.
- Se prevé que en 2025 el 40% de los presupuestos de TI se destinarán simplemente a mantener la deuda tecnológica.
- 1/3 de las horas semanales de los desarrolladores se dedican, por término medio, a hacer frente a la deuda tecnológica.
Las soluciones rápidas son arriesgadas y cuestan más a largo plazo
¿Qué es la deuda técnica y por qué es tan importante? La deuda técnica se acumula cuando los responsables de la toma de decisiones optan por una solución a corto plazo para un problema de desarrollo de software, en lugar de una solución más exhaustiva y a largo plazo. Esto conlleva un importante coste oculto que las organizaciones deben pagar más adelante. Al igual que una tarjeta de crédito al límite, la deuda técnica tiene dos componentes principales:
- Principal : se refiere al coste total de refactorizar o arreglar el software para que alcance un nivel deseado de mantenibilidad y seguridad.
- Interés: el esfuerzo adicional que los desarrolladores dedican a realizar esos cambios para abordar únicamente la deuda técnica, y no nuevas funcionalidades. Cada minuto invertido en código que no es del todo correcto añade interés a la deuda.
Se puede llegar a un estado de "quiebra técnica" cuando el coste de las nuevas funciones, la corrección de errores y el mantenimiento supera el presupuesto del proyecto, lo que hunde considerablemente el valor de la aplicación informática.
Sin embargo, una cierta acumulación de deudas, como en la vida, es normal y, en la mayoría de los casos, algo esperado.
Lo ideal sería que todos los desarrolladores de software redujeran al máximo los errores antes de enviar el código. Sin embargo, se enfrentan a una difícil disyuntiva: para ser competitiva, una organización puede querer entregar funciones o productos a los clientes rápidamente a un coste mínimo. Como resultado, la calidad de la aplicación se resiente porque los KPI de los desarrolladores se basan en la rapidez de la entrega y en el coste inicial de construirla. Lo que no se tiene en cuenta son las deficiencias acumuladas y las vulnerabilidades potenciales del código. Esto lo deja listo para errores o vulnerabilidades de seguridad más adelante o, peor aún, para ser explotado por malos actores.
Pero ahí está el enigma: ¿hay alguna forma diferente de lanzar productos rápidamente sin acumular una enorme deuda técnica?
El coste de encontrar y corregir deficiencias y vulnerabilidades es el mayor gasto del ciclo de vida de desarrollo de software. Cuanto antes se detecten los problemas en el ciclo de vida del desarrollo, más rentable será la entrega global.
La deuda técnica puede convertirse en deuda de seguridad
Muchos desarrolladores intentan sortear este inconveniente recurriendo al código fuente abierto para avanzar con rapidez y, en el mejor de los casos, utilizar una solución ya probada. Sin embargo, depender en gran medida del software de código abierto a menudo presenta sus propios riesgos:
- El 82% de los componentes de código abierto no estaban actualizados (es decir, no tenían parches o no estaban bien soportados).
- El 75% de las bases de código contenían vulnerabilidades (frente al 60% en 2018), y el 49% vulnerabilidades de alto riesgo
- Se identificó una media de 82 vulnerabilidades por código base.
Esto hace proliferar un subconjunto de la deuda técnica: la deuda de seguridad. La deuda de seguridad es la acumulación de vulnerabilidades en una aplicación informática que hace más difícil o incluso imposible proteger los datos y sistemas de un ataque.
Uno de los ejemplos más notorios es el de Equifax, el gigante de la información crediticia que sufrió una brecha en 2017 porque no había parcheado una vulnerabilidad conocida en Apache Struts, un popular marco de aplicaciones web de código abierto. El parche estaba disponible desde hacía meses, pero la brecha puso en peligro datos personales cruciales de más de 147 millones de personas.
Por tanto, hay que prestar más atención a las prácticas de codificación segura, ya que muchas aplicaciones han alcanzado una masa crítica no sólo en su deuda técnica, sino en la densidad de debilidades y vulnerabilidades de seguridad de la propia aplicación.
Esto puede dar lugar a enormes pérdidas, que pueden ser tangibles o intangibles:
Daños a la reputación: La pérdida de confianza de los clientes puede tener un impacto extremadamente negativo en el futuro. Esto puede incluir daños a la marca, pérdida de ventas y costosos problemas legales como resultado de una infracción.
Impacto normativo y de cumplimiento: Si un fallo de seguridad puede hacer que una empresa incumpla un plazo y/o sus obligaciones contractuales. El incumplimiento de un acuerdo de nivel de servicio puede acarrear a una empresa problemas con las autoridades reguladoras, con multas significativas.
Costes de reparación: Tras una avería o interrupción, suele ser necesario realizar trabajos adicionales para compensar la pérdida de productividad.
Prevención de la deuda técnica y de seguridad en el SDLC
Muchas organizaciones ya están cambiando su presupuesto para crear una postura de seguridad más fuerte. El año pasado, Google se comprometió a destinar 10.000 millones de dólares en 5 años a financiar un programa para reforzar la ciberseguridad. La administración Biden también solicitó 2.100 millones de dólares en el presupuesto discrecional de 2022 para la Agencia de Ciberseguridad y Seguridad de las Infraestructuras (CISA).
Proporcionar más recursos y formación para ayudar a reforzar el crecimiento profesional y los conocimientos de sus desarrolladores puede ser el primer paso para establecer normas de calidad para todo el código enviado a producción.
El coste de encontrar y corregir una vulnerabilidad o un defecto aumenta exponencialmente cuanto más tarde se encuentre y se aborde en el ciclo de desarrollo del software. Y como hemos visto, con tanto tiempo dedicado a abordar la deuda técnica y de seguridad, las organizaciones están creando sus propias pérdidas al renunciar a la innovación y al tiempo dedicado a nuevas características o productos.
En 2022, la mayoría de los equipos de desarrolladores afirmaron que DevOps o DevSecOps era su metodología preferida, y no es de extrañar por qué. DevSecOps integra la seguridad en cada etapa del ciclo de vida de desarrollo de software para ofrecer aplicaciones mejores y más seguras. Los equipos de seguridad y desarrollo siguen trabajando en silos y teniendo tensiones, pero está claro que esto tiene que cambiar para ayudar a las empresas a tener éxito. DevOps forma parte del modo en que las organizaciones intentan derribar barreras y remodelar la cultura. El objetivo fundamental de DevSecOps es aumentar la colaboración entre AppSec/Seguridad con los desarrolladores desde el principio del ciclo de vida de desarrollo del software.
Implantar una nueva forma de pensar sobre la deuda técnica y la seguridad no tiene por qué ser una hazaña monumental. Establecer una mentalidad proactiva a través de la formación es fundamental cuando se trata de mejorar la concienciación y las habilidades en materia de seguridad de la comunidad de desarrolladores de una organización. Una sólida formación en codificación segura para desarrolladores que garantice un aprendizaje continuo, interactivo, pertinente y contextual es una necesidad. Un enfoque verdaderamente holístico debe tener en cuenta lo que se necesita para fomentar una auténtica cultura de seguridad dirigida por los desarrolladores. Puede que sea necesario cambiar el enfoque de las formas típicas de gestionar y crear equipos de desarrolladores.
Crear un cambio de cultura no es fácil, pero Secure Code Warrior le ayuda a identificar a sus campeones en seguridad y a dotar a los desarrolladores y a las organizaciones de las habilidades adecuadas para afrontar los retos de seguridad actuales, en constante cambio.
Lanzar un programa de código seguro atractivo y escalable es una inversión que merece la pena por el enfoque preventivo a largo plazo de la seguridad, en lugar de la forma reactiva del pasado. En última instancia, esto ayuda a mitigar los costosos riesgos de una brecha, educar a los desarrolladores sobre cómo encontrar y corregir vulnerabilidades rápidamente y facilitar una forma más ágil de centrarse en el desarrollo de productos y acelerar el tiempo de comercialización.
El coste de abordar el código inseguro y la deuda técnica subsiguiente es uno de los mayores obstáculos a los que se enfrenta la tecnología hoy en día. Descubra cómo la implantación de un programa escalable de formación en código seguro ayuda a reducir la deuda técnica al abordar los patrones de codificación deficientes y detectar las vulnerabilidades en una fase temprana del ciclo de desarrollo del software.
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Reservar una demostraciónTaylor Broadfoot-Nymark es Directora de Marketing de Producto en Secure Code Warrior. Ha escrito varios artículos sobre ciberseguridad y aprendizaje ágil, y también dirige lanzamientos de productos, estrategia GTM y defensa del cliente.
Hablemos de la deuda
Casi todo el mundo sabe ya que la ciberdelincuencia se ha convertido en un grave problema al que se enfrenta nuestra economía mundial. En 2022, el coste medio de una violación de datos en Estados Unidos ascendía a 9,44 millones de dólares, frente a los 9,05 millones del año anterior. Es importante no ignorar el coste del código inseguro y su deuda técnica acumulada. Según el informe 2022 Consortium for Information and Software Quality: The Cost of Poor Software Quality, se estima que el coste de la mala calidad del software en EE.UU. ha crecido hasta los 2,41 billones de dólares y la deuda técnica de software acumulada ha crecido hasta los 1,52 billones de dólares.
Los crecientes costes de abordar el código inseguro y su deuda técnica se han convertido en el mayor obstáculo para realizar cualquier cambio en las bases de código existentes, dejándolas así vulnerables a la explotación y a las amenazas externas. El estado de la seguridad del software se enfrenta a una crisis existencial: sabemos que tenemos que mejorar nuestra postura de seguridad y abordar la deuda técnica acumulada, pero las barreras son enormes:
- Se calcula que en EE.UU. hay unos 300.000 puestos de trabajo vacantes para desarrolladores de software e informáticos, con una tasa de crecimiento prevista del 15%.
- Se prevé que en 2025 el 40% de los presupuestos de TI se destinarán simplemente a mantener la deuda tecnológica.
- 1/3 de las horas semanales de los desarrolladores se dedican, por término medio, a hacer frente a la deuda tecnológica.
Las soluciones rápidas son arriesgadas y cuestan más a largo plazo
¿Qué es la deuda técnica y por qué es tan importante? La deuda técnica se acumula cuando los responsables de la toma de decisiones optan por una solución a corto plazo para un problema de desarrollo de software, en lugar de una solución más exhaustiva y a largo plazo. Esto conlleva un importante coste oculto que las organizaciones deben pagar más adelante. Al igual que una tarjeta de crédito al límite, la deuda técnica tiene dos componentes principales:
- Principal : se refiere al coste total de refactorizar o arreglar el software para que alcance un nivel deseado de mantenibilidad y seguridad.
- Interés: el esfuerzo adicional que los desarrolladores dedican a realizar esos cambios para abordar únicamente la deuda técnica, y no nuevas funcionalidades. Cada minuto invertido en código que no es del todo correcto añade interés a la deuda.
Se puede llegar a un estado de "quiebra técnica" cuando el coste de las nuevas funciones, la corrección de errores y el mantenimiento supera el presupuesto del proyecto, lo que hunde considerablemente el valor de la aplicación informática.
Sin embargo, una cierta acumulación de deudas, como en la vida, es normal y, en la mayoría de los casos, algo esperado.
Lo ideal sería que todos los desarrolladores de software redujeran al máximo los errores antes de enviar el código. Sin embargo, se enfrentan a una difícil disyuntiva: para ser competitiva, una organización puede querer entregar funciones o productos a los clientes rápidamente a un coste mínimo. Como resultado, la calidad de la aplicación se resiente porque los KPI de los desarrolladores se basan en la rapidez de la entrega y en el coste inicial de construirla. Lo que no se tiene en cuenta son las deficiencias acumuladas y las vulnerabilidades potenciales del código. Esto lo deja listo para errores o vulnerabilidades de seguridad más adelante o, peor aún, para ser explotado por malos actores.
Pero ahí está el enigma: ¿hay alguna forma diferente de lanzar productos rápidamente sin acumular una enorme deuda técnica?
El coste de encontrar y corregir deficiencias y vulnerabilidades es el mayor gasto del ciclo de vida de desarrollo de software. Cuanto antes se detecten los problemas en el ciclo de vida del desarrollo, más rentable será la entrega global.
La deuda técnica puede convertirse en deuda de seguridad
Muchos desarrolladores intentan sortear este inconveniente recurriendo al código fuente abierto para avanzar con rapidez y, en el mejor de los casos, utilizar una solución ya probada. Sin embargo, depender en gran medida del software de código abierto a menudo presenta sus propios riesgos:
- El 82% de los componentes de código abierto no estaban actualizados (es decir, no tenían parches o no estaban bien soportados).
- El 75% de las bases de código contenían vulnerabilidades (frente al 60% en 2018), y el 49% vulnerabilidades de alto riesgo
- Se identificó una media de 82 vulnerabilidades por código base.
Esto hace proliferar un subconjunto de la deuda técnica: la deuda de seguridad. La deuda de seguridad es la acumulación de vulnerabilidades en una aplicación informática que hace más difícil o incluso imposible proteger los datos y sistemas de un ataque.
Uno de los ejemplos más notorios es el de Equifax, el gigante de la información crediticia que sufrió una brecha en 2017 porque no había parcheado una vulnerabilidad conocida en Apache Struts, un popular marco de aplicaciones web de código abierto. El parche estaba disponible desde hacía meses, pero la brecha puso en peligro datos personales cruciales de más de 147 millones de personas.
Por tanto, hay que prestar más atención a las prácticas de codificación segura, ya que muchas aplicaciones han alcanzado una masa crítica no sólo en su deuda técnica, sino en la densidad de debilidades y vulnerabilidades de seguridad de la propia aplicación.
Esto puede dar lugar a enormes pérdidas, que pueden ser tangibles o intangibles:
Daños a la reputación: La pérdida de confianza de los clientes puede tener un impacto extremadamente negativo en el futuro. Esto puede incluir daños a la marca, pérdida de ventas y costosos problemas legales como resultado de una infracción.
Impacto normativo y de cumplimiento: Si un fallo de seguridad puede hacer que una empresa incumpla un plazo y/o sus obligaciones contractuales. El incumplimiento de un acuerdo de nivel de servicio puede acarrear a una empresa problemas con las autoridades reguladoras, con multas significativas.
Costes de reparación: Tras una avería o interrupción, suele ser necesario realizar trabajos adicionales para compensar la pérdida de productividad.
Prevención de la deuda técnica y de seguridad en el SDLC
Muchas organizaciones ya están cambiando su presupuesto para crear una postura de seguridad más fuerte. El año pasado, Google se comprometió a destinar 10.000 millones de dólares en 5 años a financiar un programa para reforzar la ciberseguridad. La administración Biden también solicitó 2.100 millones de dólares en el presupuesto discrecional de 2022 para la Agencia de Ciberseguridad y Seguridad de las Infraestructuras (CISA).
Proporcionar más recursos y formación para ayudar a reforzar el crecimiento profesional y los conocimientos de sus desarrolladores puede ser el primer paso para establecer normas de calidad para todo el código enviado a producción.
El coste de encontrar y corregir una vulnerabilidad o un defecto aumenta exponencialmente cuanto más tarde se encuentre y se aborde en el ciclo de desarrollo del software. Y como hemos visto, con tanto tiempo dedicado a abordar la deuda técnica y de seguridad, las organizaciones están creando sus propias pérdidas al renunciar a la innovación y al tiempo dedicado a nuevas características o productos.
En 2022, la mayoría de los equipos de desarrolladores afirmaron que DevOps o DevSecOps era su metodología preferida, y no es de extrañar por qué. DevSecOps integra la seguridad en cada etapa del ciclo de vida de desarrollo de software para ofrecer aplicaciones mejores y más seguras. Los equipos de seguridad y desarrollo siguen trabajando en silos y teniendo tensiones, pero está claro que esto tiene que cambiar para ayudar a las empresas a tener éxito. DevOps forma parte del modo en que las organizaciones intentan derribar barreras y remodelar la cultura. El objetivo fundamental de DevSecOps es aumentar la colaboración entre AppSec/Seguridad con los desarrolladores desde el principio del ciclo de vida de desarrollo del software.
Implantar una nueva forma de pensar sobre la deuda técnica y la seguridad no tiene por qué ser una hazaña monumental. Establecer una mentalidad proactiva a través de la formación es fundamental cuando se trata de mejorar la concienciación y las habilidades en materia de seguridad de la comunidad de desarrolladores de una organización. Una sólida formación en codificación segura para desarrolladores que garantice un aprendizaje continuo, interactivo, pertinente y contextual es una necesidad. Un enfoque verdaderamente holístico debe tener en cuenta lo que se necesita para fomentar una auténtica cultura de seguridad dirigida por los desarrolladores. Puede que sea necesario cambiar el enfoque de las formas típicas de gestionar y crear equipos de desarrolladores.
Crear un cambio de cultura no es fácil, pero Secure Code Warrior le ayuda a identificar a sus campeones en seguridad y a dotar a los desarrolladores y a las organizaciones de las habilidades adecuadas para afrontar los retos de seguridad actuales, en constante cambio.
Lanzar un programa de código seguro atractivo y escalable es una inversión que merece la pena por el enfoque preventivo a largo plazo de la seguridad, en lugar de la forma reactiva del pasado. En última instancia, esto ayuda a mitigar los costosos riesgos de una brecha, educar a los desarrolladores sobre cómo encontrar y corregir vulnerabilidades rápidamente y facilitar una forma más ágil de centrarse en el desarrollo de productos y acelerar el tiempo de comercialización.
Hablemos de la deuda
Casi todo el mundo sabe ya que la ciberdelincuencia se ha convertido en un grave problema al que se enfrenta nuestra economía mundial. En 2022, el coste medio de una violación de datos en Estados Unidos ascendía a 9,44 millones de dólares, frente a los 9,05 millones del año anterior. Es importante no ignorar el coste del código inseguro y su deuda técnica acumulada. Según el informe 2022 Consortium for Information and Software Quality: The Cost of Poor Software Quality, se estima que el coste de la mala calidad del software en EE.UU. ha crecido hasta los 2,41 billones de dólares y la deuda técnica de software acumulada ha crecido hasta los 1,52 billones de dólares.
Los crecientes costes de abordar el código inseguro y su deuda técnica se han convertido en el mayor obstáculo para realizar cualquier cambio en las bases de código existentes, dejándolas así vulnerables a la explotación y a las amenazas externas. El estado de la seguridad del software se enfrenta a una crisis existencial: sabemos que tenemos que mejorar nuestra postura de seguridad y abordar la deuda técnica acumulada, pero las barreras son enormes:
- Se calcula que en EE.UU. hay unos 300.000 puestos de trabajo vacantes para desarrolladores de software e informáticos, con una tasa de crecimiento prevista del 15%.
- Se prevé que en 2025 el 40% de los presupuestos de TI se destinarán simplemente a mantener la deuda tecnológica.
- 1/3 de las horas semanales de los desarrolladores se dedican, por término medio, a hacer frente a la deuda tecnológica.
Las soluciones rápidas son arriesgadas y cuestan más a largo plazo
¿Qué es la deuda técnica y por qué es tan importante? La deuda técnica se acumula cuando los responsables de la toma de decisiones optan por una solución a corto plazo para un problema de desarrollo de software, en lugar de una solución más exhaustiva y a largo plazo. Esto conlleva un importante coste oculto que las organizaciones deben pagar más adelante. Al igual que una tarjeta de crédito al límite, la deuda técnica tiene dos componentes principales:
- Principal : se refiere al coste total de refactorizar o arreglar el software para que alcance un nivel deseado de mantenibilidad y seguridad.
- Interés: el esfuerzo adicional que los desarrolladores dedican a realizar esos cambios para abordar únicamente la deuda técnica, y no nuevas funcionalidades. Cada minuto invertido en código que no es del todo correcto añade interés a la deuda.
Se puede llegar a un estado de "quiebra técnica" cuando el coste de las nuevas funciones, la corrección de errores y el mantenimiento supera el presupuesto del proyecto, lo que hunde considerablemente el valor de la aplicación informática.
Sin embargo, una cierta acumulación de deudas, como en la vida, es normal y, en la mayoría de los casos, algo esperado.
Lo ideal sería que todos los desarrolladores de software redujeran al máximo los errores antes de enviar el código. Sin embargo, se enfrentan a una difícil disyuntiva: para ser competitiva, una organización puede querer entregar funciones o productos a los clientes rápidamente a un coste mínimo. Como resultado, la calidad de la aplicación se resiente porque los KPI de los desarrolladores se basan en la rapidez de la entrega y en el coste inicial de construirla. Lo que no se tiene en cuenta son las deficiencias acumuladas y las vulnerabilidades potenciales del código. Esto lo deja listo para errores o vulnerabilidades de seguridad más adelante o, peor aún, para ser explotado por malos actores.
Pero ahí está el enigma: ¿hay alguna forma diferente de lanzar productos rápidamente sin acumular una enorme deuda técnica?
El coste de encontrar y corregir deficiencias y vulnerabilidades es el mayor gasto del ciclo de vida de desarrollo de software. Cuanto antes se detecten los problemas en el ciclo de vida del desarrollo, más rentable será la entrega global.
La deuda técnica puede convertirse en deuda de seguridad
Muchos desarrolladores intentan sortear este inconveniente recurriendo al código fuente abierto para avanzar con rapidez y, en el mejor de los casos, utilizar una solución ya probada. Sin embargo, depender en gran medida del software de código abierto a menudo presenta sus propios riesgos:
- El 82% de los componentes de código abierto no estaban actualizados (es decir, no tenían parches o no estaban bien soportados).
- El 75% de las bases de código contenían vulnerabilidades (frente al 60% en 2018), y el 49% vulnerabilidades de alto riesgo
- Se identificó una media de 82 vulnerabilidades por código base.
Esto hace proliferar un subconjunto de la deuda técnica: la deuda de seguridad. La deuda de seguridad es la acumulación de vulnerabilidades en una aplicación informática que hace más difícil o incluso imposible proteger los datos y sistemas de un ataque.
Uno de los ejemplos más notorios es el de Equifax, el gigante de la información crediticia que sufrió una brecha en 2017 porque no había parcheado una vulnerabilidad conocida en Apache Struts, un popular marco de aplicaciones web de código abierto. El parche estaba disponible desde hacía meses, pero la brecha puso en peligro datos personales cruciales de más de 147 millones de personas.
Por tanto, hay que prestar más atención a las prácticas de codificación segura, ya que muchas aplicaciones han alcanzado una masa crítica no sólo en su deuda técnica, sino en la densidad de debilidades y vulnerabilidades de seguridad de la propia aplicación.
Esto puede dar lugar a enormes pérdidas, que pueden ser tangibles o intangibles:
Daños a la reputación: La pérdida de confianza de los clientes puede tener un impacto extremadamente negativo en el futuro. Esto puede incluir daños a la marca, pérdida de ventas y costosos problemas legales como resultado de una infracción.
Impacto normativo y de cumplimiento: Si un fallo de seguridad puede hacer que una empresa incumpla un plazo y/o sus obligaciones contractuales. El incumplimiento de un acuerdo de nivel de servicio puede acarrear a una empresa problemas con las autoridades reguladoras, con multas significativas.
Costes de reparación: Tras una avería o interrupción, suele ser necesario realizar trabajos adicionales para compensar la pérdida de productividad.
Prevención de la deuda técnica y de seguridad en el SDLC
Muchas organizaciones ya están cambiando su presupuesto para crear una postura de seguridad más fuerte. El año pasado, Google se comprometió a destinar 10.000 millones de dólares en 5 años a financiar un programa para reforzar la ciberseguridad. La administración Biden también solicitó 2.100 millones de dólares en el presupuesto discrecional de 2022 para la Agencia de Ciberseguridad y Seguridad de las Infraestructuras (CISA).
Proporcionar más recursos y formación para ayudar a reforzar el crecimiento profesional y los conocimientos de sus desarrolladores puede ser el primer paso para establecer normas de calidad para todo el código enviado a producción.
El coste de encontrar y corregir una vulnerabilidad o un defecto aumenta exponencialmente cuanto más tarde se encuentre y se aborde en el ciclo de desarrollo del software. Y como hemos visto, con tanto tiempo dedicado a abordar la deuda técnica y de seguridad, las organizaciones están creando sus propias pérdidas al renunciar a la innovación y al tiempo dedicado a nuevas características o productos.
En 2022, la mayoría de los equipos de desarrolladores afirmaron que DevOps o DevSecOps era su metodología preferida, y no es de extrañar por qué. DevSecOps integra la seguridad en cada etapa del ciclo de vida de desarrollo de software para ofrecer aplicaciones mejores y más seguras. Los equipos de seguridad y desarrollo siguen trabajando en silos y teniendo tensiones, pero está claro que esto tiene que cambiar para ayudar a las empresas a tener éxito. DevOps forma parte del modo en que las organizaciones intentan derribar barreras y remodelar la cultura. El objetivo fundamental de DevSecOps es aumentar la colaboración entre AppSec/Seguridad con los desarrolladores desde el principio del ciclo de vida de desarrollo del software.
Implantar una nueva forma de pensar sobre la deuda técnica y la seguridad no tiene por qué ser una hazaña monumental. Establecer una mentalidad proactiva a través de la formación es fundamental cuando se trata de mejorar la concienciación y las habilidades en materia de seguridad de la comunidad de desarrolladores de una organización. Una sólida formación en codificación segura para desarrolladores que garantice un aprendizaje continuo, interactivo, pertinente y contextual es una necesidad. Un enfoque verdaderamente holístico debe tener en cuenta lo que se necesita para fomentar una auténtica cultura de seguridad dirigida por los desarrolladores. Puede que sea necesario cambiar el enfoque de las formas típicas de gestionar y crear equipos de desarrolladores.
Crear un cambio de cultura no es fácil, pero Secure Code Warrior le ayuda a identificar a sus campeones en seguridad y a dotar a los desarrolladores y a las organizaciones de las habilidades adecuadas para afrontar los retos de seguridad actuales, en constante cambio.
Lanzar un programa de código seguro atractivo y escalable es una inversión que merece la pena por el enfoque preventivo a largo plazo de la seguridad, en lugar de la forma reactiva del pasado. En última instancia, esto ayuda a mitigar los costosos riesgos de una brecha, educar a los desarrolladores sobre cómo encontrar y corregir vulnerabilidades rápidamente y facilitar una forma más ágil de centrarse en el desarrollo de productos y acelerar el tiempo de comercialización.
Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Ver el informeReservar una demostraciónSecure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Reservar una demostraciónTaylor Broadfoot-Nymark es Directora de Marketing de Producto en Secure Code Warrior. Ha escrito varios artículos sobre ciberseguridad y aprendizaje ágil, y también dirige lanzamientos de productos, estrategia GTM y defensa del cliente.
Hablemos de la deuda
Casi todo el mundo sabe ya que la ciberdelincuencia se ha convertido en un grave problema al que se enfrenta nuestra economía mundial. En 2022, el coste medio de una violación de datos en Estados Unidos ascendía a 9,44 millones de dólares, frente a los 9,05 millones del año anterior. Es importante no ignorar el coste del código inseguro y su deuda técnica acumulada. Según el informe 2022 Consortium for Information and Software Quality: The Cost of Poor Software Quality, se estima que el coste de la mala calidad del software en EE.UU. ha crecido hasta los 2,41 billones de dólares y la deuda técnica de software acumulada ha crecido hasta los 1,52 billones de dólares.
Los crecientes costes de abordar el código inseguro y su deuda técnica se han convertido en el mayor obstáculo para realizar cualquier cambio en las bases de código existentes, dejándolas así vulnerables a la explotación y a las amenazas externas. El estado de la seguridad del software se enfrenta a una crisis existencial: sabemos que tenemos que mejorar nuestra postura de seguridad y abordar la deuda técnica acumulada, pero las barreras son enormes:
- Se calcula que en EE.UU. hay unos 300.000 puestos de trabajo vacantes para desarrolladores de software e informáticos, con una tasa de crecimiento prevista del 15%.
- Se prevé que en 2025 el 40% de los presupuestos de TI se destinarán simplemente a mantener la deuda tecnológica.
- 1/3 de las horas semanales de los desarrolladores se dedican, por término medio, a hacer frente a la deuda tecnológica.
Las soluciones rápidas son arriesgadas y cuestan más a largo plazo
¿Qué es la deuda técnica y por qué es tan importante? La deuda técnica se acumula cuando los responsables de la toma de decisiones optan por una solución a corto plazo para un problema de desarrollo de software, en lugar de una solución más exhaustiva y a largo plazo. Esto conlleva un importante coste oculto que las organizaciones deben pagar más adelante. Al igual que una tarjeta de crédito al límite, la deuda técnica tiene dos componentes principales:
- Principal : se refiere al coste total de refactorizar o arreglar el software para que alcance un nivel deseado de mantenibilidad y seguridad.
- Interés: el esfuerzo adicional que los desarrolladores dedican a realizar esos cambios para abordar únicamente la deuda técnica, y no nuevas funcionalidades. Cada minuto invertido en código que no es del todo correcto añade interés a la deuda.
Se puede llegar a un estado de "quiebra técnica" cuando el coste de las nuevas funciones, la corrección de errores y el mantenimiento supera el presupuesto del proyecto, lo que hunde considerablemente el valor de la aplicación informática.
Sin embargo, una cierta acumulación de deudas, como en la vida, es normal y, en la mayoría de los casos, algo esperado.
Lo ideal sería que todos los desarrolladores de software redujeran al máximo los errores antes de enviar el código. Sin embargo, se enfrentan a una difícil disyuntiva: para ser competitiva, una organización puede querer entregar funciones o productos a los clientes rápidamente a un coste mínimo. Como resultado, la calidad de la aplicación se resiente porque los KPI de los desarrolladores se basan en la rapidez de la entrega y en el coste inicial de construirla. Lo que no se tiene en cuenta son las deficiencias acumuladas y las vulnerabilidades potenciales del código. Esto lo deja listo para errores o vulnerabilidades de seguridad más adelante o, peor aún, para ser explotado por malos actores.
Pero ahí está el enigma: ¿hay alguna forma diferente de lanzar productos rápidamente sin acumular una enorme deuda técnica?
El coste de encontrar y corregir deficiencias y vulnerabilidades es el mayor gasto del ciclo de vida de desarrollo de software. Cuanto antes se detecten los problemas en el ciclo de vida del desarrollo, más rentable será la entrega global.
La deuda técnica puede convertirse en deuda de seguridad
Muchos desarrolladores intentan sortear este inconveniente recurriendo al código fuente abierto para avanzar con rapidez y, en el mejor de los casos, utilizar una solución ya probada. Sin embargo, depender en gran medida del software de código abierto a menudo presenta sus propios riesgos:
- El 82% de los componentes de código abierto no estaban actualizados (es decir, no tenían parches o no estaban bien soportados).
- El 75% de las bases de código contenían vulnerabilidades (frente al 60% en 2018), y el 49% vulnerabilidades de alto riesgo
- Se identificó una media de 82 vulnerabilidades por código base.
Esto hace proliferar un subconjunto de la deuda técnica: la deuda de seguridad. La deuda de seguridad es la acumulación de vulnerabilidades en una aplicación informática que hace más difícil o incluso imposible proteger los datos y sistemas de un ataque.
Uno de los ejemplos más notorios es el de Equifax, el gigante de la información crediticia que sufrió una brecha en 2017 porque no había parcheado una vulnerabilidad conocida en Apache Struts, un popular marco de aplicaciones web de código abierto. El parche estaba disponible desde hacía meses, pero la brecha puso en peligro datos personales cruciales de más de 147 millones de personas.
Por tanto, hay que prestar más atención a las prácticas de codificación segura, ya que muchas aplicaciones han alcanzado una masa crítica no sólo en su deuda técnica, sino en la densidad de debilidades y vulnerabilidades de seguridad de la propia aplicación.
Esto puede dar lugar a enormes pérdidas, que pueden ser tangibles o intangibles:
Daños a la reputación: La pérdida de confianza de los clientes puede tener un impacto extremadamente negativo en el futuro. Esto puede incluir daños a la marca, pérdida de ventas y costosos problemas legales como resultado de una infracción.
Impacto normativo y de cumplimiento: Si un fallo de seguridad puede hacer que una empresa incumpla un plazo y/o sus obligaciones contractuales. El incumplimiento de un acuerdo de nivel de servicio puede acarrear a una empresa problemas con las autoridades reguladoras, con multas significativas.
Costes de reparación: Tras una avería o interrupción, suele ser necesario realizar trabajos adicionales para compensar la pérdida de productividad.
Prevención de la deuda técnica y de seguridad en el SDLC
Muchas organizaciones ya están cambiando su presupuesto para crear una postura de seguridad más fuerte. El año pasado, Google se comprometió a destinar 10.000 millones de dólares en 5 años a financiar un programa para reforzar la ciberseguridad. La administración Biden también solicitó 2.100 millones de dólares en el presupuesto discrecional de 2022 para la Agencia de Ciberseguridad y Seguridad de las Infraestructuras (CISA).
Proporcionar más recursos y formación para ayudar a reforzar el crecimiento profesional y los conocimientos de sus desarrolladores puede ser el primer paso para establecer normas de calidad para todo el código enviado a producción.
El coste de encontrar y corregir una vulnerabilidad o un defecto aumenta exponencialmente cuanto más tarde se encuentre y se aborde en el ciclo de desarrollo del software. Y como hemos visto, con tanto tiempo dedicado a abordar la deuda técnica y de seguridad, las organizaciones están creando sus propias pérdidas al renunciar a la innovación y al tiempo dedicado a nuevas características o productos.
En 2022, la mayoría de los equipos de desarrolladores afirmaron que DevOps o DevSecOps era su metodología preferida, y no es de extrañar por qué. DevSecOps integra la seguridad en cada etapa del ciclo de vida de desarrollo de software para ofrecer aplicaciones mejores y más seguras. Los equipos de seguridad y desarrollo siguen trabajando en silos y teniendo tensiones, pero está claro que esto tiene que cambiar para ayudar a las empresas a tener éxito. DevOps forma parte del modo en que las organizaciones intentan derribar barreras y remodelar la cultura. El objetivo fundamental de DevSecOps es aumentar la colaboración entre AppSec/Seguridad con los desarrolladores desde el principio del ciclo de vida de desarrollo del software.
Implantar una nueva forma de pensar sobre la deuda técnica y la seguridad no tiene por qué ser una hazaña monumental. Establecer una mentalidad proactiva a través de la formación es fundamental cuando se trata de mejorar la concienciación y las habilidades en materia de seguridad de la comunidad de desarrolladores de una organización. Una sólida formación en codificación segura para desarrolladores que garantice un aprendizaje continuo, interactivo, pertinente y contextual es una necesidad. Un enfoque verdaderamente holístico debe tener en cuenta lo que se necesita para fomentar una auténtica cultura de seguridad dirigida por los desarrolladores. Puede que sea necesario cambiar el enfoque de las formas típicas de gestionar y crear equipos de desarrolladores.
Crear un cambio de cultura no es fácil, pero Secure Code Warrior le ayuda a identificar a sus campeones en seguridad y a dotar a los desarrolladores y a las organizaciones de las habilidades adecuadas para afrontar los retos de seguridad actuales, en constante cambio.
Lanzar un programa de código seguro atractivo y escalable es una inversión que merece la pena por el enfoque preventivo a largo plazo de la seguridad, en lugar de la forma reactiva del pasado. En última instancia, esto ayuda a mitigar los costosos riesgos de una brecha, educar a los desarrolladores sobre cómo encontrar y corregir vulnerabilidades rápidamente y facilitar una forma más ágil de centrarse en el desarrollo de productos y acelerar el tiempo de comercialización.
Índice
Secure Code Warrior está a disposición de su organización para ayudarle a proteger el código a lo largo de todo el ciclo de vida de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es director de AppSec, desarrollador, CISO o cualquier persona implicada en la seguridad, podemos ayudar a su organización a reducir los riesgos asociados a un código inseguro.
Reservar una demostraciónDescargarRecursos para empezar
Evaluación comparativa de las competencias en materia de seguridad: optimización del diseño seguro en la empresa
El movimiento Secure-by-Design es el futuro del desarrollo de software seguro. Conozca los elementos clave que las empresas deben tener en cuenta cuando piensan en una iniciativa Secure-by-Design.
DigitalOcean reduce su deuda de seguridad con Secure Code Warrior
El uso por parte de DigitalOcean de la formación Secure Code Warrior ha reducido significativamente la deuda de seguridad, permitiendo a los equipos centrarse más en la innovación y la productividad. La mejora de la seguridad ha reforzado la calidad de sus productos y su ventaja competitiva. De cara al futuro, SCW Trust Score les ayudará a seguir mejorando las prácticas de seguridad y a continuar impulsando la innovación.
Recursos para empezar
La puntuación de confianza revela el valor de las iniciativas de mejora de la seguridad mediante el diseño
Nuestra investigación ha demostrado que la formación en código seguro funciona. Trust Score, que utiliza un algoritmo basado en más de 20 millones de puntos de datos de aprendizaje procedentes del trabajo de más de 250 000 alumnos en más de 600 organizaciones, revela su eficacia a la hora de reducir las vulnerabilidades y cómo hacer que la iniciativa sea aún más eficaz.
Seguridad reactiva frente a seguridad preventiva: Prevenir es mejor que curar
La idea de introducir la seguridad preventiva en el código y los sistemas heredados al mismo tiempo que en las aplicaciones más recientes puede parecer desalentadora, pero un planteamiento basado en el diseño seguro, aplicado mediante la mejora de las competencias de los desarrolladores, puede aplicar las mejores prácticas de seguridad a esos sistemas. Es la mejor oportunidad que tienen muchas organizaciones de mejorar su seguridad.
Ventajas de la evaluación comparativa de las competencias de seguridad de los desarrolladores
La creciente atención que se presta al código seguro y a los principios del diseño seguro exige que los desarrolladores reciban formación en ciberseguridad desde el principio del proceso de desarrollo de software, con herramientas como Secure Code Warrior's Trust Score, que ayudan a medir y mejorar sus progresos.
Impulsando iniciativas de seguridad por diseño para empresas con éxito significativo
Nuestro último documento de investigación, Benchmarking Security Skills: Streamlining Secure-by-Design in the Enterprise, es el resultado de un análisis profundo de iniciativas reales de Secure-by-Design a nivel empresarial y de la derivación de enfoques de mejores prácticas basados en hallazgos basados en datos.