掲載済み (2026-01-20号)
#053 499文字 • 3分

## OpenCodeにおける認証なしのリモートコード実行(RCE)の脆弱性

原題: Unauthenticated Remote Code Execution in OpenCode

英語

掲載情報

2026年1月20日火曜日号 アネックス掲載

概要

https://cy.md/opencode-rce/

詳細内容

## OpenCodeにおける認証なしのリモートコード実行(RCE)の脆弱性 https://cy.md/opencode-rce/ **Original Title**: Unauthenticated Remote Code Execution in OpenCode AIコーディングアシスタント「OpenCode」に存在する、ユーザー権限での任意コード実行を許す未認証サーバーの脆弱性について警告する。 **Content Type**: 🔬 Research & Analysis **Language**: en **Scores**: Signal:5/5 | Depth:4/5 | Unique:4/5 | Practical:5/5 | Anti-Hype:5/5 **Main Journal**: 90/100 | **Annex Potential**: 89/100 | **Overall**: 92/100 **Topics**: [[セキュリティ, 脆弱性, RCE, OpenCode, 開発ツール]] AIコーディングアシスタント「OpenCode」(npm: opencode-ai) において、認証なしでリモートコード実行 (RCE) が可能になる極めて深刻な脆弱性 (CVE-2026-22812) が報告された。筆者は、このツールがユーザーに通知することなくローカルサーバーを背後で自動起動し、広範な操作権限を外部に露呈させていた実態を詳細に解説している。 脆弱性の核心は、OpenCodeが起動時にデフォルトでポート4096番(またはそれ以降)を使用して立ち上げるHTTPサーバーにある。このサーバーは、任意のシェルコマンドを実行するための `/session/:id/shell` や、インタラクティブなターミナルセッションを開始する `/pty`、さらには任意ファイルの読み取りを可能にする `/file/content` といった極めて強力なエンドポイントを公開している。最大の問題は、これらのAPIにアクセス制限や認証が一切施されていなかったことだ。 エンジニアが特に注意を払うべきは、攻撃ベクトルの多様性である。v1.1.10より前のバージョンでは、ローカルの他プロセスからの攻撃はもちろん、CORS設定の不備により、悪意のあるウェブサイトをブラウザで閲覧するだけで攻撃者がローカルマシンを完全に制御できる状態にあった。現在、最新版(v1.1.10以降)ではサーバー機能はデフォルトで無効化されているが、`--mdns` フラグを使用してサーバーを有効化すると、0.0.0.0にバインドされ、同一ネットワーク上のあらゆる端末から認証なしでコード実行が可能になる。また、特定のドメイン(*.opencode.ai)がCORSの許可リストにハードコードされているため、当該ドメインでXSS等が発生した場合、ユーザーが攻撃を受けるリスクが残存している。 著者は、本件を通じて「開発ツールの利便性がセキュリティを犠牲にしてはならない」と強く主張している。特に、AIツールがローカルリソースに深くアクセスする特性上、不用意なネットワーク露出は致命的なリスクを招く。報告から修正までのタイムラインも示されており、当初のベンダー側の反応が鈍かったことも指摘されている。利用者は直ちに `opencode --version` で自身の環境を確認し、最新版へのアップデートを行うとともに、安易にサーバー機能を有効化しないよう、設定ファイルの精査が求められる。