VS Code Marketplace-д "Extension Resurrection" сүлжээний эмзэг байдал илэрлээ: 500,000 гаруй хөгжүүлэгчийн төхөөрөмж эрсдэлд орлоо
Modern программ хангамжийн хөгжүүлэлтэд код бичих орчин (IDE) нь зөвхөн текст редактор биш, хөгжүүлэгчийн микро ертөнц, CI/CD шугам, терминал, API түлхүүрүүд болон терминалын эрхүүд нэгдсэн хамгийн чухал цэг байдаг. Ялангуяа Visual Studio Code (VS Code) болон түүний нээлттэй эх сурвалжийн хувилбарууд нь дэлхийн сая сая хөгжүүлэгчдийн өдөр тутмын гол сонголт билээ. Гэвч хөгжүүлэгчдийн энэхүү итгэлт хэрэгсэл кибер халдлага үйлдэгчдийн хамгийн тохиромжтой бай болон хувирч байна.
Bloom Security аюулгүй байдлын судалгааны байгууллагаас 2026 оны 8 сарын 13-ны өдөр танилцуулсан шинэ судалгааны тайланд дурдснаар, VS Code Marketplace болон Open VSX экосистемд "Extension Resurrection" (Өргөтгөлийг амилуулах) хэмээх нийлүүлэлтийн сүлжээний (supply-chain) томоохон эмзэг байдал илэржээ. Одоогоор 500,000 гаруй таталттай хөгжүүлэгчийн орчин энэхүү халдлагын векторт шууд өртөх эрсдэлтэй байгаа нь тогтоогдлоо.
"Extension Resurrection" халдлага гэж юу вэ?
VS Code-ийн экосистемд хөгжүүлэгчид тодорхой технологийн стек эсвэл чиглэлд (жишээ нь Fullstack Web, Python Data Science, Go Tools) зориулсан олон өргөтгөлийг нэг нэгээр нь суулгахын оронд "Extension Pack" ашиглах нь маш phổ biến байдаг. Extension Pack гэдэг нь өөрөө ямар нэгэн функц кодолдоггүй, тухайн багцад багтах бусад өргөтгөлүүдийн ID-г package.json файл дотроо extensionPack массив болгон багцлан зааж өгдөг хамаарлын (dependency) мета өгөгдөл юм.
Bloom Security-ийн шинжээчид VS Code Marketplace болон Open VSX экосистемд нарийвчилсан аудит хийхэд:
- VS Code Marketplace дээрх 677 багц өргөтгөл (extension pack)
- Open VSX дээрх 94 багц өргөтгөл
дотор платформоос хэдийнэ устгагдсан, эсвэл хөгжүүлэгч нь хаасан "эзэнгүй" өргөтгөлийн ID-нууд (dangling/ghost references) заагдсан байжээ.
Халдлага үйлдэгчид эдгээр устгагдсан эсвэл эзэнгүй болсон өргөтгөлийн ID-нуудыг Marketplace дээр дахин шинээр бүртгүүлэн авч ("амилуулан"), дотор нь хортой код (malware) байршуулах боломжтой юм. Тухайн багц өргөтгөлийг ашиглаж буй хөгжүүлэгчийн VS Code редактор автоматаар шинэчлэлт авах үед энэхүү хортой "амилуулсан" өргөтгөл хөгжүүлэгчийн төхөөрөмж дээр чимээгүй суулгагдах эрсдэл үүсдэг.
Сүлжээний аюул ба Хор хохирол
Энэхүү халдлагын вектор нь уламжлалт программ хангамжийн пакежийн сангуудад (npm, PyPI) ажиглагддаг Dependency Confusion болон Typosquatting халдлагуудтай зарчмын хувьд төстэй боловч хэд хэдэн аюултай онцлогийг дагуулж байна:
- Итгэмжлэгдсэн суваг ба Автомат шинэчлэлт: VS Code хөгжүүлэгчид албан ёсны Marketplace-ээс суулгасан Extension Pack-д бүрэн итгэдэг. VS Code-ийн
extensions.autoUpdateтохиргоо анхны төлөвөөрөө идэвхтэй байдаг тул хөгжүүлэгч ямар нэгэн анхааруулга харахгүйгээр хортой код шууд локал машинд сууна. - Remote Code Execution (RCE) ба Нууц мэдээлэл алдагдах: Хөгжүүлэгчийн төхөөрөмжид суулгагдсан хортой өргөтгөл нь Node.js runtime орчинд бүрэн эрхтэй ажилладаг. Ингэснээр хөгжүүлэлтийн орчны
.envфайлууд, SSH түлхүүрүүд, GitHub API token, AWS/GCP нэвтрэх эрхүүд болон эх кодуудыг хулгайлах боломжтой. - Open VSX ба Альтернатив IDE-нүүдийн эрсдэл: VSCodium, Gitpod, Eclipse Theia зэрэг хэрэгслүүдийн ашигладаг Open VSX платформ мөн адил өртсөн нь облад суурилсан болон алсын хөгжүүлэлтийн (remote development) орчнуудыг аюулд оруулж байна.
- CI/CD болон Dev Containers аюулгүй байдал: Олон байгууллагууд дев-контейнер (Dev Containers) болон CI/CD pipeline дээрээ VS Code-ийн өргөтгөлүүдийг автоматаар суулган ашигладаг. Энэ нь хакеруудад байгууллагын дотоод сүлжээ, эх кодын репозитори руу нэвтрэх шууд үүдийг нээж байна.
Экосистемийн гацаа: Хамаарлын аудит дутмаг байгаа нь
Bloom Security-ийн шинжээчдийн тэмдэглэснээр, Microsoft-ийн VS Code Marketplace болон Eclipse Foundation-ийн Open VSX аль аль нь extension pack доторх хамаарлуудад автоматаар валидаци хийдэггүй байна. Багцыг анх үүсгэсэн хөгжүүлэгч зааж өгсөн өргөтгөл нь хожим устгагдсан эсвэл нэрээ өөрчилсөн эсэхийг платформ хянадаггүй бөгөөд тухайн ID "сул" үлддэг нь энэхүү эмзэг байдал үүсэх гол шалтгаан болжээ.
Түүнчлэн одоогийн AI кодлогч агентууд (Claude Code, Cursor, Copilot зэрэг) төсөлд шаардлагатай өргөтгөлүүдийг автоматаар санал болгон суулгах үед эдгээр dangling reference-ийг ялгаж чадахгүй байх эрсдэл өндөр байгаа юм.
Хөгжүүлэгчид болон Багууд юу хийх шаардлагатай вэ?
Энэхүү халдлагын эрсдэлээс урьдчилан сэргийлэхийн тулд хөгжүүлэгчид болон DevOps багууд дараах алхмуудыг авч хэрэгжүүлэхийг зөвлөж байна:
- Extension Pack-уудынхаа хамаарлыг шалгах: Өөрийн ашиглаж буй Extension Pack-уудын жагсаалтыг шалгаж, тухайн багцад багтсан бүх өргөтгөлүүд Marketplace дээр идэвхтэй, албан ёсны эзэмшигчтэй байгаа эсэхийг баталгаажуулах.
- Итгэмжлэгдсэн хөгжүүлэгчдийн өргөтгөлийг ашиглах: Зөвхөн баталгаажсан (verified publisher) хөгжүүлэгчдийн эзэмшдэг багц өргөтгөлүүдийг суулгах.
- Автомат шинэчлэлтийг хянаж тохируулах: Чухал төсөл болон байгууллагын орчинд өргөтгөлүүдийн автомат шинэчлэлтийг хувийн хяналттайгаар хийх эсвэл дотоод Artifact/Extension registry үүсгэн ашиглах.
- Extension Maintainer-уудын хариуцлага: Хэрэв та олон нийтэд зориулсан Extension Pack эзэмшдэг бол
package.jsonфайл доторх заалтуудаа устгагдсан өргөтгөл байгаа эсэхийг нэн даруй аудит хийж шинэчлэх. - Нууц мэдээллийн аюулгүй байдал: Хөгжүүлэлтийн орчинд API key, access token зэрэг нууц мэдээллийг эх код эсвэл локал файлууд дээр шууд хадгалахаас зайлсхийж, тусгаарлагдсан secret manager ашиглах.
Дүгнэлт
Программ хангамжийн нийлүүлэлтийн сүлжээний аюулгүй байдал (Supply-Chain Security) нь зөвхөн npm, PyPI пакежууд эсвэл Docker image-ээр хязгаарлагдахаа больж, бидний өдөр бүр ашигладаг IDE-ийн өргөтгөлүүд рүү гүнзгийрч байна. "Extension Resurrection" эмзэг байдал нь хөгжүүлэгчийн хэрэгслийн экосистемд хамаарлын аудитыг илүү чангаруулах шаардлагатайг дахин сануулсан чухал сануулга боллоо.
Эх сурвалж: Bloom Security, TNW (The Next Web) Developer Tech News — 2026 оны 8 сарын 13
Сэтгэгдэл
Ачаалж байна...