Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Micro-VM guests unconditionally boot with root debug console on vsock 1026

Open Beginner friendly
#2,274 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@BenTheElder is already working on this.

Since Oct 7, 2026.

  • #2291 by @BenTheElder — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
67/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
go
Domain
backend, security

Research direction

Read cmd/ateom-microvm/run.go at guestConfig() and cmd/ateom-microvm/internal/kata/config.go to trace how debug console parameters are added; also check the kata.DebugConsoleDump call sites in run.go. Done when the console parameters are enabled only with --kata-debug=true, production builds and release manifests do not enable them, and the relevant boot and failure paths still work.

Written by the indexing model from the issue text.

Description

area/security

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
  1. The in-guest kata-agent binds an unauthenticated interactive root shell (/bin/bash or /bin/sh) on vsock port 1026.
  2. Any entity with access to the host-side hybrid vsock socket (/run/vc/vm/<actorUID>/hybrid.vsock or inside the worker pod) can connect with CONNECT 1026 and immediately obtain a root interactive shell inside the tenant's micro-VM without authentication or audit logging.
  3. On container start failures (startActorContainers and startRootfsContainer), ateom-microvm calls kata.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
  1. Remove kata.WithDebugConsole() from the default boot parameters in guestConfig().
  2. Gate agent.debug_console and agent.debug_console_vport=1026 strictly behind --kata-debug=true for local development.
  3. Ensure production builds and release manifests do not enable in-guest debug consoles.
Dominant language
Go
Stars
4.4k
Forks
515
Avg merge
2d 13h
Merged PRs (30d)
279

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from agent-substrate/substrate

All issues in agent-substrate/substrate

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.