ექსპლუატაციის შემთხვევაში, ამ ხარვეზებმა თავდამსხმელებს შეუძლიათ მიიღონ არაავტორიზებული წვდომა სენსიტიურ ინფორმაციაზე ან ზოგადად გამოიწვიოს პრობლემები
გამოვლენილია დაუცველობა (უკვე ჩამოთვლილია CVE-2023-22809-ში) en sudo პაკეტი, რომელიც გამოიყენება სხვა მომხმარებლების სახელით ბრძანებების შესასრულებლად, რაც საშუალებას აძლევს ადგილობრივ მომხმარებელს შეცვალოს ნებისმიერი ფაილი სისტემაში, რაც, თავის მხრივ, საშუალებას აძლევს root უფლებების მოპოვებას სისტემის /etc/shadow ან სკრიპტების შეცვლით. .
დაუცველობის გამოსაყენებლად, მომხმარებელს უნდა ჰქონდეს უფლება გაუშვას sudoedit უტილიტა ან „sudo“ „-e“ დროშით sudoers-ში.
შეცდომა აღნიშნავს, რომ sudo (su “do”) აძლევს სისტემის ადმინისტრატორს უფლებამოსილების დელეგირებას, რათა გარკვეულ მომხმარებლებს (ან მომხმარებელთა ჯგუფებს) მისცეს გარკვეული (ან ყველა) ბრძანების გაშვების შესაძლებლობა, როგორც root ან სხვა მომხმარებელი გაშვებისას. უზრუნველყოფს აუდიტის კვალს. ბრძანებები და მათი არგუმენტები.
დაუცველობა განპირობებულია "–" სიმბოლოების სათანადო დამუშავების არარსებობით გარემოს ცვლადების ანალიზის დროს, რომლებიც განსაზღვრავენ პროგრამის რედაქტირებას.
სუდოში, თანმიმდევრობა "–" გამოიყენება რედაქტორისა და არგუმენტების გამოსაყოფად რედაქტირებადი ფაილების სიიდან. თავდამსხმელს შეუძლია დაამატოთ „–ფაილი“ SUDO_EDITOR გარემოს ცვლადებში, ვიზუალური ან EDITOR რედაქტორისკენ მიმავალი გზის შემდეგ, რაც გამოიწვევს მითითებული ფაილის რედაქტირებას ამაღლებული პრივილეგიებით მომხმარებლის ფაილზე წვდომის წესების შემოწმების გარეშე.
დაუცველობის დეტალების შესახებ აღნიშნულია შემდეგი:
როდესაც გაშვებულია როგორც sudo -e ან sudoedit, sudo შეიძლება გამოყენებულ იქნას პრივილეგიებით ფაილების რედაქტირებისთვის, ხოლო რედაქტორის როგორც არაპრივილეგირებული მომხმარებლის გაშვებისას. sudoers პოლიტიკის ფაილი განსაზღვრავს, შეუძლია თუ არა მომხმარებელს მითითებული ფაილების რედაქტირება. მოსალოდნელია, რომ sudoers პოლიტიკის მოდულმა დააბრუნოს არგუმენტის ვექტორი sudo ფრონტზე, რომელიც შეიცავს რედაქტორს, რათა იმუშაოს რედაქტირებულ ფაილებთან ერთად, გამოყოფილი არგუმენტით "–".
La მოვლენების თანმიმდევრობა ასეთია:
- sudo front-end აგზავნის პოლიტიკის შემოწმების მოთხოვნას sudoers მოდულს, რომელიც მიუთითებს, რომ მომხმარებელმა გაუშვა sudoedit და მოიცავს ფაილების სიას, რომლებიც უნდა შეცვალონ.
- sudoers პოლიტიკის მოდული იყენებს sudoers (ან LDAP) ფაილს იმის დასადგენად, შეუძლია თუ არა მომხმარებელს ფაილების რედაქტირება.
- თუ პოლიტიკის შემოწმება წარმატებით დასრულდა, sudoers პოლიტიკის მოდული ირჩევს რედაქტორს მომხმარებლის გარემოში SUDO_EDITOR, VISUAL და EDITOR ცვლადებზე დაყრდნობით.
- sudoers მოდული აყალიბებს არგუმენტის ახალ ვექტორს, რომელიც შედგება შერჩეული რედაქტორისგან. თუ რედაქტორი შეიცავს ბრძანების სტრიქონის ვარიანტებს, ის იყოფა რამდენიმე არგუმენტად.
- არგუმენტის ვექტორს ემატება „–“ გამყოფი, რასაც მოჰყვება რედაქტირებადი ფაილების სია. ეს არგუმენტის ვექტორი უბრუნდება sudo წინა მხარეს.
- sudo front-end იყენებს „–“ გამყოფს, რათა დადგინდეს რომელი ფაილი უნდა შეცვალოს. ფაილების დროებითი ასლები მზადდება მფლობელთან ერთად, რომელიც დაყენებულია მომწოდებელ მომხმარებელს.
- sudo front-end აყალიბებს არგუმენტის ახალ ვექტორს, რომელიც შედგება ყველა ელემენტისგან "–" გამყოფის წინ (რედაქტორი), რომელსაც მოჰყვება დროებითი ფაილის ბილიკები. ახალი არგუმენტის ვექტორი შესრულებულია როგორც მომხმარებელი, რომელიც მას უწოდებს.
- დროებითი ფაილები კოპირდება თავდაპირველ ადგილას და დროებითი ვერსიები იშლება.
- დაუცველობა არსებობს, თუ მომხმარებლის მიერ მითითებული რედაქტორი ასევე შეიცავს "–" არგუმენტს. ეს მოატყუებს sudo-ს ფრონტ-ენდს, რომ რედაქტორში "–" არგუმენტის შემდეგ ყველაფერი განიხილოს, როგორც რედაქტირებისთვის ფაილი, მაშინაც კი, თუ sudoers პოლიტიკა ამის საშუალებას არ იძლევა.
დაუცველობა წარმოდგენილია 1.8.0 ფილიალიდან და დაფიქსირდა მაკორექტირებელ განახლებაში sudo 1.9.12p2. დისტრიბუციებში პაკეტის განახლებების გამოშვება შეგიძლიათ იხილოთ გვერდებზე: Debian, Ubuntu, Gentoo, rhel, სუსე, Fedora, Arch, FreeBSD y NetBSD.
დაბოლოს, აღნიშნულია, რომ უსაფრთხოების გამოსავალად, შეგიძლიათ გამორთოთ SUDO_EDITOR, VISUAL და EDITOR გარემოს ცვლადების დამუშავება სუდოებში მითითებით:
Defaults!sudoedit env_delete+="SUDO_EDITOR VISUAL EDITOR"
წყარო: https://www.synacktiv.com/
იყავი პირველი კომენტარი