Tailscale o'zining ichki SSH serveridagi kamchiliklarni tuzatish uchun 1.104.4 versiyasini chiqardi. Bu kamchiliklar hujumchiga faqat root foydalanuvchisi kirishi mumkin bo'lgan boshqa serverlardagi xizmatlar va fayllarga kirish imkonini berishi mumkin edi.

Kamchiliklar Tailscale SSH tarmoq ulanishlarini yo'naltirish (forwarding) usulida, bu vazifani Tailscale fon jarayoni root huquqlari bilan bajaradi. Ulardan foydalanish uchun hujumchi avval tarmoqning kirish qoidalari ruxsat bergan qurilmani nazorat qilishi va shu qurilmadan maqsadli serverga SSH sessiyasi ochishi, yo'naltirish (forwarding) esa shu qoida bilan ruxsat etilgan bo'lishi kerak.

Kamchiliklar Cyberdione Labs'dan Erica Windisch tomonidan e'lon qilingan Tailworm nomli hisobotdan kelib chiqqan. U Tailscale mijozining chiqarilgan versiyalari va o'z-o'zini boshqaradigan headscale nazorat serverini laboratoriyada sinovdan o'tkazgan.

Tailscale SSH kim ulanishi mumkinligini qurilmaning shaxsi va tarmoq siyosat fayli orqali aniqlaydi, parol yoki kalit emas. Shuning uchun hujumchiga o'g'irlangan ma'lumotlar kerak emas, faqat siyosat allaqachon ishonadigan qurilmada o'rnashish (foothold) yetarli.

Tailscale aytishicha, "bu kamchiliklar autentifikatsiyalanmagan hujumchiga ixtiyoriy Tailscale SSH serverlariga ulanish imkonini bermaydi", va hujumchi faqat siyosat fayli allaqachon ruxsat bergan mashinalarga kirishi mumkin.

Tailscale SSH serveri faqat Linux va ochiq kodli macOS qurilishida ishlaydi; hujumchining o'z qurilmasi har qanday platforma bo'lishi mumkin.

Muammo socket yo'naltirishida (socket forwarding). Ruxsat etilgan SSH sessiyasi serverdagi Unix socketga ulanishni yo'naltirganda, Tailscale jarayoni yo'lni tekshirgan, lekin keyin root sifatida ishlagan. Vaqt hiylasi (timing trick) hujumchiga tekshiruvdan keyin boshqa yo'lni almashtirishga imkon bergan, bu esa yo'naltirish qaysi socketlarga yetishi mumkinligini cheklash uchun mo'ljallangan himoyani bekor qilgan.

Windischning o'z sinovlarida, Docker nazorat socketiga yo'naltirish root qobig'ini (shell) hosil qilgan va tizim parol fayli /etc/shadow ni administrator huquqlarisiz o'qigan. Tailscale byulleteni ta'sir doirasini torroq tasvirlab, hujumchi Docker socketi yoki tailscaled mahalliy API kabi root-faqat socketlarga kirishi mumkinligini aytgan.

1.104.4 versiyasida Tailscale serverni yo'naltirishni root emas, balki tizimga kirgan foydalanuvchi sifatida bajarishga o'zgartirgan va avvalgi yo'l tekshiruvi o'rniga operatsion tizimning o'z fayl ruxsatlariga tayanishni joriy qilgan. Chiqarilish 4 ta xavfsizlik byulletenini qamrab oladi:

  • TS-2026-014: yuqoridagi SSH socket-yo'naltirish kamchiliklari, ruxsat etilgan sessiya Docker socketi yoki tailscaled mahalliy API kabi root-faqat socketlarga kirishi mumkin.
  • TS-2026-015: ruxsat etilgan SSH sessiyasi server xotirasini to'ldirib, Tailscale jarayonini ishdan chiqarishi va shu tugundagi barcha Tailscale tarmog'ini uzishi mumkin.
  • TS-2026-016: tailscale serve'dagi kamchilik, Unix socketga yo'naltirish tailscaled mahalliy API ga yetishi va tugunni masofadan nazorat qilish imkonini berishi, shuningdek bog'liq socket-almashtirish muammosi.
  • TS-2026-017: TLS serve va 2 yoki undan ortiq mount bilan, bitta so'rov boshqa mountning ruxsat sarlavhalarini olishi mumkin bo'lgan kamchilik.

Nima qilish kerak

Tailscale SSH foydalanuvchilari 1.104.4 yoki undan keyingi versiyaga yangilanishi kerak. Agar serverni hali yangilay olmasangiz, unda SSH yo'naltirishni o'chirish mumkin: tailscaled xizmat muhitida TSSSHDISABLE_FORWARDING=1 ni o'rnatib, xizmatni qayta ishga tushirish. Tailscale aytishicha, bu yo'naltirishni o'chiradi, lekin Tailscale SSH ni o'chirmaydi va jiddiyroq topilmalarning bir nechtasini bloklaydi.

