В настоящее время работа сосредоточена на реализации в Sudo-rs функций, позволяющих использовать утилиту в качестве прозрачной замены sudo в типовых сценариях использования (конфигурации sudoers по умолчанию в Ubuntu, Fedora и Debian). В будущем планируется создать библиотеку, позволяющую встраивать функциональность sudo в другие программы, и предоставить альтернативный метод настройки, дающий возможность обойтись без разбора синтаксиса файла конфигурации sudoers. На базе реализованной функциональности sudo также будет подготовлен вариант утилиты su. Дополнительно в планах упоминается поддержка SELinux, AppArmor, LDAP, средств аудита, возможность аутентификации без использования PAM и реализация всех опций командной строки sudo.
По данным компаний Microsoft и Google около 70% уязвимостей вызваны небезопасной работой с памятью. Предполагается, что использование языка Rust для разработки su и sudo позволит снизить риск появления уязвимостей, вызванных небезопасной работой с памятью, и исключить появление таких ошибок, как обращение к области памяти после её освобождения и выход за границы буфера. Разработка Sudo-rs ведётся инженерами из Ferrous Systems и Tweede Golf на средства, предоставленные такими компаниями, как Google, Cisco, Amazon Web Services.
Безопасная работа с памятью обеспечивается в Rust во время компиляции через проверку ссылок, отслеживание владения объектами и учёт времени жизни объектов (области видимости), а также через оценку корректности доступа к памяти во время выполнения кода. Rust также предоставляет средства для защиты от целочисленных переполнений, требует обязательной инициализации значений переменных перед использованием, лучше обрабатывает ошибки в стандартной библиотеке, применяет концепцию неизменяемости (immutable) ссылок и переменных по умолчанию, предлагает сильную статическую типизацию для минимизации логических ошибок.
Источник: http://www.opennet.ru/opennews/art.shtml?num=59053