Проект по реализации утилит sudo и su на языке Rust

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 3261
Зарегистрирован: 20.08.2022

#

Проект по реализации утилит sudo и su на языке Rust
Дата публикации:Sat, 29 Apr 2023 20:59:29 +0300




Организация ISRG (Internet Security Research Group), которая является учредителем проекта Let's Encrypt и способствует продвижению HTTPS и развитию технологий для повышения защищённости интернета, представила проект Sudo-rs по созданию написанных на языке Rust реализаций утилит sudo и su, позволяющих выполнять команды от имени других пользователей. Под лицензиями Apache 2.0 и MIT уже опубликована предварительная версия Sudo-rs, пока не готовая к повсеместному использованию. Проект, работа над которым началась в декабре 2022 года, планируют завершить в сентябре 2023 года.





В настоящее время работа сосредоточена на реализации в 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) ссылок и переменных по умолчанию, предлагает сильную статическую типизацию для минимизации логических ошибок.









Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=59053

Жизнь за Нер'зула!

Ответить