Skip to content
Heist/ feed
Back to feed
Medium

Craft has an unauthenticated activation email trigger with potential user enumeration

Type: advisorySources: OSV

Craft is a content management system (CMS). Prior to 5.9.0-beta.2 and 4.17.0-beta.2, the actionSendActivationEmail() endpoint is accessible to unauthenticated users and does not require a permission check for pending users. An attacker with no prior access can trigger activation emails for any pending user account by knowing or guessing the user ID. If the attacker controls the target user’s email address, they can activate the account and gain access to the system. This vulnerability is fixed in 5.9.0-beta.2 and 4.17.0-beta.2.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-29069
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 13:20 UTC · Revision 1

Source evidence

Craft has an unauthenticated activation email trigger with potential user enumeration

core-osv · Original source

Published 4 Mar 2026, 16:57 UTC

Craft is a content management system (CMS). Prior to 5.9.0-beta.2 and 4.17.0-beta.2, the actionSendActivationEmail() endpoint is accessible to unauthenticated users and does not require a permission check for pending users. An attacker with no prior access can trigger activation emails for any pending user account by knowing or guessing the user ID. If the attacker controls the target user’s email address, they can activate the account and gain access to the system. This vulnerability is fixed in 5.9.0-beta.2 and 4.17.0-beta.2.

osv:CVE-2026-29069
Complete source record
{
  "id": "669ba3b9b7ca0ec814f1a1d84cf6e07e40cf921549779f2a7869a150f84cdfe9",
  "url": "https://osv.dev/vulnerability/CVE-2026-29069",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Craft has an unauthenticated activation email trigger with potential user enumeration",
    "summary": "Craft is a content management system (CMS). Prior to 5.9.0-beta.2 and 4.17.0-beta.2, the actionSendActivationEmail() endpoint is accessible to unauthenticated users and does not require a permission check for pending users. An attacker with no prior access can trigger activation emails for any pending user account by knowing or guessing the user ID. If the attacker controls the target user’s email address, they can activate the account and gain access to the system. This vulnerability is fixed in 5.9.0-beta.2 and 4.17.0-beta.2.",
    "evidence": "osv:CVE-2026-29069",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-29069",
      "aliases": [
        "CVE-2026-29069",
        "GHSA-234q-vvw3-mrfq"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/craftcms/cms",
              "type": "GIT",
              "events": [
                {
                  "introduced": "04755d93f86d07cc183db47db8a0eee106892e30"
                },
                {
                  "fixed": "77993d4fecd403296c949dbf1ce84aabeeb4c5d6"
                },
                {
                  "introduced": "daac7c1da2f701f2e9ddee1da1457ce61660b581"
                },
                {
                  "fixed": "facd869038f403c4b7b1fefeb88038ea8deb2f6a"
                },
                {
                  "fixed": "c3d02d4a7246f516933f42106c0a67ce062f68d8"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "5.0.0-RC1"
                      },
                      {
                        "fixed": "5.9.0-beta.2"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "introduced": "4.0.0-RC1"
                      },
                      {
                        "fixed": "4.17.0-beta.2"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "c3d02d4a7246f516933f42106c0a67ce062f68d8"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            },
            {
              "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-29069.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:35.547611370Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/29xxx/CVE-2026-29069.json",
        "https://github.com/craftcms/cms/security/advisories/GHSA-234q-vvw3-mrfq",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-29069",
        "https://github.com/craftcms/cms/commit/c3d02d4a7246f516933f42106c0a67ce062f68d8"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-639"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/29xxx/CVE-2026-29069.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-29069",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 502987,
  "published_at": "2026-03-04T16:57:44.477+00:00"
}