Վերադառնալ
SiTech
Omarchy-ի խոցելիությունը թույլ էր տալիս ցանկացած գործընթացի root ստանալ առանց գաղտնաբառի
SiTech AI Team3 წთ. საკითხავი

Omarchy-ի խոցելիությունը թույլ էր տալիս ցանկացած գործընթացի root ստանալ առանց գաղտնաբառի

Omarchy-ի լռելյայն կարգավորումը օգտատիրոջը ավելացնում էր docker խմբին, ինչի հետևանքով նստաշրջանի գրեթե բոլոր գործընթացներն ունեին root մակարդակի հասանելիություն։ Ուղղումը ներառված է 4.0.1-ում։

Arch-ի վրա հիմնված Linux տարածումը՝ Omarchy, որը նախատեսված է ծրագրավորողների համար, լռելյայն կարգավորմամբ թույլ էր տալիս օգտատիրոջ աշխատանքային նստաշրջանում գործող գրեթե ցանկացած ծրագրի ստանալ root իրավունքներ՝ առանց գաղտնաբառի, sudo-ի կամ իրավունքների հարցման։ Անվտանգության հետազոտող 0xCC-ն խնդրի մասին հայտնել է նախագծի պատասխանատու բացահայտման ընթացակարգով և մանրամասները հրապարակել օգոստոսի 28-ին, այն բանից հետո, երբ կարգավորումը շտկվել է։ Ուղղումը ներառված է Omarchy 4.0.1-ում։

Խնդիրը՝ docker խումբը լռելյայն

Տարածումը լռելյայն օգտատիրոջը ավելացնում էր Linux-ի docker խմբին, ինչը թույլ է տալիս այդ հաշվին Docker-ի հրամանները գործարկել առանց sudo գրելու։ Arch-ում Docker-ի դեմոնը գործում է root-ի անունից և լսում է /var/run/docker.sock սոկետը։ docker խմբի անդամները կարող են հաղորդակցվել այդ սոկետի հետ, և Docker-ի սեփական փաստաթղթերը զգուշացնում են, որ խումբը օգտատիրոջը տալիս է root մակարդակի իրավունքներ։

Սոկետին հասանելիություն ունեցող գործընթացը կարող է root-ով աշխատող դեմոնից պահանջել կոնտեյներ գործարկել root-ի իրավունքներով, դրա մեջ տեղադրել հոսթի ֆայլային համակարգի ցանկացած հատված, աշխատել այդ ֆայլերի հետ որպես root և այնտեղ կոդ գործարկել։ Ապացույցը կարճ է. նոր վարակված տեղակայումում cat /etc/shadow-ը վերադարձնում է «Permission denied», իսկ docker run --rm -v /:/hostroot alpine cat /hostroot/etc/shadow-ը տպում է shadow ֆայլի բովանդակությունը. հրամանը գործարկում է սովորական օգտատիրոջ գործընթաց, իսկ ֆայլային հասանելիությունը կատարում է root-ով աշխատող դեմոնը։

Շրջանակը՝ ամբողջ նստաշրջանը

Linux-ի լրացուցիչ խմբերը ժառանգվում են զավակ գործընթացներին, այդ պատճառով docker խումբը առկա էր օգտատիրոջ systemd --user օրինակի ներքո գտնվող գրեթե բոլոր սովորական գործընթացներում։ Հետազոտողը root ստանալ կարողող կոդի թվում նշում է արհեստական բանականության կոդինգ գործակալներն ու դրանց միջավայրերը, բրաուզերները, խմբագրիչներն ու IDE-ները, npm սկրիպտները, տարբեր մշակման գործիքներն ու ֆոնային գործընթացները։ Գործնականում մեկ սովորական հավելվածի վնասումը կարող էր վերածվել ամբողջ մեքենայի վնասման։

Կարգավորումը opt-out էր, ոչ թե opt-in. օգտատերը պարտավոր չէր օգտվել Docker-ից, սակայն փոխզիջումը կիրառվել է լռելյայն հաշվի վրա՝ առանց բացատրության։ Omarchy-ի փաստաթղթերը նշում էին «օգտատիրոջ խմբերի փոփոխությունները, որոնք անհրաժեշտ են Docker-ը սովորական օգտատիրոջ, այլ ոչ root-ի կարգավիճակով գործարկելու համար»՝ ձևակերպում, որը ընթերցողը կարող էր հեշտությամբ ընկալել որպես rootless ռեժիմ, ինչը սակայն այդպես չէր։

Ժամանակագրությունը, ուղղումը և այլընտրանքը

docker խմբի անդամակցությունը ավելացվել է 2025 թվականի հունիսի 1-ին, հաջորդ օրը ժամանակավորապես անջատվել, 2025 թվականի հունիսի 17-ին կրկին միացվել, իսկ վերջնականապես հեռացվել լռելյայն կարգավորումից՝ 2026 թվականի օգոստոսի 24-ին։ Խոցելի են 4.0.1-ից հին տարբերակները. հետազոտողը ստուգել է նաև 3.x շարքի վերջին ISO-ն (3.8.4) և հաստատել վարքագիծը։

Կոնտեյներներն առանց root իրավունքների օգտագործել ցանկացողների համար հեղինակը խորհուրդ է տալիս Podman-ը. այն աշխատում է առանց դեմոնի, իսկ կոնտեյներները գործարկվում են որպես սովորական զավակ գործընթացներ՝ սեփական օգտատիրոջ անվանատարածքներում։ Հետազոտողը նշել է, որ արձագանքի արագությունը տպավորիչ էր, սակայն ավելացրել է, որ սա Omarchy-ում իր հանդիպած անվտանգության առաջին խնդիրը չէ, և որ ներկայում վստահություն չունի նախագծի որոշումների նկատմամբ։

SSiTech

SiTech — AI-ով հզորացված վեբ մշակում

Ստեղծում ենք արագ ու ժամանակակից կայքեր և AI-ը ներդնում իրական բիզնես գործընթացներում։ Ունե՞ք նախագիծ կամ հարց։ Ուրախ կլինենք օգնել։