Skip to main content

Microsoft UFO EUVDEUVD-2026-93406

| CVE-2026-105789 MEDIUM
Improper Neutralization of Argument Delimiters in a Command ('Argument Injection') (CWE-88)
2026-10-06 security-advisories@github.com
5.4
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate to UFO Linux MCP server
  2. Exploit
    Call execute_command with 'sort -o' file-output form
  3. Execution
    Allow-listed binary overwrites server-writable file
  4. Impact
    Corrupt configuration/data and disrupt service

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Argument sanitization
Exploitation Conditions

Requires an authenticated caller with access to the UFO execute_command tool on a deployed Linux MCP HTTP server (ufo/client/mcp/http_servers/linux_mcp_server.py) in a version prior to 3.0.9. The attacker supplies a free-form command using the file-output forms of allow-listed binaries - 'sort -o <file>' / 'sort --output=<file>' or the optional second operand of 'uniq <in> <out>' - which the binary opens and overwrites directly, bypassing the argument policy without shell metacharacters. LIMITING FACTORS: authentication is required (PR:L, not unauthenticated); writes are confined to paths writable by the UFO server process (not arbitrary system files); there is no confidentiality disclosure and no code execution; the Linux MCP server component must actually be enabled/exposed.

Impact

This is a genuine but moderate-severity integrity/availability issue, not a top-tier priority. The provided CVSS:3.1 vector (AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:H/A:L, base 5.4) scores it as network-reachable but gated by authentication (PR:L), high attack complexity, and required user interaction. Critically, the 'RCE' tag CONFLICTS with the description, which explicitly states the demonstrated primitive 'does not directly disclose files or establish arbitrary code execution' - this is an argument-injection file-overwrite (CWE-88), not remote code execution. No EPSS score, no CISA KEV listing, and no public POC are present in the input, so there is no public exploit identified at time of analysis; the only exploitation evidence is the vendor's own security regression test suite added in the fix commit. The real-world ceiling is corruption of files writable by the UFO server process (config/data tampering and service disruption), not confidentiality loss or code execution. Net: a real, patch-worthy flaw for anyone running the Linux MCP server, but low widespread-exploitation risk given it requires an authenticated caller and the affected product is a niche research framework.

Exploit ScenarioDerived

An authenticated user of a deployed UFO Linux MCP server invokes the execute_command tool with a command such as 'sort -o /path/to/config data.txt' (or the second-operand file-output form of uniq). Because sort/uniq are allow-listed as read-only, the binary itself opens and overwrites the destination without any shell metacharacters, corrupting server-writable configuration or data and disrupting the service. No public exploit code is identified; exploitation is demonstrated only by the vendor's own regression tests.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.7% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 06, 2026

Microsoft UFO versions prior to 3.0.9 expose a file-overwrite primitive through the execute_command tool of its Linux MCP HTTP server, where the allow-list classifies 'sort' and 'uniq' as read-only but does not block their file-output forms. An authenticated caller who can reach the MCP server can pass 'sort -o <file>' / 'sort --output=<file>' or supply the optional second operand of 'uniq <in> <out>' to create or overwrite any file writable by the UFO server process, without needing shell metacharacters, because the allowed binary itself opens the destination path. Impact is confined to integrity and availability - corrupted configuration or writable data that can disrupt the service - with no file disclosure and no demonstrated code execution; no public exploit code has been identified at time of analysis and the issue is fixed in 3.0.9.

RemediationAI

Upgrade Microsoft UFO to version 3.0.9 or later, which is the vendor-released patch that fixes this issue; the release is published at https://github.com/microsoft/UFO/releases/tag/v3.0.9, the hardening commit is https://github.com/microsoft/UFO/commit/4f793622794f5d47810d54bed431c61f6a781dd6, and the accompanying change is pull request https://github.com/microsoft/UFO/pull/349, with full advisory context at https://github.com/microsoft/UFO/security/advisories/GHSA-85w2-wggf-rw49. If immediate upgrade is not possible, compensate by disabling or not exposing the Linux MCP HTTP server's execute_command tool to untrusted callers, restricting network access to the MCP endpoint to trusted clients only (trade-off: breaks legitimate remote automation workflows), and running the UFO server process under a least-privilege account whose writable paths exclude configuration directories, service units, and any data the automation depends on (trade-off: may break features that legitimately write to those locations). Because exploitation requires an authenticated caller, tightening authentication and reviewing which principals hold execute_command access reduces exposure, and monitoring for 'sort -o', 'sort --output=', or 'uniq <input> <output>' invocations in the server's command audit trail provides detection while patching is staged. Prefer upgrading over the workarounds, since the allow-list and argument-policy fixes are the only way to remove the primitive itself.

Affected VersionsENISA

UFO < 3.0.9

Affected Packages

euvd ufo fix: 3.0.9

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

UFO is Microsoft's open-source framework for intelligent device and platform automation, and the affected component is the Linux MCP (Model Context Protocol) HTTP server at ufo/client/mcp/http_servers/linux_mcp_server.py, which exposes an execute_command tool driven by an allow-list of shell binaries plus per-command argument policies. The vulnerability is a classic CWE-88 argument-injection weakness: the allow-list reasoned about 'sort' and 'uniq' as inherently read-only, but both utilities accept file-writing operands (sort's -o/--output option and uniq's optional second output-file operand) that the list did not reject. Because the write is performed by the trusted, allow-listed binary - not by the shell - the operation requires no pipes, redirection, or shell metacharacters, so the argument policy is bypassed by an apparently benign command string. The regression tests added in the fix confirm the intended hardening: every entry in ALLOWED_SHELL_COMMANDS must have a matching argument policy, path-qualified executables (./uniq, /usr/bin/uniq) are rejected, executables are resolved only from trusted directories with symlink escape prevention, and mutating forms such as 'sort -o', 'uniq input output', 'date -s', 'hostname -F', 'file -C', and 'diff --output' are all denied. Note that the accompanying intel tag 'RCE' is not supported by the technical evidence or by the independent assessment: the demonstrated primitive produces unauthorized file writes only, not arbitrary command execution. Discovery credit and full details are in GitHub Security Advisory GHSA-85w2-wggf-rw49.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (github) PRIMARY 5.4 MEDIUM
AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:H/A:L
vuln.today AI 7.1 HIGH

Authenticated API caller (PR:L) directly invokes the tool with no separate user interaction (UI:N) and a deterministic one-step file overwrite (AC:L); integrity high from config corruption, availability low, no confidentiality impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
High
Privileges Required
Low
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
Low

Lifecycle Timeline

2
Patch available
Oct 06, 2026 - 15:03 EUVD
CVE Published
Oct 06, 2026 - 14:17 cve.org
MEDIUM 5.4

DescriptionCVE.org

Microsoft UFO is an open-source framework for intelligent automation across devices and platforms. Prior to 3.0.9, the execute_command tool in ufo/client/mcp/http_servers/linux_mcp_server.py treats sort and uniq as read-only commands while the free-form command parameter can select their file-output forms. An authenticated caller can use sort -o or the optional second uniq operand to create or overwrite files writable by the UFO server process without shell metacharacters, because the allowed binary opens the destination itself and the argument policy does not reject the operation. This can corrupt configuration or other writable data and disrupt the service, but the demonstrated primitive does not directly disclose files or establish arbitrary code execution. This issue is fixed in version 3.0.9.

Threat Intelligence Overview

EPSS Score
0.7%
Top 48% exploitable
Prevalence
Low
Microsoft UFO is a niche open-source agent research framework, limited production footprint
Data Quality
5 sources
Confidence: Medium
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.7%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +27
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy