Skip to content
Heist/ feed
Back to feed
Medium

Craft has a SSRF in GraphQL Asset Mutation via HTTP Redirect

Type: advisorySources: OSV

Craft is a platform for creating digital experiences. In Craft versions 4.0.0-RC1 through 4.16.17 and 5.0.0-RC1 through 5.8.21, the saveAsset GraphQL mutation validates the initial URL hostname and resolved IP against a blocklist, but Guzzle follows HTTP redirects by default. An attacker can bypass all SSRF protections by hosting a redirect that points to cloud metadata endpoints or any internal IP addresses. This issue is patched in versions 4.16.18 and 5.8.22.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-25493
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 03:24 UTC · Revision 1

Source evidence

Craft has a SSRF in GraphQL Asset Mutation via HTTP Redirect

core-osv · Original source

Published 9 Feb 2026, 19:36 UTC

Craft is a platform for creating digital experiences. In Craft versions 4.0.0-RC1 through 4.16.17 and 5.0.0-RC1 through 5.8.21, the saveAsset GraphQL mutation validates the initial URL hostname and resolved IP against a blocklist, but Guzzle follows HTTP redirects by default. An attacker can bypass all SSRF protections by hosting a redirect that points to cloud metadata endpoints or any internal IP addresses. This issue is patched in versions 4.16.18 and 5.8.22.

osv:CVE-2026-25493
Complete source record
{
  "id": "93c01e6bb1277aebc649a3ed661bd4449d6120a78d151efd7508f1051d171f47",
  "url": "https://osv.dev/vulnerability/CVE-2026-25493",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Craft has a SSRF in GraphQL Asset Mutation via HTTP Redirect",
    "summary": "Craft is a platform for creating digital experiences. In Craft versions 4.0.0-RC1 through 4.16.17 and 5.0.0-RC1 through 5.8.21, the saveAsset GraphQL mutation validates the initial URL hostname and resolved IP against a blocklist, but Guzzle follows HTTP redirects by default. An attacker can bypass all SSRF protections by hosting a redirect that points to cloud metadata endpoints or any internal IP addresses. This issue is patched in versions 4.16.18 and 5.8.22.",
    "evidence": "osv:CVE-2026-25493",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-25493",
      "aliases": [
        "CVE-2026-25493",
        "GHSA-8jr8-7hr4-vhfx"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/craftcms/cms",
              "type": "GIT",
              "events": [
                {
                  "introduced": "04755d93f86d07cc183db47db8a0eee106892e30"
                },
                {
                  "fixed": "8e23a7a14d50f169c10a487348c993384d479e06"
                },
                {
                  "introduced": "daac7c1da2f701f2e9ddee1da1457ce61660b581"
                },
                {
                  "fixed": "fc466946af3dd7928f5fd0e26099b9dc0eb2ce72"
                },
                {
                  "fixed": "0974055634af68998f67850ab2045d8aaa19fa98"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "5.0.0-RC1"
                      },
                      {
                        "fixed": "5.8.22"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "introduced": "4.0.0-RC1"
                      },
                      {
                        "fixed": "4.16.18"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "0974055634af68998f67850ab2045d8aaa19fa98"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "8e23a7a14d50f169c10a487348c993384d479e06"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "5.8.22"
                  }
                ]
              }
            },
            {
              "repo": "https://github.com/nystudio107/craft-seomatic",
              "type": "GIT",
              "events": [
                {
                  "introduced": "a31f7d211b52d55d274c66a291310ceec64c733f"
                },
                {
                  "last_affected": "a31f7d211b52d55d274c66a291310ceec64c733f"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:craftcms:craft_cms:4.0.0:-:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "4.0.0-NA"
                      },
                      {
                        "last_affected": "4.0.0-NA"
                      }
                    ],
                    "source": "CPE_STRING"
                  }
                ]
              }
            }
          ],
          "versions": [
            "4.0.0-NA",
            "4.0.0-rc1",
            "4.0.0-rc2",
            "4.0.0-rc3",
            "5.0.0-NA",
            "5.0.0-rc1",
            "4.0.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-25493.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:25.495262845Z",
      "provider": "osv",
      "references": [
        "https://github.com/craftcms/cms/releases/tag/5.8.22",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/25xxx/CVE-2026-25493.json",
        "https://github.com/craftcms/cms/security/advisories/GHSA-8jr8-7hr4-vhfx",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-25493",
        "https://github.com/craftcms/cms/commit/0974055634af68998f67850ab2045d8aaa19fa98"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-918"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/25xxx/CVE-2026-25493.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-25493",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 492162,
  "published_at": "2026-02-09T19:36:58.713+00:00"
}