Docker-dagi eng yaxshi tasvirlarning 19 foizida ildiz paroli mavjud emas

O'tgan shanba, 18-may, Kenna Security kompaniyasidan Jerri Gamblin tekshirildi Docker Hub-dan 1000 ta eng mashhur tasvirlar ular foydalanadigan ildiz paroliga asoslangan. 19% hollarda u bo'sh edi.

Docker-dagi eng yaxshi tasvirlarning 19 foizida ildiz paroli mavjud emas

Alp tog'lari bilan fon

Mini-tadqiqotning sababi shu oy boshida paydo bo'lgan Talos zaiflik hisoboti edi (TALOS-2019-0782), mualliflari - Cisco Umbrella-dan Piter Adkinsning kashfiyoti tufayli - mashhur Alp tog'lari konteyner distributiviga ega Docker tasvirlarida ildiz paroli yo'qligini xabar qilishdi:

“Alpine Linux Docker tasvirlarining rasmiy versiyalarida (v3.3 dan boshlab) root foydalanuvchisi uchun NULL parol mavjud. Ushbu zaiflik 2015 yil dekabr oyida kiritilgan regressiya natijasida yuzaga keldi. Buning mohiyati shundaki, konteynerda Alpine Linuxning muammoli versiyalari bilan joylashtirilgan va Linux PAM yoki tizim soya faylini autentifikatsiya ma'lumotlar bazasi sifatida ishlatadigan boshqa mexanizmdan foydalanadigan tizimlar ildiz foydalanuvchisi uchun NULL parolni qabul qilishi mumkin.

Muammo uchun sinovdan o'tgan Alpine bilan Docker tasvirlarining versiyalari 3.3–3.9 inklyuziv, shuningdek, Edge-ning so'nggi versiyasi edi.

Mualliflar zarar ko'rgan foydalanuvchilar uchun quyidagi tavsiyalarni berishdi:

"Alpine-ning muammoli versiyalaridan yaratilgan Docker tasvirlarida ildiz hisobi aniq o'chirilgan bo'lishi kerak. Zaiflikdan foydalanish ehtimoli atrof-muhitga bog'liq, chunki uning muvaffaqiyati Linux PAM yoki boshqa shunga o'xshash mexanizmdan foydalangan holda tashqaridan yuborilgan xizmat yoki dasturni talab qiladi."

Muammo shunday edi bartaraf etildi Alp tog'larining 3.6.5, 3.7.3, 3.8.4, 3.9.2 va chekka versiyalarida (20190228 oniy rasm) va ta'sirlangan tasvirlar egalaridan ildizi bo'lgan qatorni izohlash so'ralgan. /etc/shadow yoki paket yo'qligiga ishonch hosil qiling linux-pam.

Docker Hub bilan davom eting

Jerri Gamblin "konteynerlarda null parollardan foydalanish amaliyoti qanchalik keng tarqalganligi" bilan qiziqishga qaror qildi. Shu maqsadda u kichik bir asar yozdi Bash skripti, uning mohiyati juda oddiy:

  • Docker Hub-dagi API-ga curl so'rovi orqali u erda joylashgan Docker tasvirlari ro'yxati so'raladi;
  • jq orqali u maydon bo'yicha tartiblangan popularity, va olingan natijalardan birinchi mingta qoladi;
  • ularning har biri uchun u bajariladi docker pull;
  • Docker Hub-dan olingan har bir tasvir uchun bajariladi docker run fayldan birinchi qatorni o'qish bilan /etc/shadow;
  • satrning qiymati teng bo'lsa root:::0:::::, tasvir nomi alohida faylda saqlanadi.

Nima bo'ldi? IN bu fayl Linux tizimlari bilan mashhur Docker tasvirlari nomlari bilan 194 qator mavjud bo'lib, unda ildiz foydalanuvchisi parol o'rnatmagan:

“Ushbu roʻyxatdagi eng mashhur nomlar orasida govuk/governmentpaas, hashicorp, microsoft, monsanto va mesosphere bor edi. Kylemanna/openvpn esa ro‘yxatdagi eng ommabop konteyner bo‘lib, uning statistikasi 10 milliondan ortiq tortishishdir”.

Shuni esda tutish kerakki, bu hodisa o'z-o'zidan ularni ishlatadigan tizimlar xavfsizligining to'g'ridan-to'g'ri zaifligini anglatmaydi: barchasi ulardan qanday aniq foydalanishga bog'liq. (yuqoridagi Alp togʻlari haqidagi sharhga qarang). Biroq, biz "hikoya axloqi" ni ko'p marta ko'rganmiz: ko'rinadigan soddalik ko'pincha salbiy tomonlarga ega, uni doimo eslab qolish kerak va uning oqibatlari texnologiyani qo'llash stsenariylarida hisobga olinadi.

PS

Shuningdek, bizning blogimizda o'qing:

Manba: www.habr.com

a Izoh qo'shish