CVE-2026-101061: utcp-gql and utcp-websocket server-side request forgery via URL validation bypass

CVE-2026-101061 · Severity: medium · CVSS 4.7 · Published 2026-09-27

utcp-gql and utcp-websocket are Python libraries that enable applications to connect to remote services via GraphQL and WebSocket protocols. Both libraries fail to properly validate URLs before making outbound connections, allowing attackers who control tool URLs to force connections to internal systems, cloud metadata services, and other sensitive endpoints. When exploited, attackers receive API keys and OAuth tokens configured in the application, leading to credential compromise and unauthorized access to internal infrastructure.

Technologies: Universal Tool Calling Protocol Utcp-Gql, Universal Tool Calling Protocol Utcp-Websocket. Vendors: Universal Tool Calling Protocol.

Quick answers

Is CVE-2026-101061 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-101061 being exploited in the wild.
How severe is CVE-2026-101061?
Medium severity, with a CVSS score of 4.7, published 27 September 2026.
Which products and versions are affected?
Universal Tool Calling Protocol Utcp-Gql before 1.1.1; Universal Tool Calling Protocol Utcp-Websocket before 1.1.1.
Is there a fix for CVE-2026-101061?
A patch was published on 2026-09-27: Versions 1.1.1 released with fixes Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-101061 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-101061?
Check whether you run Universal Tool Calling Protocol Utcp-Gql or Universal Tool Calling Protocol Utcp-Websocket at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

The GraphQL plugin uses a vulnerable startswith() prefix check that accepts URLs like http://127.0.0.1.attacker.example, while the WebSocket plugin performs no URL validation despite security requirements stated in its documentation. Both plugins attach configured API keys, Basic auth, and OAuth2 Bearer tokens to outbound connection headers. An attacker supplying malicious tool URLs in call templates can bypass validation and force the client to connect to arbitrary internal services and cloud metadata endpoints, exfiltrating credentials to attacker-controlled hosts.

Affected products

  • universal-tool-calling-protocol utcp-gql before 1.1.1
  • universal-tool-calling-protocol utcp-websocket before 1.1.1

Timeline

  • 2026-09-27: disclosed: Security advisory published
  • 2026-09-27: patched: Versions 1.1.1 released with fixes

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.