CVE-2026-62676
HighCVSS 7.1Exploitation Probability (EPSS)
Low risk22th percentile - higher than 22% of all known CVEs
Summary
Omnigent before version 0.3.0 has a shared shell-command parser that fails to recognize combined interpreter flags, timeout, nice, setsid, and stdbuf wrappers, command substitutions, and a single background control operator. Commands hidden with these forms produce no parsed operation, causing allowlist and workspace confinement policies to abstain and allow the command.
Risk Assessment
An authenticated or prompt-injected agent can push to an unauthorized repository or branch or escape the intended workspace, potentially leading to unauthorized changes or data leakage.
Recommendation
Upgrade Omnigent to version 0.3.0 or later, which includes the fix.
Other vulnerabilities in Omnigent
See all- CVE-2026-62674Critical
Omnigent is an open-source AI agent framework and meta-harness for orchestrating coding agents. Prior to 0.3.0, PUT /sessions/{session_id}/agent checks LEVEL_EDIT permission for a session but does not reject a bound shared or template agent whose agent.session_id is None. An authenticated user with edit access to a session can replace that shared agent bundle through omnigent/server/routes/sessions.py, add a stdio MCP server, and cause later sessions that use the shared agent to launch an attacker-controlled command through omnigent/tools/mcp.py. The command executes with the Omnigent runner process permissions and can expose files, credentials, workspace data, internal services, and runner availability. This issue is fixed in version 0.3.0.
- CVE-2026-62677High
Omnigent before version 0.3.0 allows an authenticated user to upload a session-scoped agent bundle with an absolute or traversal-containing os_env.cwd value because the parser stores the value verbatim and the validator does not constrain it. When OMNIGENT_RUNNER_WORKSPACE is unset, an attacker can control the path and gain access to runner files and environment secrets outside the intended workspace.
- CVE-2026-62675High
Omnigent before version 0.3.0 accepts an agent bundle in multipart POST /v1/sessions, and the validator does not reject a dotted Python path in tools..callable. The dispatcher imports the specified module and invokes the function, allowing a bundle to select subprocess.check_output and execute a local command with the runner process permissions.
Original NVD description (English source)
Omnigent is an open-source AI agent framework and meta-harness for orchestrating coding agents. Prior to 0.3.0, the shared shell-command parser in omnigent/policies/builtins/_shell.py fails to recognize combined interpreter flags, the timeout, nice, setsid, and stdbuf wrappers, command substitutions, and a single background control operator. A gated git push or gh write hidden with these forms produces no parsed operation, causing the github.py write_repos and write_branches allowlist and the working_dir.py workspace confinement policies to abstain and allow the command. An authenticated or prompt-injected agent can therefore push to an unauthorized repository or branch or escape the intended workspace. This issue is fixed in version 0.3.0.

