OpenWrt նախագծի կողմից մշակված ASU (Attended SysUpgrade) գործիքակազմում հայտնաբերվել են կրիտիկական խոցելիություններ (CVE-2024-54143), որոնք թույլ են տալիս վնասել sysupgrade.openwrt.org ծառայության կամ երրորդ կողմի ASU սերվերների միջոցով տարածված կառուցվածքային արտեֆակտները և իրականացնել հարձակվողի կողմից փոփոխված ներկառուցված ծրագրային ապահովման պատկերների տեղադրում այն օգտատերերի համակարգերում, ովքեր օգտագործում են «atted upgrade» ռեժիմը՝ selector.openwrt.org վեբ ինտերֆեյսի կամ attended.sysupgrade հրամանի տողի գործիքակազմի միջոցով ներկառուցված ծրագրային ապահովումը թարմացնելու համար։
Հարձակումը հաջողությամբ իրականացնելու համար հարձակվողին անհրաժեշտ է միայն ASU սերվերին ժողով ստեղծելու հարցում ուղարկել (ցանկացած օգտատեր կարող է այդպիսի հարցումներ ուղարկել առանց նույնականացման): Շահարկելով փաթեթների հատուկ մշակված ցուցակը՝ հարձակվողը կարող է կազմակերպել նախկինում ստեղծված վնասակար պատկերների ուղարկումը՝ ի պատասխան այլ օգտատերերի օրինական շինարարության հարցումների:
ASU ծառայությունն օգտագործվում է OpenWrt-ում՝ որոնվածի թարմացումներ ստեղծելու և տեղադրելու համար՝ չկորցնելով առկա կարգավորումները և օգտագործողի կողմից տեղադրված փաթեթները: Վեբ ինտերֆեյսի կամ հրամանի տող գործիքի միջոցով օգտատերը հարցում է ուղարկում նորացված որոնվածի պատկեր ստեղծելու համար՝ նշելով իր համակարգում տեղադրված փաթեթները: Որոշ ժամանակ անց ASU սերվերը ստեղծում է պատվիրված բովանդակությանը համապատասխան պատկեր, որից հետո օգտագործողը ներբեռնում է այն և թարթում է իր սարքի վրա: Բացի այդ, տրամադրվում է տարբերակ, որը թույլ է տալիս պահպանել առկա կարգավորումները թարմացված որոնվածում:
ASU Server-ը պատասխանատու է օգտատիրոջ հարցումների մշակման, ImageBuilder գործիքների միջոցով ավտոմատ կերպով ներկառուցված ծրագրակազմերի պատկերների կառուցման համար և նախկինում պատրաստված կառուցման ֆայլերի քեշի պահպանման համար: Եթե օգտատերը հարցում է կատարում արդեն իսկ կառուցված պատկերի համար, սերվեր և մնում է արդիական, համակարգը անմիջապես վերադարձնում է առկա պատկերը քեշից՝ առանց կառուցման գործընթացը սկսելու։
Հարձակման պահվածքը հնարավոր է դարձել երկու խոցելիության պատճառով.
- Imagebuilder գործիքակազմի build_requests.py հարցման մշակիչում կա խոցելիություն, որը թույլ է տալիս օգտագործողին կառուցման գործընթացում փոխարինել հատուկ ձևաչափված փաթեթների անունները: Խոցելիությունը պայմանավորված է փաթեթների անուններում հատուկ նիշերի պատշաճ ստուգման բացակայությամբ՝ դրանք make օգտակար ծրագրի արգումենտների մեջ օգտագործելուց առաջ: Այս խոցելիությունը շահագործելով՝ հարձակվողը կարող է սերվերի վրա ստեղծել վնասակար firmware պատկերներ, որոնք ստորագրված են ճիշտ կառուցման բանալիով:
- Util.py գրադարանում խոցելիություն է առաջացել SHA-256 հեշերի կրճատման պատճառով, որոնք օգտագործվում էին քեշում պատրաստի ներկառուցված պատկերների ստուգման համար, մինչև 12 նիշ, ինչը զգալիորեն նվազեցրել է էնտրոպիայի մակարդակը և թույլ է տվել, բախումների ընտրության միջոցով, ձևավորել վնասակար պատկեր, որի հեշը համապատասխանում է օրինական պատկերին: Imagebuilder-ի խոցելիության հետ համատեղ, հեշերի հետ կապված խնդիրը կարող է օգտագործվել հարձակվողի կողմից ASU Server-ի քեշը «աղտոտելու» և դրանում վնասակար պատկերներ տեղադրելու համար, որոնք վերադարձվում են սովորական օգտատերերի հարցումներին ի պատասխան:
Հարձակումը հնարավոր դարձրած փոփոխությունը կատարվել է հուլիսի 8-ին։ Խնդիրը լուծվել է դեկտեմբերի 4-ին։ ASU ծառայության գործունեությունը ապահովելու համար կիրառվել են առանձին անվտանգության միջոցառումներ։ սերվերներ, որոնք չեն հատվում նախագծի հիմնական կառուցման համակարգերի հետ, առանձնացված են OpenWrt Buildbot-ից և չունեն մուտք դեպի գաղտնի ռեսուրսներ, ինչպիսիք են SSH բանալիները և թվային ստորագրություններ գեներացնելու համար նախատեսված վկայագրերը։
Ենթադրվում է, որ OpenWrt-ի մշակողները չեն գտել նախագծի ենթակառուցվածքի խախտման հետքեր, սակայն ապահով կողմում լինելու համար նրանք նորից տեղադրել են այն համակարգերը, որոնց վրա խոցելի բաղադրիչներն աշխատում էին զրոյից: Խնդիրը չի ազդել downloads.openwrt.org կայքի միջոցով տարածված պաշտոնական պատկերների վրա, և հավաքման մատյանները վերլուծելիս չարամիտ հարցումների հետքեր չեն հայտնաբերվել։ Միևնույն ժամանակ, քանի որ ASU սերվերները ավտոմատ կերպով մաքրում են 7 օրից ավելի հին հավաքույթները, պարզվեց, որ անհնար է հին հավաքների աուդիտը:
OpenWrt ենթակառուցվածքի միջոցով վնասակար պատկերներ տարածելու համար հայտնաբերված խոցելիությունները գործնականում օգտագործելու հավանականությունը OpenWrt-ի ներկայացուցիչների կողմից գնահատվում է զրոյի մոտ, սակայն ASU օգտատերերին խորհուրդ է տրվում իրենց սարքերի OpenWrt ներկառուցված ծրագիրը փոխարինել նույն տարբերակով։
Source: opennet.ru
