Isang proyekto para ipatupad ang sudo at su utilities sa Rust

Ang ISRG (Internet Security Research Group), ang nagtatag ng proyektong Let's Encrypt at isang tagapagtaguyod ng HTTPS at ang pagbuo ng mga teknolohiya upang mapabuti ang seguridad sa internet, ay inihayag ang proyektong Sudo-rs, na naglalayong lumikha ng Rust na mga pagpapatupad ng sudo at su utilities, na nagbibigay-daan para sa pagpapatupad ng mga utos sa ngalan ng ibang mga user. Ang isang paunang bersyon ng Sudo-rs ay nai-publish na sa ilalim ng mga lisensya ng Apache 2.0 at MIT, ngunit hindi pa ito handa para sa malawakang paggamit. Ang trabaho sa proyekto, na nagsimula noong Disyembre 2022, ay naka-iskedyul na makumpleto sa Setyembre 2023.

Sa kasalukuyan, nakatuon ang trabaho sa pagpapatupad ng mga feature sa Sudo-rs na nagpapahintulot sa utility na magsilbi bilang isang transparent na kapalit para sa sudo sa mga karaniwang kaso ng paggamit (mga default na configuration ng sudoers sa Ubuntu, Fedora, at Debian). Kasama sa mga plano sa hinaharap ang paglikha ng library na magbibigay-daan sa pag-embed ng sudo functionality sa iba pang mga program at pagbibigay ng alternatibong paraan ng pagsasaayos na nag-aalis ng pangangailangang i-parse ang syntax ng sudoers configuration file. Ang isang variant ng su utility ay bubuo din batay sa ipinatupad na pagpapagana ng sudo. Kasama sa mga karagdagang plano ang suporta para sa SELinux, AppArmor, LDAP, mga tool sa pag-audit, ang kakayahang mag-authenticate nang hindi gumagamit ng PAM, at ang pagpapatupad ng lahat ng sudo command-line na opsyon.

Ayon sa Microsoft at Google, humigit-kumulang 70% ng mga kahinaan ay sanhi ng kawalan ng seguridad sa memorya. Ang paggamit ng Rust na wika para sa pagbuo ng su at sudo ay inaasahang mabawasan ang panganib ng mga kahinaan sa kawalan ng seguridad sa memorya at maalis ang mga error gaya ng access-after-free at buffer overruns. Ang Sudo-rs ay binuo ng mga inhinyero mula sa Ferrous Systems at Tweede Golf, na may pagpopondo mula sa mga kumpanya kabilang ang Google, Cisco, at Amazon Web Services.

Ang kaligtasan ng memorya ay ibinibigay sa Rust sa oras ng pag-compile sa pamamagitan ng pagsuri sa sanggunian, pagsubaybay sa pagmamay-ari ng bagay at panghabambuhay ng bagay (saklaw), gayundin sa pamamagitan ng pagsusuri ng kawastuhan ng pag-access sa memorya sa panahon ng pagpapatupad ng code. Nagbibigay din ang kalawang ng proteksyon laban sa mga overflow ng integer, nangangailangan ng mandatoryong pagsisimula ng mga variable na halaga bago gamitin, mas mahusay na pinangangasiwaan ang mga error sa karaniwang library, inilalapat ang konsepto ng hindi nababagong mga sanggunian at mga variable bilang default, nag-aalok ng malakas na static na pag-type upang mabawasan ang mga lohikal na error.

Pinagmulan: opennet.ru

Magdagdag ng komento