El llamado de la Casa Blanca a favor de la seguridad de la memoria trae consigo desafíos, cambios y costos

El llamado de la Casa Blanca a favor de la seguridad de la memoria trae consigo desafíos, cambios y costos

El llamado de la Casa Blanca a la seguridad de la memoria trae desafíos, cambios y costos PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

COMENTARIO

La reciente publicación “Volver a los bloques de construcción: A Path Toward Secure and Measurable Software” de la Oficina del Director Cibernético Nacional (ONCD) de la Casa Blanca proporciona detalles adicionales y dirección estratégica que respaldan la Estrategia Nacional de Ciberseguridad lanzado en marzo de 2023. La estrategia pretende transferir una parte mucho mayor de la responsabilidad de la ciberseguridad a los proveedores de software, proveedores de servicios y otras entidades que desarrollan aplicaciones de software. Este último informe proporciona una dirección más específica al enfatizar un cambio agresivo hacia lenguajes de programación seguros para la memoria con las prácticas de desarrollo de software.

El imperativo de la seguridad de la memoria

Los lenguajes de programación tradicionales suelen ser el eslabón débil en el desarrollo de software, y las vulnerabilidades de seguridad de la memoria provocan incidentes importantes. A pesar de las revisiones exhaustivas del código y otras medidas de seguridad, estas vulnerabilidades persisten y representan hasta el 70 % de los problemas de seguridad en estos idiomas. Un cambio hacia lenguajes de programación seguros para la memoria, como recomienda la hoja de ruta de la Agencia de Seguridad de Infraestructura y Ciberseguridad (CISA), es un paso crítico hacia el desarrollo de software que sea seguro por diseño.

Uno de los desafíos más abrumadores en este cambio estratégico es abordar los sistemas heredados desarrollados en C y C++. Estos sistemas heredados no sólo son numerosos sino que a menudo son críticos para las operaciones de muchas organizaciones. Reescribir estos sistemas en lenguajes modernos y seguros para la memoria puede resultar costoso y complejo, lo que provoca tiempos de inactividad en procesos empresariales críticos.

Además, las vulnerabilidades de seguridad de la memoria se observan principalmente a nivel del sistema operativo y afectan a plataformas importantes como Microsoft y Linux. Esta categorización de los problemas a nivel de tiempo de ejecución, en lugar de a nivel de aplicación, subraya el desafío más amplio en materia de ciberseguridad: la búsqueda de medidas de seguridad avanzadas debe equilibrarse con los aspectos prácticos y los costos de implementar estos cambios, especialmente para los sistemas establecidos.

Consideraciones económicas y técnicas

Muchas organizaciones enfrentan costos formidables asociados con la revisión de sistemas más antiguos. Cambiar los protocolos de codificación no es solo una decisión técnica sino también estratégica para garantizar la seguridad de la infraestructura digital del futuro. Como resultado, los tomadores de decisiones que consideran cuándo emprender la transición deben evaluar los impactos financieros y operativos inmediatos versus los beneficios a largo plazo.

Afortunadamente, ya se han desarrollado innovaciones tecnológicas que pueden reducir el costo y la interrupción de la transición a un código más seguro. Por ejemplo, las herramientas de análisis de código pueden analizar aplicaciones heredadas e identificar de forma semiautónoma instancias en las que el código C o Python se ejecuta sin el aislamiento adecuado. Y debido a los recientes avances en la tecnología de compilación, incluso las peores prácticas de codificación inseguras pueden protegerse si se escriben en un lenguaje más antiguo. Estos desarrollos deberían reducir significativamente las barreras para la adopción de prácticas de codificación seguras para organizaciones de cualquier tamaño.

Un esfuerzo colaborativo hacia un futuro seguro

Los formuladores de políticas y los proveedores deben colaborar estrechamente para equilibrar la mejora de la seguridad con el mantenimiento de los servicios de software esenciales. Adoptar lenguajes de programación seguros para la memoria, como recomienda la ONCD, es un paso crucial en este viaje y es integral para avanzar en nuestra ciberseguridad colectiva. 

Varios líderes de la industria ya han realizado importantes inversiones en lenguajes seguros para la memoria. Ejemplos incluyen: 

  • Lenguaje de programación Rust de Mozilla: Con su énfasis en la seguridad de la memoria, Rust ofrece una alternativa sólida a los lenguajes de programación tradicionales que combina seguridad y rendimiento.

  • La inversión de Microsoft en Rust: Al reconocer que los lenguajes más antiguos tienen limitaciones, Microsoft adoptó Rust y lo utilizó en varios proyectos nuevos donde la seguridad de la memoria era una preocupación.

  • Esfuerzos de seguridad de la memoria de Google: Google ha invertido recursos considerables para encontrar y mitigar las vulnerabilidades de seguridad de la memoria y ha pedido el uso de lenguajes seguros para la memoria en nuevos desarrollos. La semana pasada, Google publicó un nuevo informe de investigación, "Seguro por diseño: la perspectiva de Google sobre la seguridad de la memoria", que aboga por una estrategia de seguridad por diseño. El informe se centra en la adopción de lenguajes con características sólidas de seguridad de la memoria y reconoce las limitaciones de la evolución de C++ para cumplir con estos estándares.

Avanzando: pasos prácticos para cumplir con las recomendaciones de la ONCD

El camino descrito en el último informe de la ONCD es desafiante, pero lleno de oportunidades. Exige medidas prácticas de todos los actores dentro de los ecosistemas de desarrollo de software y ciberseguridad, incluidos:

  • Educación y entrenamiento: Las organizaciones deben comprometerse a enseñar a sus equipos sobre lenguajes seguros para la memoria y prácticas de desarrollo seguras, garantizando que los desarrolladores puedan realizar los cambios necesarios.

  • Planes de transición gradual: Las organizaciones deben crear planes para la transición de los sistemas heredados a lenguajes manejables y seguros para la memoria. Deben abordar primero las áreas más críticas y escalonar el proyecto lentamente para minimizar las interrupciones operativas.

  • Aprovechando las herramientas de automatización: Las organizaciones deben utilizar compiladores y herramientas modernas de análisis de código que encuentren y corrijan automáticamente prácticas de código inseguras y al mismo tiempo reduzcan la carga de los procesos manuales.

  • Política y gobernanza: Las organizaciones deben desarrollar estructuras de gobernanza explícitas que incorporen la seguridad de la memoria y las prácticas de desarrollo seguras durante todo el ciclo de vida del desarrollo de software.

  • Comunidad y colaboración: Es importante destacar que las organizaciones deben llegar más allá de sus muros y a la comunidad tecnológica más amplia en foros, asociaciones y proyectos de código abierto para compartir el conocimiento, los desafíos y las soluciones en torno a la seguridad de la memoria que conlleva este viaje.

Mejorar seguridad en las aplicaciones que impulsan la economía digital es una tarea elevada y compleja pero necesaria que requiere una colaboración continua entre los sectores público y privado. El último informe de la ONCD es un próximo paso sólido en la articulación de la estrategia; sin embargo, se necesita más voluntad para hacer realidad la visión. La transición a lenguajes de codificación seguros para la memoria para nuevas aplicaciones y la actualización del código heredado son desafíos enormes. Sin embargo, se están logrando avances con los avances recientes en el análisis de software y las tecnologías de compilación y los compromisos demostrados por muchos líderes tecnológicos globales.

Sello de tiempo:

Mas de Lectura oscura