Мэдээ

Зүгээр л MCP холбоход л RCE үүснэ: OpenCode-ийн 9.8 үнэлгээтэй цоорхой ба "чимээгүй засварын" дуулиан

TOGTOKHTOGTOKH·2026 оны аравдугаар сарын 23·1 үзсэн·
Зүгээр л MCP холбоход л RCE үүснэ: OpenCode-ийн 9.8 үнэлгээтэй цоорхой ба "чимээгүй засварын" дуулиан

Төсөөлөөгүй халдлагын шинэ вектор: MCP ба AI агентууд

AI хөгжүүлэлтийн хэрэгслүүд болон бие даасан агентууд хөгжүүлэгчдийн өдөр тутмын ажлын салшгүй хэсэг болохын хэрээр Model Context Protocol (MCP) стандарт асар хурдацтай түгэж байна. MCP нь AI агентуудад гадаад өгөгдлийн сан, гуравдагч талын API, дотоод системүүдтэй шууд холбогдож, шаардлагатай контекстийг авах боломж олгодог. Гэвч хөгжүүлэгчид бид гаднын эх сурвалжийн MCP серверүүдэд хэр зэрэг итгэж болох вэ?

GitHub дээр 218,000 гаруй одтой, долоо хоног бүр сая сая татагддаг нээлттэй эхийн алдартай AI агент болох OpenCode-д CVSS 9.8 үнэлгээтэй критикал Remote Code Execution (RCE) цоорхой илэрсэн тухай The Hacker News болон Pillar Security судалгааны баг дэлгэлээ.

Энэхүү цоорхой нь ямар ч prompt injection эсвэл AI моделийг төөрөгдүүлэх заль шаардахгүйгээр, ердөө л итгэлгүй remote MCP сервер рүү нэвтрэх (OAuth handshake) үед хөгжүүлэгчийн Windows болон WSL орчинд дурын тушаал, кодыг шууд биелүүлэх боломжийг олгож байжээ.

Алдаа хэрхэн ажилладаг вэ? (Command Injection)

OpenCode нь алсын (remote) MCP серверүүдтэй холбогдохын тулд OAuth 2.0 стандарт баталгаажуулалтыг ашигладаг. Хөгжүүлэгч CLI терминалаас opencode mcp auth тушаал өгөх үед дараах процесс өрнөнө:

  1. Алсын MCP сервер нь нэвтрэх веб хуудасны хаяг болох authorization_endpoint URL-ийг OpenCode клиент рүү илгээнэ.
  2. OpenCode нь Windows болон WSL (Windows Subsystem for Linux) орчинд хэрэглэгчийн анхдагч веб хөтчийг нээхийн тулд уг URL хаягийг системийн PowerShell команд руу дамжуулдаг.
  3. Хамгийн гол алдаа энд оршиж байв: OpenCode-ийн хөгжүүлэгчид серверээс ирж буй URL хаягт ямар нэг тэмдэгт шалгалт (escaping, sanitization) хийлгүйгээр шууд PowerShell-ийн командын мөрөнд нааж орхижээ.

Үүний үр дүнд халдагч хяналтандаа авсан хортой MCP серверийнхээ OAuth хаяг дотор PowerShell-ийн тусгай тэмдэгтүүдийг ашиглан нэмэлт тушаал (жишээ нь, ; Start-Process evil.exe эсвэл урвуу shell нээх скрипт) хавсаргахад л хангалттай байв. Уг URL-ийг OpenCode веб хөтчөөр нээх гэж оролдох үед арын системд PowerShell скрипт шууд хөгжүүлэгчийн эрхээр ажиллаж орхино.

macOS болон Linux системүүд веб хөтчийг нээхдээ shell дамжилгүйгээр системийн үндсэн API-аар дууддаг тул өртөөгүй бөгөөд зөвхөн Windows болон WSL дээр OpenCode ашиглаж байсан хөгжүүлэгчид бүрэн өртөх эрсдэлтэй байжээ.

