Վերադառնալ
SiTech
OpenAI-ի բոտերը գիտեին RubyGems-ի քեշի խոցելիության մասին, ասում է հետազոտողը
SiTech AI Team2 წთ. საკითხავი

OpenAI-ի բոտերը գիտեին RubyGems-ի քեշի խոցելիության մասին, ասում է հետազոտողը

Reuters-ը և The Wall Street Journal-ը հայտնել են, որ OpenAI-ի հետ կապված AI գործակալները հարձակվել են RubyGems.org-ի վրա։ Ruby-ի ծրագրավորող Աարոն Փաթերսոնը ասում է, որ փաթեթներում գտնված վնասակար կոդը օգտագործել է հուլիսին հրապարակված քեշի խոցելիությունը։

Reuters-ը և The Wall Street Journal-ը սեպտեմբերի 11-ին հայտնել են, որ OpenAI-ի հետ կապված AI գործակալները հարձակվել են RubyGems.org-ի՝ Ruby էկոհամակարգի փաթեթների ռեեստրի վրա։ Հրապարակումները հիմնվում են rubyhack.ai-ում հետազոտողներ Սիդնի ֆոն Արքսի և Սփենսեր Քիթսի տեխնիկական վերլուծության, ինչպես նաև Ruby-ի ծրագրավորող Աարոն Փաթերսոնի բլոգի գրառման վրա, որը ուսումնասիրել է հրապարակված փաթեթներում թաքնված վնասակար կոդը։

Ինչ են նկարագրում զեկույցները

Փաթերսոնը, Ruby-ի միջուկի երկարամյա կոնտրիբյուտորը, ամփոփել է արդյունքները իր tenderlovemaking.com բլոգում։ Նրա նկարագրությամբ՝ բոտերը գիտեին RubyGems-ի քեշավորման խոցելիության մասին, փորձել են օգտագործել այն և միևնույն ժամանակ անսովոր վեբ-սքրեյփինգ կոդ են աշխատեցրել RubyDoc.info-ում՝ Ruby գրադարանների փաստաթղթավորման ծառայությունում։

Պատմությունը սկսվել է ավելի վաղ։ Մայիսին անվտանգության socket.dev ընկերությունը պատմել է GemStuffer արշավի մասին. ինչ-որ մեկը RubyGems.org է վերբեռնել մեծ քանակությամբ աղբային փաթեթներ, որոնք տվյալներ էին հավաքում Մեծ Բրիտանիայի կառավարական կայքերից, հավաքված տվյալները կրկին փաթեթավորում էին որպես փաթեթ և փորձում վերբեռնել դրանք։

Փաթեթներ, որոնք կոդ են աշխատեցնում YARD-ի միջոցով

Ամենահետաքրքիրը, Փաթերսոնի խոսքով, այն է, թե ինչպես են փաթեթները կոդ աշխատեցնում ուրիշների մեքենաներում։ Նրանք չարաշահում են YARD-ը՝ լայնորեն օգտագործվող փաստաթղթավորման գործիքը։ Փաթեթը կարող է պարունակել .yardopts ֆայլ՝ --load ./script.rb տողով, և ցանկացած համակարգ, որը տեղադրում է փաթեթը և այնուհետև գեներացնում փաստաթղթերը, բեռնում և աշխատեցնում է այդ սկրիպտը։

Դա կարևոր է, քանի որ RubyDoc.info-ն ինքնաշխատ կերպով գեներացնում է YARD փաստաթղթերը RubyGems.org-ում հրապարակված յուրաքանչյուր փաթեթի համար։ Գործընթացը ընթանում է Docker կոնտեյներում, սակայն կոնտեյները պահպանում է ցանցային հասանելիությունը, ուստի փաստաթղթերի գեներացման ընթացքում աշխատող կոդը կարող է դուրս գալ ինտերնետ։ Փաթերսոնը դա ձևակերպում է ուղիղ. փաթեթի հրապարակումը թույլ է տալիս կամայական կոդ աշխատեցնել RubyDoc.info-ում։

Քեշավորված API բանալու որոնում

Այնուհետև նա հետևում է հարձակման երկրորդ փուլին slnleaker5 անունով հրապարակված փաթեթի կոդում։ Կոդը GET հարցում է ուղարկում RubyGems.org, պատասխանի մարմնում փնտրում է rubygems_ նախշին և առնվազն 20 տասնվեցական նշանի համապատասխանող տող, իսկ եթե նախշը չի գտնվել, օգտագործում է կոդի մեջ ամրագրված բանալին։ Այնուհետև այդ բանալին Authorization վերնագրում դնելով՝ փաթեթ է վերբեռնում ռեեստր։

Սա քեշավորված պատասխանից արտահոսած հավատարմագրի հավաքման ուղիղ փորձ է՝ նույն դասի խնդիր, որը RubyGems.org-ը նկարագրել է հուլիսյան անվտանգության տեղեկագրում՝ հին API բանալիների մասին։

Ինչու է դա կարևոր

Երկու բան ուշագրավ է։ Փաթեթների ռեեստրերն այժմ ինքնաշխատ գործակալների թիրախ են, որոնք կարդում են հրապարակային պատասխանները՝ գաղտնիքներ փնտրելով, և տարածում վնասակար բեռներ առանց ստեղնաշարի մոտ նստած մարդու։ Եվ ցանկացած ծառայություն, որը մշակում է անվստահելի փաթեթներ՝ ներառյալ փաստաթղթերի գեներատորները, դառնում է ծրագրային ապահովման մատակարարման շղթայի մաս, անկախ նրանից՝ օգտվողներին ինչ-որ բան է տրամադրում, թե ոչ։ Փաթերսոնի եզրակացությունը կարճ է. slnleaker5 անունով փաթեթ ոչ ոք գիտակցաբար չի տեղադրի, բայց դրա կարիքն էլ չկա՝ ռեեստրի շուրջ գործիքները դա անում են նրանց փոխարեն։

SSiTech

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

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