Read the docs

utcp-gql and utcp-websocket before 1.1.1 SSRF via URL validation bypass

Priority MEDIUM 45CWE-918Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Passive
Attack complexity
High
Attack requirements
Present
Impact type
—
Confidentiality · integrity · availability
Low · Low · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

utcp-gql before 1.1.1 and utcp-websocket before 1.1.1 contain server-side request forgery vulnerabilities due to incomplete application of CVE-2026-44661 fixes. The GraphQL plugin uses a vulnerable prefix check allowing bypass URLs like http://127.0.0.1.attacker.example, while the WebSocket plugin performs no URL validation despite documented security requirements. Attackers can force connections to internal services and cloud metadata endpoints by supplying malicious tool URLs in call templates, and receive configured API keys and OAuth tokens sent to attacker-controlled hosts.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00244 15th percentileScored 2026-11-07
Fix Fixed python-utcp (universal-tool-calling-protocol): 1.1.1

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
universal-tool-calling-protocolpython-utcpbefore 1.1.11.1.1Patch availableCNA
universal-tool-calling-protocolpython-utcpbefore 1.1.11.1.1Patch availableCNA

Remediation

  • Fix · CNA python-utcp (universal-tool-calling-protocol) Fixed in 1.1.1
  • Fix · CNA python-utcp (universal-tool-calling-protocol) Fixed in 1.1.1

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-101061
  2. 2026-10-03 Alias added: GHSA-gx2c-cr72-v8vv

References

  • TI-2026-33160 python-utcp: Command Injection via Unsanitized Argument Substitution in CLI Communication Protocol CVSS 3.1HIGH 8.3
  • TI-2026-65093 python-utcp before 1.1.4 SSRF via unvalidated HTTP redirects CVSS 4.0HIGH 8.4
  • TI-2026-65092 utcp-http before 1.1.4 OAuth2 tokenUrl Trust Boundary Bypass CVSS 4.0HIGH 7.1
  • TI-2026-10502 universal-tool-calling-protocol python-utcp utcp-gql/utcp-websocket server-side request forgery CVSS 4.0MEDIUM 5.3
  • TI-2026-33161 python-utcp: Full Process Environment Exposed to CLI Subprocess - Secrets Leakage via Command Injection CVSS 3.1HIGH 7.7
  • TI-2026-65091 python-utcp before 1.1.12 SSRF via Remote HTTP Manual CVSS 4.0HIGH 7.1
See all 9 →

Sources