Desde Linux Darkcrizt  

Sudo-rs un proyecto para implementar sudo y su en Rust

sudo

La implementacion de sudo y su en Rust pretende mejorar la seguridad en estas utilidades

Hace poco se dio a conocer la noticia de que el ISRG (Internet Security Research Group), que es el fundador del proyecto Let’s Encrypt y promueve HTTPS y el desarrollo de tecnologías para aumentar la seguridad de Internet, presentó el proyecto Sudo-rs.

Sudo-rs se posiciona como un proyecto para crear implementaciones de las utilidades sudo y su, escritas en el lenguaje de programación Rust y que permite ejecutar comandos en nombre de otros usuarios.

Actualmente, el trabajo se centra en implementar funciones en Sudo-rs que permitan que se use como un reemplazo transparente de sudo en casos de uso típicos (configuraciones predeterminadas de sudoers en Ubuntu, Fedora y Debian).

Sudo se desarrolló por primera vez en la década de 1980. A lo largo de las décadas, se ha convertido en una herramienta esencial para realizar cambios y minimizar el riesgo para un sistema operativo. Pero debido a que está escrito en C, sudo ha experimentado muchas vulnerabilidades relacionadas con problemas de seguridad de la memoria.

En el futuro, hay planes para crear una biblioteca que permita incrustar la funcionalidad sudo en otros programas y proporcione un método de configuración alternativo que evite analizar la sintaxis del archivo de configuración de sudoers. En función de la funcionalidad sudo implementada, también se preparará una variante de la utilidad su. Además, los planes mencionan la compatibilidad con SELinux, AppArmor, LDAP, herramientas de auditoría, la capacidad de autenticarse sin usar PAM y la implementación de todas las opciones de la línea de comandos de sudo.

Según Microsoft y Google, alrededor del 70% de las vulnerabilidades son causadas por una gestión de memoria insegura. Se espera que el uso del lenguaje Rust para desarrollar su y sudo reduzca el riesgo de vulnerabilidades causadas por el manejo inseguro de la memoria y elimine la ocurrencia de errores como el acceso a un área de la memoria después de que se haya liberado y el desbordamiento del búfer.

Sudo-rs está siendo desarrollado por ingenieros de Ferrous Systems y Tweede Golf con fondos proporcionados por empresas como Google, Cisco, Amazon Web Services.

Cuando pensamos en qué software queremos invertir, pensamos principalmente en cuatro criterios de riesgo :

Muy utilizado (casi todos los servidores y/o clientes)
En un límite crítico
Desempeñando una función crítica
Escrito en lenguajes que no son seguros para la memoria (p. ej., C, C++, asm)
Sudo se ajusta perfectamente a este criterio de riesgo. Es importante que protejamos nuestro software más crítico, particularmente de las vulnerabilidades de seguridad de la memoria. Es difícil imaginar un software que sea mucho más crítico que sudo y su.

El manejo seguro de la memoria se proporciona en Rust en tiempo de compilación mediante la verificación de referencias, el seguimiento de la propiedad del objeto y la vida útil del objeto (alcance), así como mediante la evaluación de la corrección del acceso a la memoria durante la ejecución del código. Rust también brinda protección contra desbordamientos de enteros, requiere la inicialización obligatoria de los valores de las variables antes de su uso, maneja mejor los errores en la biblioteca estándar, aplica el concepto de referencias y variables inmutables de forma predeterminada, ofrece tipado estático fuerte para minimizar los errores lógicos.

Cabe mencionar que Sudo-rs ya se encuentra actualmente en desarrollo activo y no es adecuado para ningún entorno de producción. El uso de sudo-rs solo se recomienda con fines de desarrollo y prueba, por lo que se se menciona que para producción y desarrollo si se implementa Sudo-rs es casi seguro que cualquier sistema que se rompa fácilmente y no sea seguro.

Sudo-rs se encuentra bajo las licencias Apache 2.0 y MIT, y como se mencionó ya se ha publicado una versión preliminar de Sudo-rs, que aún no está lista para uso general. El proyecto, que comenzó a trabajar en diciembre de 2022, está previsto que finalice en septiembre de 2023.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.