Skip to main content

nanobot CVE-2026-19244

| EUVDEUVD-2026-54652 LOW
Improper Access Control (CWE-284)
2026-08-07 VulDB GHSA-qwp6-wxvx-2jc8
2.0
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

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

  1. Access
    Operator restricts MCP server via enabledTools allowlist
  2. Delivery
    Connect MCP server exposing resources/prompts
  3. Exploit
    connect_mcp_servers registers resources/prompts unconditionally
  4. Execution
    Restricted capabilities available in tool registry
  5. Impact
    Attacker invokes unintended resource or prompt

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK

1 technique across 1 tactic: Defense Evasion

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the operator has explicitly configured enabledTools for an MCP server connection with a non-wildcard value - either an empty list [] (deny-all) or a specific named list of tool names. Deployments using the default enabledTools: ['*'] are not affected, because resources and prompts are already intended to be fully registered and no restriction is in place to bypass. Additionally, the connected MCP server must expose at least one resource or prompt (in addition to tools) for the unintended registrations to occur. Per the CVSS 4.0 PR:H metric, exploitation further requires high-privilege access - either to the nanobot deployment to query registered capabilities, or to operate or influence a connected MCP server. Limiting factors: the impact is confined to capability scope exposure (Low C/I/A); there is no remote code execution, credential theft, or lateral movement directly enabled by this flaw; and the vulnerable code path is only reached during MCP server connection initialization, not on every request.

Impact

The CVSS 4.0 score of 5.1 (AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P) characterizes this as medium severity with a public exploit. PR:H is the critical limiting factor: exploitation requires an attacker with high-privilege access - either operator-level control over the nanobot configuration or the ability to operate or influence a connected MCP server. The VC/VI/VA impacts are all Low, consistent with a scope-bypass that exposes restricted capabilities rather than enabling full system compromise. No EPSS score was provided in the input data, so probabilistic exploitation likelihood cannot be quantified. The absence of a CISA KEV listing further suggests this is not being broadly exploited opportunistically. Real-world risk is tightly scoped: deployments using the default enabledTools: ['*'] configuration are entirely unaffected, as the fix only changes behavior when a restrictive allowlist is set. The vulnerability is meaningful only in environments that actively use fine-grained enabledTools restrictions - a deliberate operator hardening step - meaning the population of affected-in-practice deployments is a subset of already security-conscious operators. The public POC increases urgency for that subset.

Exploit ScenarioDerived

An operator deploys nanobot with a connected external MCP server and configures enabledTools: ['search_tool'], expecting only the search_tool capability to be available to the agent. The MCP server also advertises a resource named secret_data and a prompt named admin_prompt that the operator intended to block. Due to the vulnerability, both are registered into the tool registry unconditionally. A user or agent session with access to the nanobot instance can then invoke secret_data or admin_prompt, bypassing the operator's intended access boundary. A public proof-of-concept demonstrating this bypass is available at https://gist.github.com/YLChen-007/3de5f50d167a878f7530f57ed018d508.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Aug 07, 2026

MCP resource and prompt wrappers in HKUDS nanobot 0.2.0 and 0.2.1 bypass operator-defined enabledTools access restrictions, allowing MCP servers to register capabilities beyond the intended scope. Operators who configure a specific tool allowlist to restrict what an MCP server can contribute to a nanobot agent find that resources and prompts from that server are registered unconditionally, exposing capabilities that were explicitly intended to be blocked. A public proof-of-concept exploit exists; this CVE is not in the CISA KEV catalog, so confirmed widespread active exploitation is not established.

RemediationAI

Upgrade to nanobot v0.3.0, which resolves the issue via pull request #4436 (https://github.com/HKUDS/nanobot/pull/4436) and is available at https://github.com/HKUDS/nanobot/releases/tag/v0.3.0. The patch gates resource and prompt registration behind the same allow_all_tools check already used for tools. If an immediate upgrade is not feasible, the compensating control is to revert enabledTools to the default wildcard value ['*'] and instead isolate untrusted MCP servers by removing them from the configuration entirely, rather than relying on the per-capability filter. The trade-off is that this approach is coarser: it removes the ability to use fine-grained tool allowlisting as a control, so the operator must accept either full access or no access for each connected MCP server. No workaround preserves the intended partial-restriction semantics without patching.

Affected VersionsENISA

nanobot 0.2.0
nanobot 0.2.1

Affected Packages

euvd nanobot no fix

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

