უკან დაბრუნება

UEFI-ის პროგრამულ უზრუნველყოფაში კოდის შესრულების ხარვეზი სერვერების უმეტესობას ეხება
SiTech AI Team3 წთ. საკითხავი

UEFI-ის პროგრამულ უზრუნველყოფაში კოდის შესრულების ხარვეზი სერვერების უმეტესობას ეხება

EDK2-ის ICMP პარსერში მეხსიერების დაზიანების ხარვეზი, CVE-2026-97631, საშუალებას აძლევს თავდამსხმელებს კოდი გაუშვან ოპერაციული სისტემის ჩატვირთვამდე და მანამ, სანამ ფირმვერი Secure Boot-ის მსგავს დაცვებს ამოქმედებს, ადგილობრივი ქსელიდან ჩამტვირთავ სერვერებზე.

TianoCore EDK II-ში, რომელზეც UEFI-ის ჩამტვირთავი ფირმვერის დიდი ნაწილია აგებული, კრიტიკული კოდის შესრულების ხარვეზი იანვრისთვის დაგეგმილ კოორდინირებულ გამჟღავნებამდე საჯაროდ ცნობილი გახდა. ხარვეზი, რომელიც CVE-2026-97631 კოდით აღინიშნა, 10-დან 9,5 ქულით შეფასდა და ეხება ფირმვერს, რომელსაც მსოფლიოს სერვერების მწარმოებლებისა და მონაცემთა ცენტრების უმეტესობა იყენებს; თუმცა რისკის ქვეშ მხოლოდ ის ორგანიზაციები არიან, რომელთა მოწყობილობებიც ქსელიდან იტვირთება.

მეხსიერების დაზიანება PXE-ით ჩატვირთვისას

CVE-2026-97631 16 წლის ბუფერის გადავსებაა PXE-Base Code დრაივერში (NetworkPkg/UefiPxeBcDxe), რომელიც სერვერებს, შენახვის მოწყობილობებსა და სხვა მოწყობილობებს ადგილობრივი ქსელიდან ჩამოტვირთული კოდით ჩატვირთვის საშუალებას აძლევს. წინასწარი ჩატვირთვის გარემოში დრაივერი ICMP შეცდომის შეტყობინებებზე მიღების მოთხოვნას ღიად ინახავს და თითოეულ შეტყობინებას ფიქსირებულ 504-ბაიტიან Mode.IcmpError ველში აკოპირებს. კოპირების დამუშავება არასწორია როგორც IPv4-ის, ისე IPv6-ის დამმუშავებლებში, ამიტომ გადაჭარბებულ შეტყობინებას ველის მიღმა თავდამსხმელის მიერ კონტროლირებადი ბაიტების ჩაწერა შეუძლია. მავნე შიდა პირს ან ჰაკერს, რომელსაც ადგილობრივ ქსელზე დაბალი დონის წვდომა აქვს, PXE-ით ჩატვირთვისას ასეთი შეცდომის შეტყობინების გაგზავნა და CPU-ზე მომუშავე UEFI მოდულის დაზიანება შეუძლია. კოდი ring 0-ში მუშაობს, სანამ ოპერაციული სისტემა ჩაიტვირთება და სანამ ფირმვერი Secure Boot-ისა და ჩატვირთვისას ყველა კოდზე, მათ შორის TPM-ზე, გავრცელებული ნდობის ჯაჭვის მსგავს დაცვებს ამოქმედებს.

გამჟღავნება ნაადრევად მოხდა

ხარვეზი აღმოაჩინეს Anthropic-ის ალექს მატროსოვმა და Google-ის დენ ჰოლმსმა, რომლებიც შეთანხმდნენ, რომ მას იანვრისთვის დაგეგმილ კოორდინირებულ გამჟღავნებამდე საიდუმლოდ შეინახავდნენ. AMI-მა გასულ თვეში გამოაქვეყნა pull request, რომელშიც ხარვეზი დეტალურად იყო აღწერილი და კოდის შესწორებაც შედიოდა, ხოლო TianoCore Project-ის წევრებმა გასულ კვირას საჯარო გაფრთხილება გამოსცეს მას შემდეგ, რაც პოსტმა აღმომჩენების ყურადღება მიიპყრო. ვინაიდან შესწორების კოდი საჯაროდ ხელმისაწვდომია, გამოცდილი ჰაკერებისთვის ტრივიალური იქნება იმის გარკვევა, თუ როგორ ამუშავდება ხარვეზი, და მოქმედი ექსპლოიტების აწყობა. ხარვეზის მიერ მიწოდებულ საბოლოო ტვირთს მუდმივობა არ აქვს, ანუ ის მხოლოდ ერთხელ მუშაობს, თუმცა შეიძლება გზა გაუხსნას სხვა ტვირთს, რომელიც ყოველი ჩატვირთვის დასაწყისში მუშაობს.

ვის ეხება

