Google GitHub-da xavfsizlik nuqsonlarini ochib beradi

Project Zero GitHub-da jiddiy xavfsizlik buzilishi tafsilotlarini e'lon qildi va ular bu haqda xabar berishadi xato ish oqimi buyruqlariga ta'sir qiladi dan GitHub va yuqori zo'ravonlik deb ta'riflanadi. (Ushbu xato iyul oyida aniqlangan, ammo 90 kunlik ma'lumotni oshkor qilish muddati davomida, tafsilotlar hozirgina e'lon qilingan.)

Ushbu nuqson tuzatilmagan ozgina zaifliklardan biriga aylandi Google Project Zero tomonidan berilgan standart 90 kunlik muddat tugashidan oldin.

Feliks Vilgelmning so'zlariga ko'ra (kim uni kashf etgan), Project Zero jamoasi a'zosi, bu kamchilik ishlab chiquvchilarning ishini avtomatlashtirish vositasi bo'lgan GitHub-ning harakatlar xususiyatiga ta'sir qiladi. Buning sababi, Actions ish oqimining buyruqlari "qarshi hujumlariga qarshi":

"Actions Github Action brokeri va bajarilgan amal o'rtasidagi aloqa kanali sifatida ish oqimining buyruqlari deb nomlangan xususiyatni qo'llab-quvvatlaydi. Ish oqimi buyruqlari / src / Runner.Worker / ActionCommandManager.cs dasturida amalga oshiriladi va u ikkita buyruq belgisidan birini qidirish orqali amalga oshirilgan barcha harakatlarning STDOUT qismini ajratish orqali ishlaydi.

Shuni eslatib o'ting ushbu funktsiyadagi katta muammo shundaki, u in'ektsiya hujumlariga juda zaifdir. Amalga oshirish jarayoni STDOUT-da bosilgan har bir satrni ish oqimining buyruqlari uchun tekshirganligi sababli, uning bajarilishining bir qismi sifatida ishonchsiz tarkibni o'z ichiga olgan har bir GitHub harakati himoyasiz.

Ko'pgina hollarda, o'zboshimchalik bilan atrof-muhit o'zgaruvchilarini o'rnatish qobiliyati boshqa ish oqimi ishga tushishi bilanoq kodni uzoqdan bajarilishiga olib keladi. Men mashhur GitHub omborlarini ko'rib chiqishga bir oz vaqt sarfladim va biroz murakkab GitHub harakatlaridan foydalanadigan deyarli har qanday loyiha bu kabi xatolarga duch kelishi mumkin.

Keyinchalik xatodan qanday foydalanish mumkinligi haqida bir necha misollar keltirdi va shuningdek, echim taklif qildi:

“Men buni to'g'rilashning eng yaxshi usuli qanday ekanligiga amin emasman. O'ylaymanki, ish oqimining buyruqlarini bajarish usuli juda xavfli. V1 buyruq sintaksisini tushirish va ruxsat berilgan ro'yxat bilan set-env-ni kuchaytirish to'g'ridan-to'g'ri RCE vektorlariga qarshi ishlaydi.

"Biroq, keyingi bosqichlarda ishlatiladigan" normal "atrof-muhit o'zgaruvchilarini bekor qilish qobiliyati ham murakkab harakatlardan foydalanish uchun etarli bo'lishi mumkin. Shuningdek, men ish joyidagi boshqa boshqaruv elementlarining xavfsizligiga ta'sirini tahlil qilmadim.

Boshqa tarafdan, uzoq muddatli yaxshi echim ekanligini eslatib o'ting STDOUT tomonidan ajralishdan qochish uchun ish oqimining buyruqlarini alohida kanalga (masalan, yangi fayl tavsiflovchisiga) ko'chirish kerak edi, ammo bu juda ko'p amaldagi kodlarni buzadi.

GitHub-ga kelsak, uni ishlab chiquvchilar 1-oktabr kuni maslahat berishdi va zaif buyruqlarni bekor qilishdi, ammo Vilyemning topganlari aslida "o'rtacha xavfsizlik zaifligi" ekanligini ta'kidladilar. GitHub CVE-2020-15228 xato identifikatorini tayinladi:

"GitHub Actions ish vaqtida xavfsizlikning o'rtacha zaifligi aniqlandi, bu esa STDOUT-ga ishonchsiz ma'lumotlarni yozadigan ish oqimlariga yo'llar va atrof-muhit o'zgaruvchilarini kiritish imkonini berishi mumkin. Bu ish oqimi muallifining niyatisiz atrof-muhit o'zgaruvchilarining kiritilishiga yoki o'zgartirilishiga olib kelishi mumkin.

"Ushbu muammoni hal qilishda yordam berish va atrof-muhit o'zgaruvchilarini dinamik ravishda o'rnatishga imkon berish uchun biz ish oqimlarida atrof-muhit va yo'llarni yangilashni boshqarish uchun yangi fayllar to'plamini taqdim etdik.

«Agar siz o'zingizni uyushtirgan brokerlardan foydalanayotgan bo'lsangiz, ularning 2.273.1 yoki undan yuqori versiyasiga yangilanganligiga ishonch hosil qiling.

Vilgelmning so'zlariga ko'ra, 12-oktabr kuni Project Zero GitHub bilan bog'lanib, GitHub zaif buyruqlarni o'chirib qo'yish uchun ko'proq vaqt kerak bo'lsa, faol ravishda ularga 14 kunlik oynani taklif qildi. Albatta, taklif qabul qilindi va GitHub 19-oktabrdan keyin zaif buyruqlarni o'chirib qo'yishga umid qildi. Keyin Project Zero yangi oshkor qilish sanasini 2 noyabrga belgiladi.

Manba: https://bugs.chromium.org


Maqolaning mazmuni bizning printsiplarimizga rioya qiladi muharrirlik etikasi. Xato haqida xabar berish uchun bosing bu erda.

Birinchi bo'lib izohlang

Fikringizni qoldiring

Sizning email manzilingiz chop qilinmaydi.

*

*

  1. Ma'lumotlar uchun javobgardir: Migel Anxel Gaton
  2. Ma'lumotlarning maqsadi: SPAMni boshqarish, izohlarni boshqarish.
  3. Qonuniylashtirish: Sizning roziligingiz
  4. Ma'lumotlar haqida ma'lumot: qonuniy majburiyatlar bundan mustasno, ma'lumotlar uchinchi shaxslarga etkazilmaydi.
  5. Ma'lumotlarni saqlash: Occentus Networks (EU) tomonidan joylashtirilgan ma'lumotlar bazasi
  6. Huquqlar: istalgan vaqtda siz ma'lumotlaringizni cheklashingiz, tiklashingiz va o'chirishingiz mumkin.