CVE-2026-6922 (GCVE-0-2026-6922)
Vulnerability from cvelistv5
Published
2026-09-22 07:41
Modified
2026-09-22 15:38
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-863 - Incorrect Authorization
Summary
The WP Table Builder – Drag & Drop Table Builder plugin for WordPress is vulnerable to Incorrect Authorization in all versions up to, and including, 2.2.1. This is due to an operator precedence bug in the post-type guard within the trash_table_bulk() and restore_table_bulk() functions that causes the guard to never fire, combined with a permission callback that only verifies plugin role membership without per-post-type or ownership checks. This makes it possible for authenticated attackers, with subscriber-level access and above, to trash or restore any post, page, or custom post type on the site by supplying arbitrary post IDs.
References
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| wptb | WP Table Builder – Drag & Drop Table Builder |
Version: 0 ≤ 2.2.1 |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-6922",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-09-22T14:12:04.982826Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-09-22T15:38:07.343Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "WP Table Builder \u2013 Drag \u0026 Drop Table Builder",
"vendor": "wptb",
"versions": [
{
"lessThanOrEqual": "2.2.1",
"status": "affected",
"version": "0",
"versionType": "semver"
}
]
}
],
"credits": [
{
"lang": "en",
"type": "finder",
"value": "Qu\u1ed1c Huy (jtwings)"
}
],
"descriptions": [
{
"lang": "en",
"value": "The WP Table Builder \u2013 Drag \u0026 Drop Table Builder plugin for WordPress is vulnerable to Incorrect Authorization in all versions up to, and including, 2.2.1. This is due to an operator precedence bug in the post-type guard within the trash_table_bulk() and restore_table_bulk() functions that causes the guard to never fire, combined with a permission callback that only verifies plugin role membership without per-post-type or ownership checks. This makes it possible for authenticated attackers, with subscriber-level access and above, to trash or restore any post, page, or custom post type on the site by supplying arbitrary post IDs."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.1,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-863",
"description": "CWE-863 Incorrect Authorization",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-22T07:41:12.841Z",
"orgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
"shortName": "Wordfence"
},
"references": [
{
"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/7c9ae1cd-c2fa-40a3-88f7-9ee7428391e5?source=cve"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Authorization.php#L9"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Core/Settings.php#L107"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Api/TablePost.php#L299"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Api/TablePost.php#L299"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Api/TablePost.php#L318"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Api/TablePost.php#L318"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Api/TablePost.php#L292"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Api/TablePost.php#L292"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Authorization.php#L9"
},
{
"url": "https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Core/Settings.php#L107"
},
{
"url": "https://plugins.trac.wordpress.org/changeset/3676426"
}
],
"timeline": [
{
"lang": "en",
"time": "2026-04-23T16:36:36.000Z",
"value": "Vendor Notified"
},
{
"lang": "en",
"time": "2026-09-21T18:57:04.000Z",
"value": "Disclosed"
}
],
"title": "WP Table Builder \u003c= 2.2.1 - Incorrect Authorization to Authenticated (Subscriber+) Arbitrary Post Deletion via \u0027ids\u0027 Parameter"
}
},
"cveMetadata": {
"assignerOrgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
"assignerShortName": "Wordfence",
"cveId": "CVE-2026-6922",
"datePublished": "2026-09-22T07:41:12.841Z",
"dateReserved": "2026-04-23T16:21:25.277Z",
"dateUpdated": "2026-09-22T15:38:07.343Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"vulnrichment": {
"containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2026-6922\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2026-09-22T14:12:04.982826Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2026-09-22T14:12:06.372Z\"}}], \"cna\": {\"title\": \"WP Table Builder \u003c= 2.2.1 - Incorrect Authorization to Authenticated (Subscriber+) Arbitrary Post Deletion via \u0027ids\u0027 Parameter\", \"credits\": [{\"lang\": \"en\", \"type\": \"finder\", \"value\": \"Qu\\u1ed1c Huy (jtwings)\"}], \"metrics\": [{\"cvssV3_1\": {\"version\": \"3.1\", \"baseScore\": 7.1, \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:H\"}}], \"affected\": [{\"vendor\": \"wptb\", \"product\": \"WP Table Builder \\u2013 Drag \u0026 Drop Table Builder\", \"versions\": [{\"status\": \"affected\", \"version\": \"0\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"2.2.1\"}], \"defaultStatus\": \"unaffected\"}], \"timeline\": [{\"lang\": \"en\", \"time\": \"2026-04-23T16:36:36.000Z\", \"value\": \"Vendor Notified\"}, {\"lang\": \"en\", \"time\": \"2026-09-21T18:57:04.000Z\", \"value\": \"Disclosed\"}], \"references\": [{\"url\": \"https://www.wordfence.com/threat-intel/vulnerabilities/id/7c9ae1cd-c2fa-40a3-88f7-9ee7428391e5?source=cve\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Authorization.php#L9\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Core/Settings.php#L107\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Api/TablePost.php#L299\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Api/TablePost.php#L299\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Api/TablePost.php#L318\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Api/TablePost.php#L318\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/trunk/inc/Admin/Api/TablePost.php#L292\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Api/TablePost.php#L292\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Admin/Authorization.php#L9\"}, {\"url\": \"https://plugins.trac.wordpress.org/browser/wp-table-builder/tags/2.1.10/inc/Core/Settings.php#L107\"}, {\"url\": \"https://plugins.trac.wordpress.org/changeset/3676426\"}], \"descriptions\": [{\"lang\": \"en\", \"value\": \"The WP Table Builder \\u2013 Drag \u0026 Drop Table Builder plugin for WordPress is vulnerable to Incorrect Authorization in all versions up to, and including, 2.2.1. This is due to an operator precedence bug in the post-type guard within the trash_table_bulk() and restore_table_bulk() functions that causes the guard to never fire, combined with a permission callback that only verifies plugin role membership without per-post-type or ownership checks. This makes it possible for authenticated attackers, with subscriber-level access and above, to trash or restore any post, page, or custom post type on the site by supplying arbitrary post IDs.\"}], \"problemTypes\": [{\"descriptions\": [{\"lang\": \"en\", \"type\": \"CWE\", \"cweId\": \"CWE-863\", \"description\": \"CWE-863 Incorrect Authorization\"}]}], \"providerMetadata\": {\"orgId\": \"b15e7b5b-3da4-40ae-a43c-f7aa60e62599\", \"shortName\": \"Wordfence\", \"dateUpdated\": \"2026-09-22T07:41:12.841Z\"}}}",
"cveMetadata": "{\"cveId\": \"CVE-2026-6922\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-09-22T15:38:07.343Z\", \"dateReserved\": \"2026-04-23T16:21:25.277Z\", \"assignerOrgId\": \"b15e7b5b-3da4-40ae-a43c-f7aa60e62599\", \"datePublished\": \"2026-09-22T07:41:12.841Z\", \"assignerShortName\": \"Wordfence\"}",
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
}
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…