- Responsable Oficina Técnica de Seguridad Informática/Lead Consultant en Devoteam
- Alumna de la 7ª edición del Máster en Ciberderecho del Campus Internacional de Ciberseguridad.
- Responsable Oficina Técnica de Seguridad Informática/Lead Consultant en Devoteam
- Alumna de la 7ª edición del Máster en Ciberderecho del Campus Internacional de Ciberseguridad.
Crowdstrike no ha sido pionero en el campo de la introducción de errores en parches, si bien su impacto ha hecho temblar los cimientos de un modelo de interdependencias y conglomerados, que ponen una vez más en el foco si es el correcto. Pero lo que nos trae hoy aquí es qué podemos hacer nosotros antes de desplegar cualquier parche.
Vayamos al inicio, un parche es una actualización destinada a corregir errores, mejorar la funcionalidad o reforzar la seguridad de un sistema. Estos parches pueden ser menores, abordando pequeños bugs, o mayores, introduciendo cambios significativos en el sistema. Aunque los parches están diseñados para mejorar los sistemas, en ciertas ocasiones, su implementación puede provocar problemas inesperados, como en la modificación del código, que puede tener efectos secundarios no previstos.
Imaginemos una empresa de comercio electrónico que despliega un parche para mejorar la seguridad de su plataforma de pago en línea. Poco después del despliegue, los clientes comienzan a reportar problemas al intentar realizar compras. Algunos no pueden completar sus transacciones, mientras que otros ven sus pedidos duplicados o cancelados inesperadamente. La causa raíz del problema es que el parche, aunque solucionó la vulnerabilidad de seguridad, introdujo un error en la lógica de procesamiento de pagos.
Esto se habría detectado si se hubieran realizado las pruebas pertinentes, lo que implica no fiarse de los entornos aislados de pruebas, en tanto que en estos, se pueden comportar de manera diferente al entorno real a causa de las interacciones y dependencias.
Un parche defectuoso
Siguiendo el caso anterior, la falta de pruebas de compatibilidad puede significar que el parche no interactuara correctamente con ciertos módulos de gestión de inventario y procesamiento de pedidos, por lo que las transacciones no se registran adecuadamente.
Ahora pongámonos en el caso de que el parche es de seguridad. Un parche defectuoso, puede abrir nuevas brechas que los atacantes podrían explotar. Las pruebas buscan aseguran que el parche realmente refuerza la seguridad sin introducir nuevas vulnerabilidades, verificando de forma adicional que no se compromete la integridad de otros aspectos del sistema durante la implementación del parche.
Otra posible consecuencia de la falta de pruebas es que la implementación del parche puede derivar en fallos del sistema, lo que a su vez puede causar tiempo de inactividad no planificado, lo que repercute en la economía e imagen de la compañía.
Por último, pero no por ello menos importante, es que la falta de seguridad y estabilidad puede provocar incumplimientos legales, no sólo por el hecho de no haberlas realizado, sino por las repercusiones que acarrea a empresas y personas.
¿Qué pasos debemos dar antes de aplicar un parche?
-
Evaluar la necesidad, lo que implica entender la vulnerabilidad o mejora que se está corrigiendo o implementando, respectivamente
-
Tener un sistema que priorice los parches en función de su criticidad y riesgos dentro del sistema.
-
Crear un entorno de pruebas lo más similar posible al entorno de producción y probarlo con datos de prueba, evitando en la medida de lo posible el uso de datos reales.
-
Realización de pruebas exhaustivas, como las siguientes:
-
Pruebas unitarias, que son aquellas que se centran en verificar que las funciones individuales del software funcionen correctamente.
-
Si quieres ver el proyecto completo de Alba Sánchez y saber qué pasos debes dar antes de aplicar un parche, rellena el formulario y te lo mandamos a tu correo electrónico.
¿Quieres obtener el mismo conocimiento que Alba?