Este tema se ha vuelto muy divertido, al menos para mi, desde Cloudstrike y todo el drama de Automattic vs WPEngine.
¿Que es una actualizacion automatica? Es la descarga e instalacion pre-consentida de nuevas versiones en un equipo.
Normalmente estas actualizaciones en buena fe, se hacen para:
Dar mas seguridad
Dar mas funciones
Resolver problemas
Y en algunas ocasiones, dañar todo lo funcional e inyectar software dañino o cambiar politicas.
Explicare las primeras, si hablamos de sistemas en linea, conceptualmente las actualizaciones dan mas seguridad al implementar nuevos mecanismos de proteccion, es bastante autoexplicativo, se descubren vulnerabilidades o se estandarizan nuevos mecanismos de seguridad, se implementan y la aplicacion y sus servicios son mas seguros. Digamos log4j y la vulnerabilidad de ejecucion de codigo remoto, se mejora la version, se actualiza la libreria, y se reinicia el servicio. Todo sano.
El 2do caso, hablemos de videojuegos, un contenido descargable, o un nuevo nivel, tienden a ser adicionales (pagos o no) mediante una actualización, asi como la capacidad de mantenerse en linea, digamos en marvel rivals , o dota. Todos deberian jugar con la misma version, con las mismas caracteristicas, para que el juego sea balanceado. Todo sano nuevamente.
Resolver problemas, esto es una combinacion de lo anterior, aunque algunas actualizaciones pueden ser problemas internos, digamos los denominados bugs, fugas de memoria, crashes, entre otros. Nuevamente algo sano.
Y Finalmente el punto 4, la carnecita, el desatar el infierno sobre los sistemas. Teoricemos el siguiente escenario, digamos que una compañia de software libre, se molesta con el mundo, toma los plugins publicados en su sistema, les cambia el nombre (porque puede) y deshabilita a sus desarrolladores de acceder. Y tenemos actualizaciones automaticas, o conexiones externas a ese plugin. Nuestra web dependiente va a hacer Kapup.
Supongamos que tenemos una libreria de software libre, que descargamos en todos nuestros builds/pipelines. Siempre la ultima version. Los desarrolladores se cansan de hacer soporte gratuito, alguien les compra. El comprador cambia el repositorio o incluye spyware en la dependencia. Y nuestra aplicacion no hace Kapup, pero ahora puede ser desde ransomware hasta spyware sin nuestro conocimiento.
Supongamos que tenemos en el sistema operativo, un software que tiene accesos de alto nivel sobre el mismo. Dicho software se actualiza sin confirmacion. Hace que se corrompan los archivos del sistema operativo. Y ahora 8 millones de dispositivos no pueden iniciar.
Y todos los casos anteriores son hipoteticos, no imaginemos que pueden pasar. Esos o cualquier combinacion entre ellos.
En general el infierno puede pasar con las actualizaciones automaticas. Ya que, estan fuera del control del administrador del sistema. La confianza sistematica puede ser un problema.
Lo ideal es usar el acercamiento clasico y el criterio.
En componentes poco importantes. La actualizacion automatica puede existir
En componentes perimetrales de acceso a sistemas internos. Es mejor el riesgo de falla, que el riesgo de vulnerabilidades o backdoors. Si el componente perimetral falla, siempre puede ser reemplazado.
En componentes criticos. NO
En sistemas de conduccion de trenes, barco, aviones. NO, de hecho existen a fecha de hoy 2025. Trenes suizos que funcionan con windows 95.
Es bueno tener criterio al momento de acceder a actualizaciones automaticas. Segun el caso de uso de nuestros sistemas.