ATA 749 Actualizaciones ROTAS en UBUNTU por las Coreutils en Rust馃毃
Description
El t铆tulo de este episodio podr铆a sonar a clickbait apocal铆ptico, pero te aseguro que cada palabra es real. Durante un periodo cr铆tico, las actualizaciones autom谩ticas de seguridad en Ubuntu estuvieron completamente rotas. 驴El culpable? Un ambicioso proyecto para modernizar Linux reemplazando utilidades b谩sicas escritas en C por versiones en Rust. Este proceso de "oxidaci贸n" nos ha dejado dos fallos cr铆ticos que analizaremos a fondo.
En este programa urgente, no solo destripamos lo que fall贸, sino que lo convertimos en un caso de 茅xito rotundo para el desarrollo de c贸digo abierto. Si eres usuario de Linux, especialmente de Ubuntu, tienes que escuchar esto para entender por qu茅 este tropiezo es, en realidad, un gran salto adelante para la seguridad de tu sistema.
Ubuntu, en su versi贸n intermedia 25.10 (Questing Quokka), decidi贸 introducir dos piezas de software fundamentales escritas en Rust para probar su estabilidad antes de una versi贸n LTS:
uutils coreutils: La reimplementaci贸n de los comandos b谩sicos de GNU (como ls, cp, y el protagonista de esta historia, date).
sudo-rs: La reimplementaci贸n del comando sudo, la puerta de entrada a los permisos de administrador (root).
Ambas fallaron poco despu茅s del lanzamiento. Analizaremos dos problemas principales:
El Problema: El comando date -r se utiliza para obtener la hora de 煤ltima modificaci贸n de un archivo. La versi贸n en Rust de las coreutils ten铆a un error l贸gico: en lugar de devolver la fecha del archivo, siempre devolv铆a la fecha y hora actual del sistema.
La Consecuencia Desastrosa: Te explico c贸mo esta simple incorrecci贸n l贸gica rompi贸 el mecanismo de actualizaciones autom谩ticas desatendidas (unattended-upgrades). El sistema, al consultar la fecha de un archivo de referencia con el comando defectuoso, cre铆a que la 煤ltima actualizaci贸n se hab铆a hecho "ahora mismo", y por lo tanto, no ejecutaba ninguna nueva b煤squeda ni instalaci贸n de parches de seguridad. Un bug silencioso que te deja vulnerable. Esta misma l贸gica fallida puede afectar scripts de backup que comprueban la antig眉edad de las copias de seguridad con date -r.
Exposici贸n de la Contrase帽a: Cuando un usuario comenzaba a introducir su clave de sudo y el tiempo de espera (timeout) expiraba, el c贸digo defectuoso de sudo-rs expon铆a en pantalla y potencialmente en el historial de la shell la parte de la contrase帽a que ya se hab铆a tecleado. 隆Un fallo de seguridad grave que compromet铆a la confidencialidad de tu clave de administrador!
Fallo de Autenticaci贸n Avanzada: Tambi茅n se produjo un fallo m谩s t茅cnico relacionado con la gesti贸n de las credenciales de root bajo ciertas configuraciones (targetpw o rootpw), permitiendo un posible bypass de autenticaci贸n a usuarios locales que reutilizaran "pases r谩pidos" temporales defectuosos.
La parte m谩s constructiva de esta historia es la velocidad de respuesta. Aqu铆 es donde se demuestra el valor real de probar estos cambios en versiones intermedias:
Respuesta Inmediata.
Divulgaci贸n Coordinada (CVD).
El Valor de la LTS.
No podemos olvidar el objetivo principal. El uso de Rust en uutils coreutils y sudo-rs busca la seguridad de la memoria, eliminando las causas fundamentales de la mayor铆a de los fallos de seguridad cr铆ticos en el c贸digo C que tienen d茅cadas de antig眉edad.
M谩s informaci贸n y enlaces en las notas del episodio
- 馃寪 Aqu铆 lo puedes encontrar todo 馃憠 https://atareao.es
- 鉁堬笍 Telegram (el grupo) 馃憠 https://t.me/atareao_con_linux
- 鉁堬笍 Telegram (el canal) 馃憠 https://t.me/canal_atareao
- 馃Γ Mastodon 馃憠 https://mastodon.social/@atareao
- 馃惁 Twitter 馃憠 https://twitter.com/atareao
- 馃悪 GitHub 馃憠 https://github.com/atareao























