Мэдээ

Zero-Trust сүлжээгээр секундийн дотор тархах аюул: Tailscale SSH-ийн "Tailworm" цоорхой илрүүлэгдлээ

TOGTOKHTOGTOKH·2026 оны аравдугаар сарын 26·1 үзсэн·
Zero-Trust сүлжээгээр секундийн дотор тархах аюул: Tailscale SSH-ийн "Tailworm" цоорхой илрүүлэгдлээ

Орчин үеийн DevOps болон систем хөгжүүлэлтийн багуудын дунд уламжлалт VPN, төвөгтэй firewall тохиргоог халж, Zero-Trust mesh сүлжээ үүсгэдгээрээ өндөр үнэлэгддэг платформ бол яах аргагүй Tailscale билээ. Хөгжүүлэгчид SSH түлхүүр хуваалцах, удирдахаас төвөгшөөн Tailscale SSH ашиглан нэг товшилтоор серверүүд рүүгээ нэвтэрдэг болсон.

Гэвч саяхан Cyberdione Labs-ийн аюулгүй байдлын судлаач Эрика Виндиш (Erica Windisch) нэгэн цочирдом судалгааны тайлан нийтэллээ. "Tailworm" хэмээн нэрлэсэн энэхүү эмзэг байдал нь Tailscale болон түүний нээлттэй эхийн хувилбар болох Headscale дээрх SSH хэрэгжилтийн суурь архитектурын алдааг ашиглан, сүлжээн дэх ганцхан төхөөрөмжөөс бусад бүх сервер рүү root эрхтэйгээр гинжин тархах (wormable lateral movement) боломж олгож байгааг харуулжээ.

Одоогоор албан ёсны патч гараагүй байгаа бөгөөд Tailscale ашигладаг инженер бүр яаралтай хамгаалалтын тохиргоо хийх шаардлагатай болоод байна.


Tailscale SSH яаж ажилладаг вэ, алдаа хаана гарав?

Уламжлалт OpenSSH холболт нь хэрэглэгчийн ~/.ssh/authorized_keys файл дахь public key эсвэл нэвтрэх нууц үгийг шалгадаг. Харин Tailscale SSH нь энэ загварыг бүхэлд нь өөрчилж, сүлжээний төхөөрөмжийн таних тэмдэг (Node Identity) болон төв удирдлагын ACL (Access Control List) дүрэмд найдахаар хийгдсэн. Өөрөөр хэлбэл, таны лаптоп тухайн сервер рүү холбогдох эрхтэй гэж сүлжээний дүрэмд заасан л бол ямар ч нууц үг, SSH түлхүүр шаардахгүйгээр сесс үүсдэг.

"Tailworm" тайланд дурдсанаар гол асуудал нь SSH Port Forwarding болон Unix Domain Socket дамжуулалт дээр гарч иржээ:

  1. Root эрхээр үүсгэгдэх Unix Sockets: Tailscale-ийн клиент daemon (tailscaled) нь системийн түвшинд root эрхтэйгээр ажилладаг. Хэрэглэгч ssh -L эсвэл ssh -R ашиглан дотоод Unix domain socket forward хийх хүсэлт гаргахад, хүлээн авагч серверийн Tailscale процесс нь тухайн холболтыг жирийн эрхтэй хэрэглэгчийн өмнөөс биш, харин системийн root эрхээр үүсгэж дууддаг (dial as root).
  2. Privilege Escalation: Хэрэв халдагч Tailnet доторх энгийн хэрэглэгчийн эрхтэй ямар нэг машин эсвэл веб аппликейшнийг эвдэж чадвал, цааш нь серверийн Docker daemon socket (/var/run/docker.sock), containerd, эсвэл root хэрэглэгчид зориулагдсан удирдлагын сокет руу шууд дамжуулалт хийх боломжтой болно. Сокет нь root-ээр холбогддог тул хэрэглэгчийн түвшнээс шууд host үйлдлийн системийн бүрэн root эрх рүү үсрэх нөхцөл бүрдэнэ.
  3. Хяналтын цаг хугацааны цоорхой (TOCTOU): Сокет үүсгэх болон зөвшөөрөл шалгах хоорондын хугацааны завсрыг (Time-of-check to time-of-use) ашиглан замын сокетийг өөрчлөх (socket substitution) замаар хамгаалалтыг бүрэн тойрч гарч болдгийг лабораторийн нөхцөлд баталсан байна.

Яагаад "Tailworm" гэж нэрлэв? Халдлага хэрхэн гинжлэгддэг вэ?

