{"id":"CVE-2026-103900","aliases":["EUVD-2026-119036","GHSA-fv42-gp6p-rphg"],"status":"published","title":"WPJAM Basic \u003c= 7.1 - Unauthenticated Privilege Escalation to 'data[args][role]' Parameter","description":"The WPJAM Basic plugin for WordPress is vulnerable to Privilege Escalation in versions up to, and including, 7.1 This is due to the WPJAM_User_Signup::signup() function unpacking attacker-supplied `data[args]` from the AJAX POST body and merging it via PHP array union into the payload passed to WPJAM_User::create(), whose internal whitelist (wpjam_pick) explicitly preserves the `role` key before it is handed to wp_insert_user(). The endpoint is registered as wp_ajax_nopriv_{provider}-signup with a nonce that is emitted on the public login page. This makes it possible for unauthenticated attackers to elevate their privileges to Administrator by creating a new user with an attacker-chosen role, provided a social-login provider is registered and open registration is enabled.","severity":{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00424,"percentile":0.37205,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-269"],"published":"2026-11-07T09:25:47Z","modified":"2026-11-07T12:31:59Z","products":[{"vendor":"denishua","product":"wpjam basic"}],"references":[{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/77464287-bbaa-428e-9292-c97c10733adf?source=cve"},{"url":"https://plugins.trac.wordpress.org/browser/wpjam-basic/trunk/includes/class-wpjam-core.php#L1313"},{"url":"https://plugins.trac.wordpress.org/browser/wpjam-basic/trunk/includes/class-wpjam-core.php#L1302"},{"url":"https://plugins.trac.wordpress.org/browser/wpjam-basic/trunk/includes/class-wpjam-core.php#L1155"},{"url":"https://plugins.trac.wordpress.org/browser/wpjam-basic/trunk/includes/class-wpjam-core.php#L1396"},{"url":"https://wordpress.org/plugins/wpjam-basic/"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-103900"},{"url":"https://wordpress.org/plugins/wpjam-basic"},{"url":"https://github.com/advisories/GHSA-fv42-gp6p-rphg"}],"sources":{"cve":[{"id":"CVE-2026-103900","title":"WPJAM Basic \u003c= 7.1 - Unauthenticated Privilege Escalation to 'data[args][role]' Parameter","description":"The WPJAM Basic plugin for WordPress is vulnerable to Privilege Escalation in versions up to, and including, 7.1 This is due to the WPJAM_User_Signup::signup() function unpacking attacker-supplied `data[args]` from the AJAX POST body and merging it via PHP array union into the payload passed to WPJAM_User::create(), whose internal whitelist (wpjam_pick) explicitly preserves the `role` key before it is handed to wp_insert_user(). The endpoint is registered as wp_ajax_nopriv_{provider}-signup with a nonce that is emitted on the public login page. This makes it possible for unauthenticated attackers to elevate their privileges to Administrator by creating a new user with an attacker-chosen role, provided a social-login provider is registered and open registration is enabled.","status":"published","published":"2026-11-07T09:25:47.227Z","modified":"2026-11-08T18:55:20.65Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"cna"}],"cwes":["CWE-269"],"updated_at":"2026-11-07T10:33:36.209845Z"}],"euvd":[{"id":"EUVD-2026-119036","description":"The WPJAM Basic plugin for WordPress is vulnerable to Privilege Escalation in versions up to, and including, 7.1 This is due to the WPJAM_User_Signup::signup() function unpacking attacker-supplied `data[args]` from the AJAX POST body and merging it via PHP array union into the payload passed to WPJAM_User::create(), whose internal whitelist (wpjam_pick) explicitly preserves the `role` key before it is handed to wp_insert_user(). The endpoint is registered as wp_ajax_nopriv_{provider}-signup with a nonce that is emitted on the public login page. This makes it possible for unauthenticated attackers to elevate their privileges to Administrator by creating a new user with an attacker-chosen role, provided a social-login provider is registered and open registration is enabled.","status":"published","published":"2026-11-07T09:25:47Z","modified":"2026-11-08T18:55:20Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-07T15:09:44.361591Z"}],"ghsa":[{"id":"GHSA-fv42-gp6p-rphg","title":"The WPJAM Basic plugin for WordPress is vulnerable to Privilege Escalation in versions up to, and...","description":"The WPJAM Basic plugin for WordPress is vulnerable to Privilege Escalation in versions up to, and including, 7.1 This is due to the WPJAM_User_Signup::signup() function unpacking attacker-supplied `data[args]` from the AJAX POST body and merging it via PHP array union into the payload passed to WPJAM_User::create(), whose internal whitelist (wpjam_pick) explicitly preserves the `role` key before it is handed to wp_insert_user(). The endpoint is registered as wp_ajax_nopriv_{provider}-signup with a nonce that is emitted on the public login page. This makes it possible for unauthenticated attackers to elevate their privileges to Administrator by creating a new user with an attacker-chosen role, provided a social-login provider is registered and open registration is enabled.","status":"published","published":"2026-11-07T12:31:49Z","modified":"2026-11-07T12:31:59Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-269"],"updated_at":"2026-11-07T12:37:14.117196Z"}],"nvd":[{"id":"CVE-2026-103900","description":"The WPJAM Basic plugin for WordPress is vulnerable to Privilege Escalation in versions up to, and including, 7.1 This is due to the WPJAM_User_Signup::signup() function unpacking attacker-supplied `data[args]` from the AJAX POST body and merging it via PHP array union into the payload passed to WPJAM_User::create(), whose internal whitelist (wpjam_pick) explicitly preserves the `role` key before it is handed to wp_insert_user(). The endpoint is registered as wp_ajax_nopriv_{provider}-signup with a nonce that is emitted on the public login page. This makes it possible for unauthenticated attackers to elevate their privileges to Administrator by creating a new user with an attacker-chosen role, provided a social-login provider is registered and open registration is enabled.","status":"published","published":"2026-11-07T10:17:05.14Z","modified":"2026-11-08T19:17:31.363Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"secondary"}],"cwes":["CWE-269"],"updated_at":"2026-11-08T22:11:13.623406Z"}]}}
