Micro-VM guests unconditionally boot with root debug console on vsock 1026
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 67/100
調査の方向性
cmd/ateom-microvm/run.go の guestConfig() 部分と cmd/ateom-microvm/internal/kata/config.go を読み、デバッグコンソールパラメータがどのように追加されるかを追跡します。また、run.go 内の kata.DebugConsoleDump の呼び出し箇所も確認してください。コンソールパラメータが --kata-debug=true でのみ有効化され、プロダクションビルドとリリースマニフェストがそれらを有効化せず、関連するブートパスとフェイルパスが引き続き機能する状態になったら完了です。
索引モデルが issue の本文から書いたものです。
説明
This issue was generated as part of an AI review of pre-GA debug and diagnostic surfaces.
Problem Description
In cmd/ateom-microvm/run.go:716-722, guestConfig() unconditionally appends kata.WithDebugConsole() to the guest kernel command line parameters:
func (s *AteomService) guestConfig() (memMiB, vcpus int, kparams string) {
kparams = kata.WithDebugConsole()
if s.kataDebug {
kparams = kata.WithAgentDebug(kparams)
}
return kata.DefaultMemoryMiB, kata.DefaultVCPUs, kparams
}
In cmd/ateom-microvm/internal/kata/config.go:30-44, debugConsoleKernelParams is defined as:
baseKernelParams + " agent.debug_console agent.debug_console_vport=1026"
This configuration is applied on every actor boot, independent of whether the --kata-debug flag is enabled.
Impact
- The in-guest
kata-agentbinds an unauthenticated interactive root shell (/bin/bashor/bin/sh) on vsock port 1026. - Any entity with access to the host-side hybrid vsock socket (
/run/vc/vm/<actorUID>/hybrid.vsockor inside the worker pod) can connect withCONNECT 1026and immediately obtain a root interactive shell inside the tenant's micro-VM without authentication or audit logging. - On container start failures (
startActorContainersandstartRootfsContainer),ateom-microvmcallskata.DebugConsoleDump(run.go:881, 911) to execute shell commands (ip addr,ip route,ip neigh) inside the guest via the debug console and logs the output to host logs.
Proposed Remediation
- Remove
kata.WithDebugConsole()from the default boot parameters inguestConfig(). - Gate
agent.debug_consoleandagent.debug_console_vport=1026strictly behind--kata-debug=truefor local development. - Ensure production builds and release manifests do not enable in-guest debug consoles.
- 主要言語
- Go
- スター
- 5.7k
- フォーク
- 612
- 平均マージ
- 2日 11時間
- マージ済み PR(30日)
- 537
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
agent-substrate/substrate のほかの issue
-
[bug bash] Actor logs are controlled by Kubernetes RBAC on the pool namespace, not atespace rolesオープンarea/cli area/security bug-bash kind/docs
難易度 1/5 1〜3時間 初心者へのやさしさ 80/100
agent-substrate/substrate#3242 ·
メンテナーはふだん 1 日以内に返信
-
area/security bug-bash kind/docs
難易度 1/5 1時間未満 初心者へのやさしさ 83/100
agent-substrate/substrate#3235 ·
メンテナーはふだん 1 日以内に返信
-
bug-bash kind/docs
難易度 1/5 1時間未満 初心者へのやさしさ 91/100
agent-substrate/substrate#3234 ·
メンテナーはふだん 1 日以内に返信
-
[bug-bash] README and setup-gcp conflicts on Kubernetes beta APIs enablement対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンbug-bash kind/docs
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
agent-substrate/substrate#3233 ·
メンテナーはふだん 1 日以内に返信
-
area/security bug-bash kind/bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
agent-substrate/substrate#3232 ·
メンテナーはふだん 1 日以内に返信
agent-substrate/substrate の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
FootprintAI/Containarium#3182 ·
メンテナーはふだん 1 日以内に返信
-
bug from-studio
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
esengine/DeepSeek-Reasonix#14608 ·
メンテナーはふだん 1 日以内に返信
-
triage
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
getarcaneapp/arcane#4590 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
Library panel usage dialog uses singular grammar対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンarea/frontend/library-panels automated-triage type/bug type/ux
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信