IT SBIT Services
Schneeberger
DEEN
CVE tracker

Microsoft UFO: Deadlock in task-result endpoint enables denial of service

CVE-2026-105792Medium 6.5

← All vulnerabilities

Summary

Microsoft UFO, an open-source framework for automation across devices and platforms, is affected by a deadlock in the /api/task_result/{task_name} endpoint. The session manager acquires a non-reentrant lock twice when a task name maps to a session. An authenticated user who knows or creates such a task name can block the request indefinitely. In the default single-process server configuration, the blocked event loop also stops other HTTP and WebSocket interactions. Unknown task names are not affected.

Affected

  • Microsoft UFO versions before 3.0.9

Fixed in

  • Fixed in Microsoft UFO 3.0.9

Workaround

Unknown.

Exploitation

  • CISA SSVC data in the CVE record lists exploitation as "poc" and automatable as "no".
  • No known in-the-wild exploitation was found.
  • Public exploit availability is unclear.

Our recommendation

  • Inventory all UFO server installations and their versions.
  • Upgrade affected installations to version 3.0.9 or later.
  • Restrict network access to the UFO server to trusted hosts and review accounts with valid credentials.
  • Monitor the vendor advisory and the NVD record for updates.

Public exploits

PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 5 Nov 2026, 14:07.

Original description (NVD)

Microsoft UFO is an open-source framework for intelligent automation across devices and platforms. Prior to 3.0.9, the /api/task_result/{task_name} endpoint calls SessionManager.get_result_by_task() in ufo/server/services/session_manager.py, which acquires a non-reentrant lock and then calls SessionManager.get_result() to acquire the same lock again when the task name maps to a session. An authenticated caller who knows or creates a mapped task name can therefore block the request indefinitely, and in the default single-process server configuration the blocked event-loop thread prevents other HTTP, WebSocket, and dependent background interactions. Unknown task names do not reach the nested call and are not affected. This issue is fixed in version 3.0.9.

NVD references (4)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.