nanobot is a Python-based AI agent framework developed by HKUDS that integrates with Model Context Protocol (MCP) servers. The affected function connect_mcp_servers in nanobot/agent/tools/mcp.py registers tools, resources, and prompts from connected MCP servers into a central tool registry. The enabledTools configuration field (defined in nanobot/config/schema.py) is designed as a per-tool allowlist: ['*'] registers all capabilities, [] blocks all, and a named list restricts to specific tools only. The root cause (CWE-284: Improper Access Control) is that the gating logic for the allow_all_tools flag was applied only to tool registration, while MCPResourceWrapper and MCPPromptWrapper objects were always iterated and registered unconditionally regardless of the operator's enabledTools setting. The PR diff confirms that pre-fix code called session.list_resources() and session.list_prompts() unconditionally; the fix wraps both blocks under if register_extras: (allow_all_tools). CPE cpe:2.3:a:hkuds:nanobot:*:*:*:*:*:*:*:* covers all versions up to and including 0.2.1.

Know when Nanobot gets its next vulnerability

  • 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 (VulDB) PRIMARY 2.0 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
vuln.today AI 3.8 LOW

Requires high-privilege MCP server control or operator-level access; low C/I from unintended capability registration; no availability impact from scope bypass.

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

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
High
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

3
Severity Changed
Aug 07, 2026 - 21:22 NVD
MEDIUM LOW
CVSS changed
Aug 07, 2026 - 21:22 NVD
5.1 (MEDIUM) 2.0 (LOW)
CVE Published
Aug 07, 2026 - 20:30 cve.org
MEDIUM 5.1

DescriptionCVE.org

A vulnerability was detected in HKUDS nanobot up to 0.2.1. The affected element is the function connect_mcp_servers of the file nanobot/agent/tools/mcp.py of the component MCP enabledTools Scope Handler. Performing a manipulation results in improper access controls. The attack is possible to be carried out remotely. The exploit is now public and may be used. Upgrading to version 0.3.0 is sufficient to fix this issue. The patch is named 4436. You should upgrade the affected component. Multiple issues were reported to the project. They reacted with a high level of professionalism and kindness: "Both reports describe the same root cause: MCP resource and prompt wrappers could be registered outside the intended enabledTools scope. The registration boundary was corrected".

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Rare
academic AI agent framework, limited known enterprise deployment
Exploit
POC
Public exploit code exists
Data Quality
7 sources
Confidence: High
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 LOW
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Low
Technical Impact
Partial

Priority Score

30
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +10
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2026-35589 CRITICAL
9.3 Apr 14

Cross-Site WebSocket Hijacking in nanobot personal AI assistant (versions before 0.1.5) allows remote websites to establ

CVE-2026-33654 HIGH
8.9 Mar 27

Remote code execution in nanobot personal AI assistant (versions prior to 0.1.6) allows unauthenticated attackers to exe

CVE-2026-48716 HIGH
8.7 Jun 18

Arbitrary file write in HKUDS Nanobot's WhatsApp bridge (versions 0.1.5.post3 and prior) allows remote unauthenticated a

CVE-2026-49139 HIGH
7.0 Jun 01

Server-side request forgery in Nanobot (HKUDS) prior to 0.2.1 lets unauthenticated remote attackers exfiltrate Microsoft

CVE-2026-90809 MEDIUM
6.9 Sep 14

Argument injection in HKUDS nanobot's ExecTool shell execution guard allows remote unauthenticated attackers to bypass t

CVE-2026-19243 LOW POC
2.1 Aug 07

OS command injection in HKUDS nanobot 0.2.0 and 0.2.1 allows a low-privileged remote attacker to bypass the configured s

CVE-2026-19246 LOW POC
2.1 Aug 07

Server-side request forgery in HKUDS nanobot up to 0.2.1 allows authenticated remote attackers to make the server issue

CVE-2026-19245 LOW POC
1.9 Aug 07

Login-shell environment variable leakage in HKUDS nanobot up to 0.2.1 exposes sensitive environment variables to local l

CVE-2026-49140 MEDIUM
5.3 Jun 01

Nanobot's Matrix channel media download handler exhausts process memory and bandwidth when authenticated room members su

CVE-2026-49138 MEDIUM
5.3 Jun 01

Server-side request forgery in Nanobot's web_fetch tool prior to v0.2.1 allows authenticated remote attackers to probe a

CVE-2026-90808 MEDIUM
5.3 Sep 14

Shell command injection bypass in HKUDS nanobot 0.2.0-0.2.1 allows authenticated users to evade the ExecTool allow/deny

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