"Чимээгүй засвар" (Silent Patch) ба нийгэмлэгийн шүүмжлэл

Энэхүү хэргийн хамгийн их маргаан, хэл ам дагуулж буй тал нь аюулгүй байдлын цоорхойг илрүүлж зассан процесс юм.

Pillar Security-ийн судлаачид энэ оны наймдугаар сарын сүүлээр уг алдааг олж тогтоон, OpenCode-ийн ард байдаг Anomaly багт нөхцөл байдлыг бүрэн дүрсэлсэн PoC-ийн хамт нууцлалтайгаар мэдэгджээ. Гэтэл Anomaly баг:

"Хортой эсвэл хакердуулсан MCP сервер нь манай системийн аюулгүй байдлын загварт (threat model) хамаарахгүй бөгөөд бидний хариуцах хил хязгаараас гадуур" хэмээн тоомжиргүй хандсан хариу өгсөн байна.

Үүний дараа есдүгээр сарын сүүлээр OpenCode 1.18.33 хувилбарыг гаргахдаа уг цоорхойг зассан боловч Pull Request-ийн тайлбар дээрээ аюулгүй байдлын ноцтой алдаа зассан тухай огт дурдалгүй, ердөө "браузер нээх кодын рефакторинг" хэмээн тэмдэглэжээ. Хамгийн ноцтой нь, тэд энэ алдаанд зориулж CVE код авах хүсэлт гаргаагүй бөгөөд аюулгүй байдлын албан ёсны анхааруулга (Security Advisory) нийтлээгүй байна.

Үүнээс үүдэн:

  • Орчин үеийн DevOps, DevSecOps багуудын ашигладаг Snyk, Dependabot, GitHub Security Alerts зэрэг эмзэг байдал илрүүлэгч автомат системүүд албан ёсны CVE кодгүй тул юу ч олж тогтоож чадахгүй.
  • OpenCode-ийн 1.0.137-оос 1.18.32 хүртэлх хувилбаруудыг ашиглаж буй олон мянган хөгжүүлэгчид өөрсдийн машин дээрээ ийм хэмжээний RCE цоорхой тээж явснаа ч мэдэлгүй үлдсэн байна.

Хөгжүүлэгчид өөрсдийгөө хэрхэн хамгаалах вэ?

Энэ хэрэг явдал нь AI агентуудын экосистемд шинэ төрлийн ханган нийлүүлэлтийн сүлжээний (supply chain) аюул занал бодитоор бий болсныг бэлхнээ баталж байна. Хөгжүүлэгч бүр дараах арга хэмжээг нэн тэргүүнд авах шаардлагатай:

  1. Хувилбараа яаралтай шинэчлэх: Хэрэв та Windows эсвэл WSL дээр OpenCode ашигладаг бол хувилбараа шалгаж, хамгийн сүүлийн хувилбар руу шинэчлээрэй (npm install -g opencode@latest).
  2. Гуравдагч MCP серверүүдийг хянах: Тохиргоондоо итгэлгүй, баталгаажаагүй remote MCP серверүүдийг бүү нэм. Хэрэглээнээс гарсан серверийн хаягуудыг тохиргооны файлаасаа нэн даруй цэвэрлэх хэрэгтэй.
  3. AI агентуудыг тусгаарлах: Өөрийн ажлын үндсэн үйлдлийн систем, өндөр эрх бүхий орчинд AI агент CLI ажиллуулахаас аль болох татгалзаж, Docker, Dev Containers эсвэл тусдаа Sandbox орчинд ажиллуулах дадлыг нэвтрүүлэх нь зүйтэй.

Хөгжүүлэгчийн хэрэгсэлд "аюулгүй байдлын загварт хамаарахгүй" гэсэн тайлбараар хандах нь ямар их эрсдэл дагуулдгийг OpenCode-ийн энэ кейс тод харууллаа.

Эх сурвалж: The Hacker News, Pillar Security Research Report.

Сэтгэгдэл

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