<?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>Kestra OSS (&lt;= 1.3.31, &lt; 2.0.0) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/kestra-oss--1.3.31--2.0.0/</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>Thu, 17 Sep 2026 19:11:18 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/kestra-oss--1.3.31--2.0.0/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>Unauthenticated SSRF in Kestra OSS via Pebble http() Function</title><link>https://feed.craftedsignal.io/briefs/2026-09-kestra-ssrf/</link><pubDate>Thu, 17 Sep 2026 19:11:18 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-09-kestra-ssrf/</guid><description>An unauthenticated SSRF vulnerability in the Kestra OSS Pebble template engine allows remote attackers to perform arbitrary requests to internal network services and cloud metadata endpoints.</description><content:encoded><![CDATA[<p>Kestra OSS versions up to 1.3.31 and versions prior to 2.0.0 contain a critical Server-Side Request Forgery (SSRF) vulnerability due to insufficient validation in the Pebble template engine's <code>http()</code> function. The vulnerability resides in <code>core/src/main/java/io/kestra/core/runners/pebble/functions/HttpFunction.java</code>, where user-supplied URLs are processed by <code>URI.create()</code> without any sanitization or restriction on target destinations. An unauthenticated attacker can exploit this by uploading a malicious Flow YAML via the Kestra API. The lack of tenant authentication, combined with the ability to define arbitrary target schemes (including <code>file://</code> or <code>gopher://</code>) and target ranges (including localhost or cloud metadata services like <code>169.254.169.254</code>), allows the attacker to exfiltrate cloud credentials, query internal infrastructure, or interact with restricted localhost services. This represents a significant risk for deployments running in cloud environments.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker identifies a Kestra OSS instance reachable via the network.</li>
<li>Attacker crafts a malicious YAML flow configuration containing the <code>http()</code> function targeting an internal or metadata endpoint.</li>
<li>Attacker uses a <code>POST</code> request to <code>/api/v1/main/flows/import</code> to upload the malicious flow definition without requiring authentication.</li>
<li>Attacker uses a <code>POST</code> request to the <code>/api/v1/main/executions/</code> endpoint to trigger the flow execution.</li>
<li>The Kestra runner evaluates the Pebble template, invoking the <code>HttpFunction.java</code> logic with the attacker-controlled URI.</li>
<li>The backend performs an outbound HTTP request from the server to the target internal/metadata service.</li>
<li>Attacker retrieves the response data through the flow execution output or logs to exfiltrate sensitive metadata or service responses.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation allows unauthenticated remote attackers to bypass network boundaries. Attackers can exfiltrate sensitive information from cloud provider metadata endpoints (e.g., AWS/GCP/Azure instance metadata service), interact with internal services that are otherwise protected by firewalls, and potentially escalate privileges by harvesting cloud-assigned IAM roles or service credentials.</p>
<h2 id="recommendation">Recommendation</h2>
<p>Prioritize the immediate mitigation of CVE-2026-73247. Update Kestra OSS to a patched version (&gt;= 1.3.32 or &gt;= 2.0.0). Until updates are deployed, implement strictly scoped network egress controls for the Kestra server to prevent connections to internal RFC1918 subnets and the cloud provider metadata service (<code>169.254.169.254</code>). Monitor web server access logs for <code>POST</code> requests to <code>/api/v1/main/flows/import</code> from untrusted or unexpected source IPs.</p>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>ssrf</category><category>vulnerability</category><category>kestra</category></item></channel></rss>