UEFI-ის თითქმის ყველა მომწოდებელი, მათ შორის AMI, Insyde და Phoenix, EDK2-ის საცნობარო კოდს ფართოდ იყენებს; Microsoft-ის გამაგრებული EDK2 ფორკი Project Mu-ც მოწყვლადი კომპონენტის შემცველ კოდს იყენებდა. ხარვეზი არ ეხება სახლისა და მცირე ოფისის მომხმარებლებს ან მათ, ვინც მხოლოდ დისკიდან ტვირთავს. ის მხოლოდ იმ ორგანიზაციებს ეხება, რომელთა მოწყობილობებიც ადგილობრივი ქსელიდან ან, შესაძლოა, ინტერნეტთან დაკავშირებული რესურსებიდან იტვირთება, და მაშინაც მხოლოდ იმ შემთხვევაში, როცა ფირმვერი EDK2-ს ეყრდნობა და იყენებს PXE-ის ფუნქციონალს, რომელიც ნაგულისხმევად ჩართულია. ადგილობრივ ქსელზე გარკვეული კონტროლი წინაპირობაა, რაც, სავარაუდოდ, ექსპლუატაციას შიდა პირებით ან ისეთი თავდამსხმელებით ზღუდავს, როგორებიც არიან სახელმწიფო ჯგუფები ან გამომძალველი პროგრამების ოპერატორები, რომლებმაც დაბალი დონის წვდომა მოიპოვეს და სისტემის უფლებების ამაღლებას ცდილობენ. ჯერჯერობით არ არსებობს მტკიცებულება, რომ CVE-2026-97631 ქსელში შესვლის საწყის წერტილს იძლევა. ფირმვერის უსაფრთხოების კომპანია Eclypsium-ის მთავარმა მკვლევარმა ჯესი მაიკლმა განაცხადა, რომ თავდამსხმელმა სამიზნე სისტემაში კონკრეტული მისამართები უნდა გამოიცნოს, ამიტომ ექსპლოიტი თითოეული მოდელის, ვერსიისა და კონფიგურაციისთვის ცალკე უნდა მორგდეს და არა სხვადასხვა მოწყობილობაზე მუშაობდეს. Intel-მა განაცხადა, რომ უსაფრთხოების მხარდაჭერის ქვეშ მყოფი მისი კომერციული პროდუქტებიდან არცერთი არ არის ცნობილი როგორც დაზარალებული და რომ ის მოწყვლად EDK2 ფუნქციონალს საკუთარ საცნობარო კოდში არ მოიცავს, Arm-მა კი განაცხადა, რომ პრობლემა მის პროდუქტების პორტფელს უშუალოდ არ ეხება. თუმცა საჯაროდ ხელმისაწვდომი Intel-ის საცნობარო კოდი EDK2-ზე მიუთითებს, Arm-ის მიერ მოწოდებული ფირმვერიც მნიშვნელოვნად ეყრდნობა EDK2-ს, ამიტომ, მიუხედავად იმისა, რომ ზოგიერთი პლატფორმა შესაძლოა EDK2-ის კოდისგან თავისუფალი იყოს, ყველა სერვერის მომხმარებლისთვის გონივრულია გაარკვიოს, ეხება თუ არა მათ CVE-2026-97631. AMD-მა, Phoenix Technologies-მა, AMI-მა, Microsoft-მა და Amazon-მა გამოქვეყნებამდე პასუხი არ გასცეს.

რა შეუძლიათ დამცველებს

დაზარალებულებმა თავიანთი სისტემების ჩამტვირთავი ფირმვერის მწარმოებელს უნდა მიმართონ და მითითებები მიიღონ. თუ შესაძლებელია, ქსელიდან ჩატვირთვის შესაძლებლობები დროებით მაინც უნდა გამორთონ. ფირმვერის კონფიგურაციაში TPM-ისა და Secure Boot-ის მსგავსი უსაფრთხოების ფუნქციები სადაც შესაძლებელია ჩართული უნდა იყოს, თუმცა ეს დაცვები ამ კონკრეტული საფრთხისგან არ იცავს. ღირს ლოგების მონიტორინგი ექსპლუატაციის მცდელობების ნიშნებზე. Metasploit-ის შემქმნელმა და Dragos-ის კვლევის მთავარმა ოფიცერმა HD Moore-მა თქვა, რომ მოკლევადიანი ქსელური წვდომის მქონე და ახლომდებარე მოწყობილობის ან სერვერის კომპრომეტირების მიზნის მქონე თავდამსხმელს შეუძლია პროგრამის ნაკადის გატაცება, სანამ ჩატვირთვის პროცესს TPM-ის მსგავს მგრძნობიარე კომპონენტებზე წვდომა აქვს, რაც შესაძლოა დისკის დაშიფვრის დარღვევით დასრულდეს.

წყაროები: Ars Technica

გააზიარე ციფრული გამოცდილება

SiTech

SiTech — AI-გაძლიერებული ვებ დეველოპმენტი

ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.