Tailscale SSH 1.104.4 korrigjon mangësitë e forwarding në nivel root
Tailscale SSH, një shërbim Secure Shell për akses në distancë në sisteme, ka marrë korrigjime sigurie për mangësi që mund t’i lejonin një pajisjeje të komprometuar, por të besuar, të arrinte skedarë dhe shërbime të rezervuara për administratorin root. Versioni 1.104.4 i trajton problemet duke ndryshuar mënyrën se si përpunohen lidhjet e forwarding brenda serverit të integruar SSH.
Shfrytëzimi kërkon që një sulmues të kontrollojë një pajisje të cilën policy e rrjetit e lejon tashmë të nisë një session SSH me objektivin. Rregulli përkatës i aksesit duhet të lejojë gjithashtu forwarding, i cili i mundëson një session të përcjellë një lidhje drejt një shërbimi tjetër lokal. Tailscale thotë se mangësitë nuk i japin një sulmuesi të paautentikuar akses në serverë çfarëdo dhe se sulmuesi mbetet i kufizuar te makinat e lejuara nga policy file. Megjithatë, Tailscale SSH përdor identitetin e pajisjes dhe policy e rrjetit, në vend të një fjalëkalimi ose key SSH, prandaj nuk nevojiten kredenciale shtesë pasi një pajisje e besuar të jetë komprometuar.
Gjetjet erdhën nga Tailworm, një raport i Cyberdione Labs i bazuar në testime laboratorike të versioneve të publikuara të klientit Tailscale dhe të headscale, serverit të vetëhostuar të kontrollit. Serveri Tailscale SSH funksionon në Linux dhe në build me burim të hapur për macOS, megjithëse pajisja që nis session keqdashës mund të përdorë çfarëdo platforme.
Problemi kryesor përfshinte forwarding të lidhjeve drejt një Unix socket, një pikë lokale lidhjeje që programet e përdorin për të komunikuar në të njëjtën makinë. Procesi në sfond i Tailscale kontrollonte fillimisht path e kërkuar të socket dhe më pas e përfundonte veprimin me privilegje root. Duke ndryshuar path në çastin e duhur pas kontrollit, një sulmues mund ta ridrejtonte lidhjen te një socket tjetër dhe të anashkalonte kufizimin e synuar.
Cyberdione Labs raportoi se testet e saj arritën Docker control socket, siguruan një root shell dhe lexuan /etc/shadow, skedarin e sistemit që përmban informacion të mbrojtur për fjalëkalimet, pa privilegje administratori. Buletini i Tailscale përshkruan aksesin te socket të disponueshme vetëm për root, duke përfshirë Docker socket dhe ndërfaqen lokale të programimit të aplikacioneve (API) të tailscaled, të cilën software e përdor për të kontrolluar shërbimin. Në versionin 1.104.4, forwarding ekzekutohet si përdoruesi i identifikuar dhe jo si root, ndërsa lejet e skedarëve të sistemit operativ përcaktojnë se cilat socket mund të përdorë ai përdorues.
Publikimi trajton katër buletine sigurie. TS-2026-014 mbulon dobësitë e SSH socket-forwarding që ekspozonin socket me privilegje. TS-2026-015 lidhet me një session SSH të lejuar që konsumon aq shumë memorie sa rrëzon procesin Tailscale, gjë që do të ndalte të gjithë rrjetëzimin Tailscale në atë node. TS-2026-016 prek tailscale serve, ku forwarding drejt një Unix socket mund të arrinte API lokale të tailscaled dhe të siguronte kontroll në distancë të node; ai përfshin gjithashtu një problem të lidhur me ndërrimin e path. TS-2026-017 prek konfigurimet serve të Transport Layer Security (TLS) me dy ose më shumë mount, ku një kërkesë mund të merrte permission headers që i përkisnin një mount tjetër.
Administratorët që përdorin Tailscale SSH duhet të instalojnë versionin 1.104.4 ose një version më të ri. Kur një përditësim i menjëhershëm nuk është i mundur, Tailscale rekomandon vendosjen e TS_SSH_DISABLE_FORWARDING=1 në environment të shërbimit tailscaled dhe rinisjen e shërbimit. Kjo çaktivizon forwarding pa çaktivizuar Tailscale SSH dhe bllokon disa nga gjetjet më serioze. Administratorët duhet gjithashtu t’i ngushtojnë rregullat e aksesit SSH vetëm te përdoruesit dhe pajisjet që kanë vërtet nevojë për akses.
Tailscale sugjeron gjithashtu SSH check mode për sistemet sensitive. Kjo kërkon që përdoruesi të identifikohet përsëri para se të nisë session, por nuk i parandalon mangësitë e forwarding, sepse forwarding ndodh pasi ka nisur një session i miratuar. Nëse komprometimi mund të ketë ndodhur tashmë, raporti Tailworm paralajmëron se përditësimi ose reimaging i makinës nuk mjafton më vete. Një device key e vjedhur mbetet e përdorshme derisa pajisja të fshihet përmes control plane, sistemit që përdoret për të menaxhuar pajisjet pjesëmarrëse. Njoftimet e Tailscale nuk e trajtojnë këtë skenar.
Situata e headscale mbetet e pazgjidhur në versionet e testuara. Sipas Cyberdione Labs, çdo session SSH i pranuar nga headscale merr të drejta forwarding dhe policy nuk mund t’i çaktivizojë ato. Prandaj, raporti thotë se çdo leje headscale SSH duhet të trajtohet sikur jep efektivisht akses root. Headscale 0.29.5, i publikuar më 13 tetor, nuk i korrigjon problemet e raportuara.
Cyberdione Labs e përshkroi zinxhirin si wormable pas testeve në të cilat një pajisje e komprometuar arriti çdo pajisje të lejuar nga policy, pa fjalëkalime, SSH keys të vjedhura ose ndërveprim të përdoruesit, duke përdorur më pak se një sekondë për çdo hap. Kufizimi i rregullave të aksesit në lidhje individuale pajisje me pajisje e ndaloi këtë lëvizje gjatë testeve. Lidhja e identiteteve të pajisjeve me hardware, si një Trusted Platform Module (TPM), një komponent sigurie brenda pajisjes, pengoi gjithashtu ripërdorimin diku tjetër të një identiteti të vjedhur.
Tailscale e kundërshton përshkrimin si worm, sepse gjetjet nuk përfshijnë malware që vetëreplikohet dhe përhapet në mënyrë të pavarur. Kompania e karakterizon sjelljen si lateral movement të kufizuar nga policy ekzistuese e rrjetit, ndërsa pranon probleme serioze të privilege escalation dhe thotë se i riprodhoi gjetjet kryesore. Kompania ishte ende duke përcaktuar saktësisht se cilat konfigurime prekeshin.
Në kohën e publikimit, katër buletinet nuk kishin identifikues CVE, vlerësime të nivelit të rrezikut ose versione më të hershme të prekura të deklaruara. Raporti më i gjerë Tailworm shqyrtoi gjithashtu app connectors dhe veçoritë serve dhe funnel. Tailscale thotë se problemi i app connector zbatohet për conn25, një veçori eksperimentale që nuk është publikuar, dhe jo për connector që përdoren aktualisht nga klientët. Nga pesë gjetje për serve dhe funnel, kompania korrigjoi tri dhe tha se dy të tjerat funksionojnë sipas projektimit.
Zbulimi nuk u koordinua paraprakisht. Tailscale thotë se e mori raportin të shtunën, më 24 tetor, rreth dy orë para publikimit, megjithëse inxhinierët e saj po shqyrtonin tashmë të njëjtat pjesë të kodit. As Tailscale dhe as Cyberdione Labs nuk kanë raportuar shfrytëzim në sulme reale. Kodi proof-of-concept nuk është publik dhe, sipas raportit, iu dha vetëm ekipit të sigurisë së Tailscale. Një mangësi e veçantë e Unix-socket forwarding, që i lejonte një përdoruesi pa privilegje të arrinte një socket me privilegje, u korrigjua në qershor në versionin 1.98.9.
Për organizatat që rishikojnë aksesin në serverë dhe infrastrukturën, AEU-I ofron shërbime IT, infrastrukture dhe konsulence me sigurinë si përparësi. Prioritetet e menjëhershme mbeten instalimi i versionit 1.104.4 ose më të ri, kufizimi i marrëdhënieve mes pajisjeve të besuara dhe heqja nga control plane e çdo identiteti pajisjeje që mund të jetë vjedhur.