{"description":"Trending threats, MITRE ATT\u0026CK coverage, and detection metadata. Fed continuously.","feed_url":"https://feed.craftedsignal.io/tags/cve-2026-67426/feed.json","home_page_url":"https://feed.craftedsignal.io/","items":[{"_cs_actors":[],"_cs_cpes":[],"_cs_cves":[{"cvss":9.3,"id":"CVE-2026-67426"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["Flyto Core"],"_cs_severities":["critical"],"_cs_tags":["ssrf","credential-theft","vulnerability","cve-2026-67426","path-traversal","arbitrary-file-write","rce","framework"],"_cs_type":"threat","_cs_vendors":["Flyto"],"content_html":"\u003cp\u003eFlyto Core versions 2.26.6 and earlier are vulnerable to a critical SSRF and credential exfiltration flaw in the \u003ccode\u003eflyto-verification\u003c/code\u003e service. The \u003ccode\u003e/run\u003c/code\u003e endpoint, which is exposed by default on all interfaces (0.0.0.0) via the standard Docker configuration, lacks authentication. When a request is submitted to this endpoint, the \u003ccode\u003ecallback_url\u003c/code\u003e parameter is processed without validation against an allowlist or SSRF protection guards.\u003c/p\u003e\n\u003cp\u003eCrucially, the service automatically appends the internal \u003ccode\u003eFLYTO_RUNNER_SECRET\u003c/code\u003e as an \u003ccode\u003eX-Internal-Key\u003c/code\u003e header to any outgoing request initiated by the \u003ccode\u003ecallback_url\u003c/code\u003e. An attacker can specify an arbitrary URL, forcing the service to send the secret to an attacker-controlled listener. This exfiltration allows for the impersonation of the service when communicating with the primary engine. Furthermore, the vulnerability enables SSRF attacks against internal network resources or cloud metadata services (e.g., 169.254.169.254) using arbitrary JSON payloads.\u003c/p\u003e\n\u003ch2 id=\"attack-chain\"\u003eAttack Chain\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eAttacker identifies a reachable Flyto Core verification service listening on port 8344 on a target network.\u003c/li\u003e\n\u003cli\u003eAttacker crafts an unauthenticated \u003ccode\u003ePOST\u003c/code\u003e request to the \u003ccode\u003e/run\u003c/code\u003e endpoint.\u003c/li\u003e\n\u003cli\u003eAttacker sets the \u003ccode\u003ecallback_url\u003c/code\u003e parameter to a malicious URI (e.g., \u003ccode\u003ehttp://attacker-controlled-host.tld/\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eThe service receives the request and fails to validate the \u003ccode\u003ecallback_url\u003c/code\u003e against the expected \u003ccode\u003etarget_allowed\u003c/code\u003e allowlist.\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003epost_callback\u003c/code\u003e function prepares an outbound request, fetching the \u003ccode\u003eFLYTO_RUNNER_SECRET\u003c/code\u003e from the process environment.\u003c/li\u003e\n\u003cli\u003eThe service sends the request to the attacker's URI, including the \u003ccode\u003eX-Internal-Key\u003c/code\u003e header containing the secret.\u003c/li\u003e\n\u003cli\u003eAttacker captures the \u003ccode\u003eFLYTO_RUNNER_SECRET\u003c/code\u003e from the incoming request logs.\u003c/li\u003e\n\u003cli\u003eAttacker uses the stolen secret to authenticate and forge legitimate callbacks to the primary Flyto engine.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eSuccessful exploitation leads to a total loss of confidentiality regarding the internal runner secret and potential full compromise of the Flyto workflow engine. By bypassing authentication, attackers can interact with internal cloud metadata services, exfiltrate sensitive environment configuration, and gain the ability to submit unauthorized workflows or callbacks, effectively masquerading as a legitimate runner.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eImmediately restrict access to the \u003ccode\u003e/run\u003c/code\u003e endpoint using network-level controls (e.g., firewall rules or security groups) so it is only accessible from trusted internal IP ranges.\u003c/li\u003e\n\u003cli\u003eBind the \u003ccode\u003eflyto-verification\u003c/code\u003e service to \u003ccode\u003e127.0.0.1\u003c/code\u003e instead of \u003ccode\u003e0.0.0.0\u003c/code\u003e in the \u003ccode\u003eDockerfile\u003c/code\u003e and service configuration to prevent exposure to external network segments.\u003c/li\u003e\n\u003cli\u003ePatch to a version where \u003ccode\u003ecallback_url\u003c/code\u003e is validated against a strict allowlist and protected by SSRF guards.\u003c/li\u003e\n\u003cli\u003eRotate the \u003ccode\u003eFLYTO_RUNNER_SECRET\u003c/code\u003e immediately, as any instance running 2.26.6 or earlier must be assumed to have had this secret compromised.\u003c/li\u003e\n\u003cli\u003eImplement authentication (e.g., via OAuth or API keys) for all endpoints in the \u003ccode\u003eflyto-verification\u003c/code\u003e service to ensure that only authorized users can trigger the execution workflow.\u003c/li\u003e\n\u003c/ol\u003e\n","date_modified":"2026-07-30T15:29:13Z","date_published":"2026-07-30T15:29:02Z","id":"https://feed.craftedsignal.io/briefs/2026-07-flyto-ssrf-exfiltration/","summary":"An unauthenticated SSRF vulnerability in the Flyto Core /run endpoint allows attackers to exfiltrate the internal FLYTO_RUNNER_SECRET and perform unauthorized requests against internal infrastructure.","title":"Unauthenticated SSRF and Secret Exfiltration in Flyto Core","url":"https://feed.craftedsignal.io/briefs/2026-07-flyto-ssrf-exfiltration/"}],"language":"en","title":"CraftedSignal Threat Feed - Cve-2026-67426","version":"https://jsonfeed.org/version/1.1"}