{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2026-56828",
        "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
        "state": "PUBLISHED",
        "assignerShortName": "GitHub_M",
        "dateReserved": "2026-06-23T14:55:09.117Z",
        "datePublished": "2026-10-28T15:40:39.294Z",
        "dateUpdated": "2026-10-28T15:40:39.294Z"
    },
    "containers": {
        "cna": {
            "title": "Shopper: read-only team permissions allow administrator creation and permission escalation",
            "problemTypes": [
                {
                    "descriptions": [
                        {
                            "cweId": "CWE-285",
                            "lang": "en",
                            "description": "CWE-285: Improper Authorization",
                            "type": "CWE"
                        }
                    ]
                },
                {
                    "descriptions": [
                        {
                            "cweId": "CWE-862",
                            "lang": "en",
                            "description": "CWE-862: Missing Authorization",
                            "type": "CWE"
                        }
                    ]
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "attackComplexity": "LOW",
                        "attackVector": "NETWORK",
                        "availabilityImpact": "HIGH",
                        "baseScore": 8.8,
                        "baseSeverity": "HIGH",
                        "confidentialityImpact": "HIGH",
                        "integrityImpact": "HIGH",
                        "privilegesRequired": "LOW",
                        "scope": "UNCHANGED",
                        "userInteraction": "NONE",
                        "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                        "version": "3.1"
                    }
                }
            ],
            "references": [
                {
                    "name": "https://github.com/shopperlabs/shopper/security/advisories/GHSA-j328-xmgp-j4q3",
                    "tags": [
                        "x_refsource_CONFIRM"
                    ],
                    "url": "https://github.com/shopperlabs/shopper/security/advisories/GHSA-j328-xmgp-j4q3"
                },
                {
                    "name": "https://github.com/shopperlabs/shopper/pull/514",
                    "tags": [
                        "x_refsource_MISC"
                    ],
                    "url": "https://github.com/shopperlabs/shopper/pull/514"
                },
                {
                    "name": "https://github.com/shopperlabs/shopper/commit/ac9a76044a8e4a2b570b438d66cf3007f3dc479e",
                    "tags": [
                        "x_refsource_MISC"
                    ],
                    "url": "https://github.com/shopperlabs/shopper/commit/ac9a76044a8e4a2b570b438d66cf3007f3dc479e"
                },
                {
                    "name": "https://github.com/shopperlabs/shopper/compare/v2.8.1...v2.9.2",
                    "tags": [
                        "x_refsource_MISC"
                    ],
                    "url": "https://github.com/shopperlabs/shopper/compare/v2.8.1...v2.9.2"
                },
                {
                    "name": "https://github.com/shopperlabs/shopper/releases/tag/v2.8.1",
                    "tags": [
                        "x_refsource_MISC"
                    ],
                    "url": "https://github.com/shopperlabs/shopper/releases/tag/v2.8.1"
                }
            ],
            "affected": [
                {
                    "vendor": "shopperlabs",
                    "product": "shopper",
                    "versions": [
                        {
                            "version": ">= 2.8.0, < 2.8.1",
                            "status": "affected"
                        }
                    ]
                }
            ],
            "providerMetadata": {
                "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
                "shortName": "GitHub_M",
                "dateUpdated": "2026-10-28T15:40:39.294Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "Shopper is a Headless e-commerce Admin Panel. From 2.8.0 until 2.8.1, three Shopper Livewire admin components retain authorization gaps after the earlier team-settings authorization fix. A staff member with only `view_users` and `access_dashboard` can mutate permissions, create an administrator, or delete roles. In `packages/admin/src/Livewire/Components/Settings/Team/Permissions.php`, `togglePermission` and `removePermission` authorize `view_users` rather than the stronger `access_setting` permission; `packages/admin/resources/views/livewire/components/settings/team/permissions.blade.php` exposes permission IDs in `wire:click` handlers. The attacker can grant arbitrary permissions to the bound role, including `access_setting` on the attacker's own role, or delete permission definitions. In `packages/admin/src/Livewire/SlideOvers/CreateTeamMember.php`, `mount()` and `store()` also accept `view_users`, and the client-selected `role_id` can identify the admin role, allowing creation of a pre-verified administrator with an attacker-chosen password. In `packages/admin/src/Livewire/Pages/Settings/Team/RolePermission.php`, `deleteAction` has no action authorization and is only conditioned on `can_be_removed`, while page access requires `view_users`. Deleting a removable role removes access for assigned users, enabling RBAC denial of service as well as privilege escalation. This issue is fixed in version 2.8.1."
                }
            ],
            "source": {
                "advisory": "GHSA-j328-xmgp-j4q3",
                "discovery": "UNKNOWN"
            }
        }
    }
}