Энэхүү халдлагын хамгийн аюултай тал нь ямар нэгэн хулгайлагдсан нууц үг, хүний оролцоо шаардлагагүйгээр машины хурдаар автоматаар дамжих (wormable) чадвар юм.

Төсөөлөөд үз дээ:

  • Хөгжүүлэгчийн ажлын зөөврийн компьютер дээр ямар нэг хортой npm багц суух, эсвэл staging серверийн вэб апп цоорхойгоор халдлагад өртөж нэг төхөөрөмжид нэвтрэх анхны цэг (initial foothold) үүснэ.
  • Халдагч скрипт тухайн машинаас Tailscale сүлжээний төхөөрөмжүүдийг шалгаж (network enumeration), SSH хийх эрхтэй дараагийн серверүүд рүү автоматаар хандана.
  • Токен, нууц үг шаардахгүй тул host бүр дээр секунд хүрэхгүй хугацаанд холбогдож, socket forwarding цоорхойгоор root эрх аван, уг сервер дээр дахин халдлагын скриптээ байршуулна.
  • Ингэснээр хэдхэн хормын дотор Tailnet доторх үйлдвэрлэлийн (production) кластер, өгөгдлийн сангийн серверүүд бүгд нэгэн зэрэг халдагчийн бүрэн мэдэлд шилжих эрсдэлтэй.

Судлаачийн туршилтаар уг цоорхой нь Tailscale v1.104.2 болон өөрсдөө сүлжээгээ хостлоход ашигладаг Headscale v0.29.5 хувилбарууд дээр амжилттай хэрэгжсэн байна.


Tailscale-ийн байр суурь ба хариу үйлдэл

Тайлан нийтлэгдсэний дараа Tailscale компанийн Инженерчлэл хариуцсан дэд ерөнхийлөгч Майк Шэйвер (Mike Shaver) олон нийтэд хандаж тайлбар өглөө. Түүний мэдээлснээр, компани гадны аюулгүй байдлын аудиторуудтай хамтран энэ чиглэлээр өмнө нь ажиллаж байсан бөгөөд тайланд дурдсан цоорхойнуудыг арилгах засваруудыг яаралтай боловсруулж эхэлжээ.

Гэвч одоогоор албан ёсны CVE дугаар болон зассан шинэ хувилбар гараагүй байгаа тул хэрэглэгчдийг сүлжээний тохиргоогоо эргэж харахыг сануулж байна.


Хөгжүүлэгчид болон инженерүүд яг одоо юу хийх ёстой вэ?

Хэрэв танай баг дэд бүтэцдээ Tailscale SSH ашигладаг бол дараах хамгаалалтын алхмуудыг нэн даруй хэрэгжүүлэхийг зөвлөж байна:

  1. Port Forwarding-ийг хаах: Tailscale админ самбарын ACL файлд SSH дүрмүүд дээрээ шаардлагагүй бол port forwarding-ийг бүрэн идэвхгүй болгох ("portForwarding": false). Энэ нь уг халдлагын үндсэн вектор болох сокет дамжуулалтыг шууд таслан зогсооно.
  2. SSH Check Mode идэвхжүүлэх: Сервер рүү SSH хийх бүрт нэвтрэлтийг шууд зөвшөөрөхгүйгээр дахин баталгаажуулалт (MFA / 2FA check) шаарддаг check горимыг асаах. Энэ нь автомат скриптүүд дур мэдэн цааш үсрэхээс сэргийлнэ.
  3. Хамгийн бага эрхийн зарчим (Least Privilege ACL): Бүх tag:dev машинууд tag:servers руу чөлөөтэй SSH хийх боломжтой өргөн дүрмийг хумих. Зөвхөн тодорхой нэг host-оос нөгөө рүү л холбогдох 1-to-1 strict ACL дүрмүүдийг ашиглах.
  4. Tailnet Lock ашиглах: Сүлжээнд шинэ зангилаа нэмэгдэхэд итгэмжлэгдсэн түлхүүрээр гарын үсэг зурж байж нэвтрүүлдэг Tailnet Lock функцийг асааснаар халдагч дураараа хуурамч node нэмэхээс сэргийлж чадна.

Zero-Trust гэдэг нь зөвхөн "итгэлцлийг төхөөрөмжийн сүлжээний түвшинд шилжүүлэх" тухай биш, харин системийн түвшинд ч эрх мэдлийн хязгаарлалтыг яс барих ёстойг "Tailworm" кейс инженерүүдэд хатуу сануулж байна.


Эх сурвалж: The Hacker News, Cyberdione Labs Research (Tailworm), SC Media

Сэтгэгдэл

Ачаалж байна...