<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Utcp-Http (&lt;= 1.1.3) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/utcp-http--1.1.3/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Tue, 25 Aug 2026 16:01:48 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/utcp-http--1.1.3/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Credential Exfiltration and SSRF in utcp-http via OAuth2 tokenUrl</title><link>https://feed.craftedsignal.io/briefs/2026-08-utcp-http-auth-bypass/</link><pubDate>Tue, 25 Aug 2026 16:01:48 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-utcp-http-auth-bypass/</guid><description>The utcp-http library fails to validate the tokenUrl field in OpenAPI specifications, enabling an attacker to redirect OAuth2 credential submissions to arbitrary endpoints or perform SSRF attacks.</description><content:encoded><![CDATA[<p>The <code>utcp-http</code> library (versions &lt;= 1.1.3) contains a critical trust boundary bypass vulnerability that allows for unauthorized credential exfiltration and Server-Side Request Forgery (SSRF). The library automatically extracts OAuth2 configuration, specifically the <code>tokenUrl</code> field, from remote OpenAPI specifications during the conversion process without performing any security validation. While the library enforces secure URL checks for discovery and tool invocation, these safeguards are omitted when performing OAuth2 token requests. An attacker can craft a malicious OpenAPI specification containing an arbitrary <code>tokenUrl</code>, which, when registered and triggered by a victim, causes the library to perform a POST request containing the victim's OAuth2 <code>client_id</code> and <code>client_secret</code> to an attacker-controlled endpoint. This vulnerability poses a significant risk to applications that register third-party OpenAPI specifications while utilizing OAuth2 authentication.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker hosts a malicious OpenAPI specification on an accessible server, defining an OAuth2 security scheme with a custom, attacker-controlled <code>tokenUrl</code>.</li>
<li>The victim registers the attacker's OpenAPI spec URL within their application using <code>utcp-http</code>.</li>
<li>The <code>OpenApiConverter</code> component fetches and parses the specification, extracting the malicious <code>tokenUrl</code> into an <code>OAuth2Auth</code> object without validation.</li>
<li>The victim invokes an OAuth2-protected tool via the <code>utcp-http</code> client.</li>
<li>The <code>HttpCommunicationProtocol</code> triggers the <code>_handle_oauth2</code> method to retrieve an access token prior to the actual tool request.</li>
<li>The <code>_handle_oauth2</code> method performs an <code>asyncio</code> POST request using the verbatim, unvalidated <code>tokenUrl</code> extracted from the specification.</li>
<li>The victim's application sends <code>client_id</code> and <code>client_secret</code> credentials to the attacker's server, or performs an SSRF request to internal infrastructure.</li>
<li>The attacker captures the exfiltrated credentials to gain unauthorized access to protected resources on behalf of the victim.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation leads to immediate credential theft of OAuth2 <code>client_id</code> and <code>client_secret</code> pairs, providing attackers with full impersonation capabilities for the victim's identity. Furthermore, the lack of URL validation permits SSRF attacks against internal network resources, such as cloud metadata services (e.g., 169.254.169.254) or private internal APIs that are otherwise inaccessible from the public internet. Organizations that rely on <code>utcp-http</code> to integrate third-party or untrusted OpenAPI specifications are at high risk.</p>
<h2 id="recommendation">Recommendation</h2>
<p>Prioritized, concrete actions for detection and remediation:</p>
<ul>
<li>Upgrade <code>utcp-http</code> to a patched version once available or implement the suggested remediation patch manually.</li>
<li>Implement the <code>ensure_secure_url()</code> check within <code>openapi_converter.py</code> and <code>http_communication_protocol.py</code> to validate <code>tokenUrl</code> parameters before use.</li>
<li>Audit all registered OpenAPI specifications to ensure <code>tokenUrl</code> domains align with known, trusted identity providers.</li>
<li>Monitor web application logs for outgoing POST requests from the <code>utcp-http</code> client to unusual or external IP addresses in the <code>tokenUrl</code> field.</li>
<li>Restrict the network environment of the service using <code>utcp-http</code> to prevent egress to unauthorized endpoints, reducing the impact of potential SSRF.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category></item></channel></rss>