GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

GHSA-6VJM-3J93-7V9P

Vulnerability from github – Published: 2026-09-05 06:32 – Updated: 2026-09-05 06:32
VLAI
Details

The Theme My Login plugin for WordPress is vulnerable to Missing Authorization in versions up to, and including, 7.1.15 on Multisite installations. This is due to the tml_ms_signup_handler() function's gimmeanotherblog branch failing to enforce the network's active_signup registration policy, checking only is_user_logged_in() while sibling branches such as validate-blog-signup apply the full policy gate. This makes it possible for authenticated attackers, with Subscriber-level access and above, to directly POST stage=gimmeanotherblog to Theme My Login's signup route, bypassing the configured registration policy entirely — even when it is set to none or user — which causes wpmu_create_blog() to execute with the attacker's user ID, after which WordPress core assigns the Administrator role on the newly created subsite via add_user_to_blog(). The privilege gain is scoped to the newly created subsite only; the attacker's account retains Subscriber-level access on the main site and does not obtain Super Admin or network-level capabilities such as manage_network or manage_sites.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2026-83628"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-862"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2026-09-05T06:17:10Z",
    "severity": "MODERATE"
  },
  "details": "The Theme My Login plugin for WordPress is vulnerable to Missing Authorization in versions up to, and including, 7.1.15 on Multisite installations. This is due to the `tml_ms_signup_handler()` function\u0027s `gimmeanotherblog` branch failing to enforce the network\u0027s `active_signup` registration policy, checking only `is_user_logged_in()` while sibling branches such as `validate-blog-signup` apply the full policy gate. This makes it possible for authenticated attackers, with Subscriber-level access and above, to directly POST `stage=gimmeanotherblog` to Theme My Login\u0027s signup route, bypassing the configured registration policy entirely \u2014 even when it is set to `none` or `user` \u2014 which causes `wpmu_create_blog()` to execute with the attacker\u0027s user ID, after which WordPress core assigns the Administrator role on the newly created subsite via `add_user_to_blog()`. The privilege gain is scoped to the newly created subsite only; the attacker\u0027s account retains Subscriber-level access on the main site and does not obtain Super Admin or network-level capabilities such as `manage_network` or `manage_sites`.",
  "id": "GHSA-6vjm-3j93-7v9p",
  "modified": "2026-09-05T06:32:38Z",
  "published": "2026-09-05T06:32:38Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-83628"
    },
    {
      "type": "WEB",
      "url": "https://plugins.trac.wordpress.org/browser/theme-my-login/tags/7.1.15/includes/ms-functions.php#L580"
    },
    {
      "type": "WEB",
      "url": "https://plugins.trac.wordpress.org/browser/theme-my-login/tags/7.1.15/includes/ms-functions.php#L661"
    },
    {
      "type": "WEB",
      "url": "https://plugins.trac.wordpress.org/browser/theme-my-login/tags/7.1.15/includes/ms-functions.php#L708"
    },
    {
      "type": "WEB",
      "url": "https://plugins.trac.wordpress.org/changeset/3669721/theme-my-login/trunk/includes/ms-functions.php"
    },
    {
      "type": "WEB",
      "url": "https://plugins.trac.wordpress.org/changeset?old_path=%2Ftheme-my-login/tags/7.1.15\u0026new_path=%2Ftheme-my-login/tags/7.2.0"
    },
    {
      "type": "WEB",
      "url": "https://plugins.trac.wordpress.org/changeset?reponame=\u0026new=3669722%40theme-my-login%2Ftags%2F7.2.0\u0026old=3643898%40theme-my-login%2Ftags%2F7.1.15"
    },
    {
      "type": "WEB",
      "url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/72585c12-baa9-4c63-8584-906a1d3b332f?source=cve"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N",
      "type": "CVSS_V3"
    }
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…