Tailscale shuningdek SSH kirish qoidalarini ko'rib chiqishni tavsiya qiladi, shunda faqat kerak bo'lgan foydalanuvchilar va qurilmalar kirish huquqiga ega bo'ladi.

Tailscale sezgir tizimlar uchun SSH tekshiruv rejimini (check mode) ishlatishni tavsiya qiladi, bu foydalanuvchidan sessiya boshlanishidan oldin qayta tizimga kirishni talab qiladi. Tekshiruv rejimi bu yo'naltirish kamchiliklarini to'xtatmaydi: u sessiyaning boshlanishini himoya qiladi, yo'naltirish esa allaqachon tasdiqlangan sessiya ichida sodir bo'ladi.

Agar server allaqachon buzilgan bo'lishi mumkin bo'lsa, Windisch hisobotida aytilishicha, faqat tuzatish yetarli emas. O'g'irlangan qurilma kaliti nazorat tekisligida (control plane) qurilma o'chirilmaguncha amal qiladi, chunki mashinani qayta o'rnatish (reimaging) uni bekor qilmaydi. Tailscale e'lonlarida bu holat qamrab olinmagan.

Vaziyat o'z-o'zini boshqaradigan headscale nazorat serverida yomonroq. Headscale'da SSH yo'naltirish har bir qabul qilingan sessiyada beriladi va siyosatda o'chirib bo'lmaydi, shuning uchun Windisch hisobotida aytilishicha, u yerdagi har bir SSH ruxsati root sifatida qaralishi kerak. 13-oktabrdagi eng yangi headscale versiyasi 0.29.5 e'lon qilingan muammolarni tuzatmaydi.

Bu qurt (worm)mi?

Windisch bu zanjirni "qurtlanadigan" (wormable) deb atagan. Uning sinovlarida, bitta buzilgan qurilma siyosat ruxsat bergan har bir qurilmaga tarqalishi mumkin edi, parollar, o'g'irlangan kalitlar va foydalanuvchi harakati talab qilinmasdan, har bir qadamda bir soniyadan kam vaqtda.

Bu tarqalishni ikkita nazorat to'xtatgan. Kirish qoidalarini yagona qurilma-qurilma juftliklari sifatida yozish uni sekinlashtirgan, qurilma kalitlarini TPM kabi apparatga bog'lash esa o'g'irlangan shaxsni boshqa joyda qayta ishlatishdan saqlagan.

Tailscale qurt tavsifini rad etgan. Topilmalar o'z-o'zini ko'paytiradigan va mashinalar o'rtasida mustaqil tarqaladigan zararli dasturiy ta'minotni tasvirlamaydi, deb aytgan kompaniya, balki siyosat fayli allaqachon ruxsat bergan ulanishlar bilan cheklangan lateral harakatni tasvirlaydi.

U imtiyoz oshirish (privilege-escalation) muammolarini "jiddiy xavfsizlik muammolari" deb atagan, asosiylarini qayta ishlab chiqqanini aytgan va qaysi konfiguratsiyalar ta'sirlanganini hali aniqlash ustida ishlayotganini qo'shgan.

Oshkor qilish va avvalgi tuzatishlar

Nashr vaqtidagi holatga ko'ra, 4 ta byulleten CVE identifikatorlari yoki jiddiylik ballariga ega emas va hech biri eng eski ta'sirlangan versiyani ko'rsatmaydi. Hisobot shuningdek Tailscale ilova ulanishlari (app connectors) va serve va funnel xususiyatlarini ham qamrab olgan.

Tailscale ilova-ulanish topilmasi conn25, hali chiqarilmagan eksperimental xususiyatda ekanligini va mijozlar bugun ishlatayotgan ulanishlar ta'sirlanmaganini aytgan. 5 ta serve va funnel topilmasidan 3 tasini tuzatgan va qolgan 2 tasi mo'ljallanganidek ishlashini aytgan.

Windisch hisobotni Tailscale bilan avvaldan muvofiqlashtirmasdan e'lon qilgan, bu holatni u "e'lon qilingan, lekin muvofiqlashtirilmagan" deb ta'riflagan. Tailscale hisobotni shanba, 24-oktabr kuni ertalab, Windisch e'lon qilishidan taxminan 2 soat oldin olganini va muhandislari allaqachon kodning shu qismlarini ko'rib chiqqanini aytgan.

Na Tailscale, na hisobot bu kamchiliklar haqiqiy hujumlarda ishlatilganini aytmaydi. Isbot-kontsept (proof-of-concept) kodi ommaviy emas va Windisch uni faqat Tailscale xavfsizlik jamoasiga berganini aytgan.

Hisobot bu yil Tailscale'ning shu qismida qilingan tuzatishlar qatoridagi eng so'nggisi. Iyun oyida Tailscale Tailscale SSH Unix-socket yo'naltirishidagi alohida kamchilikni tuzatgan, bu imtiyozsiz foydalanuvchiga imtiyozli socketga kirish imkonini bergan, 1.98.9 versiyasida.