- OpenCode के पुराने versions में बिना authentication के मनचाहा code execute करने वाली गंभीर remote code execution vulnerability पाई गई
- v1.1.10 से पहले के versions अपने-आप HTTP server चलाते हैं, और यह server बिना authentication के arbitrary command execution, file read, terminal session creation की अनुमति देता है
- v1.0.216 से पहले सिर्फ वेबसाइट विज़िट करने भर से उपयोगकर्ता के local environment में code execute हो सकता था
- नवीनतम version (v1.1.10) में server default रूप से disabled है, लेकिन enable होने पर अब भी authentication नहीं है
- इस vulnerability को CVE-2026-22812 के रूप में दर्ज किया गया है, और developers व users को तुरंत update करने और settings की जांच करने की जरूरत है
vulnerability overview
- OpenCode एक open source AI coding assistant है, और v1.1.10 से पहले run होने पर अपने-आप HTTP server (default port 4096+) शुरू करता था
- server
POST /session/:id/shell, POST /pty, GET /file/content जैसे endpoints देता है
- authentication process नहीं होने से connect कर सकने वाला कोई भी client user permissions के साथ code execute कर सकता है
- server चलने पर user को कोई visual indication नहीं मिलता, इसलिए expose हुआ है या नहीं, यह समझना मुश्किल है
- CORS policy
*.opencode.ai पर hardcode है, इसलिए opencode.ai या उसके subdomains से serve किया गया page server API को access कर सकता है
- अगर वह domain compromise हो जाए या उसमें XSS vulnerability हो, तो server enabled स्थिति वाले सभी user attack के दायरे में आ सकते हैं
attack vectors
- v1.0.216 से पहले: कोई भी arbitrary website OpenCode चला रहे user की local machine पर code execute कर सकती थी
- v1.1.10 से पहले: local process या localhost page बिना authentication के code execute कर सकते थे
- सभी versions में, अगर server enabled हो:
- local process और localhost pages बिना authentication के code execute कर सकते हैं
--mdns flag इस्तेमाल करने पर local network के सभी devices access कर सकते हैं
- server चल रहा है या नहीं, इसका कोई indication नहीं, इसलिए user को exposure का पता नहीं चलता
- opencode.ai domain या उसके subdomains से code execute किया जा सकता है
attack examples (Proof of Concept)
- local attack: server चल रहा हो तो local process
curl command से session बनाकर id > /tmp/pwned.txt command execute कर सकता है
- browser-based attack (v1.0.216 से पहले): web page
fetch request के जरिए local server को command भेजकर remote script download और execute कर सकती है
- Firefox में इसका काम करना verify हुआ, जबकि Chrome local network access protection के कारण user confirmation prompt दिखा सकता है
user response measures
opencode --version से version check करें और v1.1.10 या उससे ऊपर update करें
- settings file में
server.port या server.hostname item enabled है या नहीं, यह जांचें
--mdns flag का इस्तेमाल न करें (यह 0.0.0.0 पर bind होकर पूरे network पर expose करता है)
- अगर server का इस्तेमाल करना ही पड़े, तो opencode.ai और उसके subdomains पर जाना बंद करें
- यह समझें कि server enabled होने पर local processes बिना authentication के access कर सकते हैं
disclosure timeline
- 2025-11-17: email से पहली report, कोई response नहीं
- 2025-12-27: GitHub Security Advisory submit किया, कोई response नहीं
- 2025-12-29: दूसरे user ने public report की
- 2025-12-30: v1.0.216 में CORS restriction लागू की गई
- 2026-01-09: v1.1.10 में server default रूप से disabled किया गया
- 2026-01-11: full disclosure
recommended actions
- CORS को न्यूनतम जरूरी domains तक सीमित करें (v1.0.216 में लागू)
- server को default रूप से disabled रखें (v1.1.10 में लागू)
- सभी server requests में authentication process जोड़ें
- server चलने पर user को स्पष्ट indication दें
- docs में स्पष्ट लिखें कि
--mdns option 0.0.0.0 पर bind होता है
- network communication में TLS लागू करें
- GitHub Security Advisory और CVE-2026-22812 को आधिकारिक रूप से publish करें
- security reporting email और GHSA alerts की बेहतर monitoring करें
- OpenCode maintainers, opencode.ai और users के बीच trust relationship स्पष्ट करें
reference
- CVE: CVE-2026-22812
- प्रभावित package: npm
opencode-ai
- नवीनतम जानकारी और संपर्क: cy.md
अभी कोई टिप्पणी नहीं है.