☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 8.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H 🐛 CWE-862
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-56827

CVE-2026-56827 Vulnerability in Shopper
📅 PUBLISHED: 2026-09-15 00:00 UTC 🔄 UPDATED: 2026-09-22 10:15 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.47%
👁️
0.47% probability
11.8× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1565.001
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 8.1
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: N Confidentiality None
I: H Integrity High
A: H Availability High
8.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-56827 is an improper authorization vulnerability (CWE-862) in Shopper, a headless e-commerce admin panel, affecting versions prior to 2.9.2. Grouped bulk-action handlers (groupedBulkActions) on several admin Livewire pages — Attribute, Tag, Brand, Category, and Supplier — omit server-side authorization checks, allowing any user holding only a browse permission (e.g., browse_attributes, browse_tags, browse_brands, browse_categories, browse_suppliers) to invoke destructive or state-changing bulk operations. The impact is high integrity and availability loss (CVSS 8.1): a low-privileged staff account can mass-delete attributes/tags and flip visibility state (enabled/disabled) on attributes, brands, categories, and suppliers, disrupting product variants and storefront catalog visibility.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

The vulnerability is a broken function-level authorization flaw (CWE-862) rooted in how Laravel Livewire bulk actions are handled in Shopper's admin panel. The affected code lives in the following files (per the advisory):

  • packages/admin/src/Livewire/Pages/Attribute/Browse.php
  • packages/admin/src/Livewire/Pages/Tag/Index.php
  • packages/admin/src/Livewire/Pages/Brand/Index.php
  • packages/admin/src/Livewire/Pages/Category/Index.php
  • packages/admin/src/Livewire/Pages/Supplier/Index.php

On each of these pages, the groupedBulkActions definition fails to enforce server-side authorization, while the pages themselves require only a corresponding browse permission to load:

  • browse_attributes
  • browse_tags
  • browse_brands
  • browse_categories
  • browse_suppliers

The consequence is an authorization boundary mismatch: the page gate admits a browse-only user, and the bulk-action handlers perform no additional permission check. Because Livewire renders the page and dispatches the bulk action through a server round-trip, the operation is executed server-side using the authenticated user's session — the missing check, not a client-side control, is the entire defect.

Two operation classes are exposed via groupedBulkActions:

  1. Destructive mass delete — a browse-only user can invoke DeleteBulkAction to mass-delete attributes or tags.
  2. Visibility state change — a browse-only user can invoke BulkAction::make('enabled') or BulkAction::make('disabled') to change the visibility of attributes, brands, categories, or suppliers.

Notably, the advisory states that per-record actions and the comparison pages identified in the advisory are correctly authorized and are not affected. The defect is therefore scoped strictly to the grouped bulk-action surface on the listed index pages, not to Shopper's authorization model as a whole.

The fix in 2.9.2 (claimed via OSV) adds the missing server-side authorization checks to groupedBulkActions on the affected pages. No public PoC or Nuclei template exists at the time of writing.

Exploitation Scenarios

No public PoC is available; the attack chain below is inferred from the vulnerability class (CWE-862) and the NVD description. No function names, parameters, or endpoints are asserted beyond those explicitly present in the description.

1) Reconnaissance / target identification. An attacker — typically a malicious or compromised low-privilege staff member, or an external actor holding a browse-only account — identifies a Shopper admin panel running a version prior to 2.9.2. For an insider or a staff account obtained via credential compromise, no external recon is required: the attacker simply authenticates and observes which admin pages load. Pages under /admin/Livewire routes for Attributes, Tags, Brands, Categories, and Suppliers load successfully when only browse_* permissions are held, confirming the vulnerable surface.

2) Triggering the flaw class. The core defect is missing function-level authorization. The attacker navigates to one of the affected Livewire pages (e.g., the Attribute browse page), selects catalog records, and invokes a grouped bulk action. Because groupedBulkActions performs no server-side permission check, the request is not rejected on the basis of the user's browse-only role. This is the authorization bypass: the browse permission is sufficient to reach a capability that should require a higher privilege.

3) Payload / execution method (at the vulnerability-class level). Two outcomes are achievable within the described surface:

  • Invoking DeleteBulkAction against selected attributes or tags performs a mass delete server-side.
  • Invoking BulkAction::make('enabled') or BulkAction::make('disabled') flips visibility on attributes, brands, categories, or suppliers.

The execution is a standard authenticated server-side action over the Livewire transport; the vulnerability is purely that authorization is not enforced, not that any injection or memory-safety primitive is involved.

4) Post-exploitation impact. Deleting attributes or tags and toggling visibility across attributes, brands, categories, and suppliers can break product variants and substantially disrupt storefront catalog visibility — for example, by hiding whole category branches or making variants unorderable. The attacker does not gain code execution, credential escalation, or data read (Confidentiality impact is None per CVSS), but Integrity and Availability are both rated High.

Impact Assessment

  • Confidentiality (C:N): No data disclosure is described; the flaw is an unauthorized write/delete capability.
  • Integrity (I:H): Mass deletion of attributes/tags and unauthorized visibility changes corrupt catalog structure and variant integrity.
  • Availability (A:H): Hiding categories/brands/suppliers or deleting attributes/tags can render products unorderable and storefront navigation broken.
  • Attack Vector (AV:N), Complexity (AC:L), Privileges (PR:L), User Interaction (UI:N): Remotely reachable, low complexity, requiring only a low-privileged staff account, with no victim interaction.
  • CVSS 3.1 Score: 8.1 (High).

Business blast radius. Shoppers rely on Shopper as the admin layer over their e-commerce operations. A single browse-only staff account (e.g., a fulfillment or marketing user who legitimately only needs to view catalog data) can now perform catalog-destructive operations. The trust boundary that browse ≠ modify is broken. There is no data-leak risk, but operational disruption — broken variants, hidden catalogs, lost attribute/tag taxonomy — can directly reduce revenue and require manual restoration. Because no public exploit code or KEV listing exists, opportunistic scanning is unlikely; the realistic threat is insider misuse or abuse of compromised low-privilege credentials.

Detection Guidance

Because the vulnerability is an authorization defect rather than a signature-based attack, detection must focus on anomalous bulk-action behavior by low-privileged accounts and on Livewire bulk-action requests. Signatures below are behavioral and are provided as templates to tune to the deployment.

Sigma Rule

title: Shopper Admin - Bulk Action Invoked by Browse-Only User (CVE-2026-56827)
id: 6f1c2a90-3b7e-4d2f-9c11-8a0e5f7b1234
status: experimental
description: Detects Livewire grouped bulk actions (delete/visibility) performed by users lacking modify permissions in Shopper < 2.9.2.
references:
  - https://nvd.nist.gov/vuln/detail/CVE-2026-56827
author: valtersit.com
date: 2026-01-01
logsource:
  product: shopper
  service: admin
detection:
  selection_actions:
    action|contains:
      - 'groupedBulkActions'
      - 'DeleteBulkAction'
      - 'enabled'
      - 'disabled'
  selection_pages:
    page|contains:
      - 'Attribute'
      - 'Tag'
      - 'Brand'
      - 'Category'
      - 'Supplier'
  condition: selection_actions and selection_pages
falsepositives:
  - Legitimate administrators with full catalog permissions
level: high
tags:
  - attack.t1565.001
  - cve.2026.56827

YARA Rule

rule CVE_2026_56827_Shopper_Missing_Bulk_AuthZ
{
    meta:
        description = "Detects Shopper admin pages defining groupedBulkActions without a corresponding authorization check, indicative of CVE-2026-56827 (< 2.9.2)"
        author = "valtersit.com"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2026-56827"
        date = "2026-01-01"

    strings:
        $a = "groupedBulkActions"
        $b = "DeleteBulkAction"
        $c = "browse_attributes"
        $d = "browse_tags"
        $e = "browse_brands"
        $f = "browse_categories"
        $g = "browse_suppliers"
        $h = "Attribute/Browse.php"
        $i = "Tag/Index.php"
        $j = "Brand/Index.php"
        $k = "Category/Index.php"
        $l = "Supplier/Index.php"

    condition:
        $a and ($b or any of ($c,$d,$e,$f,$g)) and any of ($h,$i,$j,$k,$l)
}

Suricata IDS Rule

alert http any any -> any any (msg:"CVE-2026-56827 Shopper Livewire Bulk Action From Browse-Only User"; flow:established,to_server; http.method; content:"POST"; http.header; content:"X-Livewire"; http.request_body; content:"groupedBulkActions"; nocase; http.request_body; content:"DeleteBulkAction"; nocase; reference:cve,2026-56827; classtype:attempted-admin; sid:202656827; rev:1;)

Elastic Detection

sequence by user.name with maxspan=5m
  [ authentication where event.action == "user_login" and user.name != null ]
  [ network where http.request.method == "POST"
      and http.request.body contains "groupedBulkActions"
      and (http.request.body contains "DeleteBulkAction"
           or http.request.body contains "enabled"
           or http.request.body contains "disabled") ]

Splunk SPL Query

index=web OR index=shopper sourcetype=access_combined OR sourcetype=shopper:admin
| search uri_path IN ("*/attribute*", "*/tag*", "*/brand*", "*/category*", "*/supplier*")
| search ("groupedBulkActions" OR "DeleteBulkAction")
| stats count values(uri_path) as paths values(action) as actions by src_ip user
| where count > 5

Wazuh OSSEC Rule

<group name="shopper,cve-2026-56827,">
  <rule id="2026568" level="10">
    <decoded_as>json</decoded_as>
    <field name="http.request.body">groupedBulkActions</field>
    <description>CVE-2026-56827: Shopper Livewire grouped bulk action invoked (possible unauthorized bulk delete/visibility change).</description>
    <mitre>
      <id>T1565.001</id>
    </mitre>
  </rule>
</group>

Mitigation & Patch Guidance

Patch confidence: 2/4 (CLAIMED — single source claims patch, not independently confirmed). The OSV advisory states the issue is fixed in 2.9.2; this fix has not been independently verified by the report author.

1) Immediate mitigations (if upgrade is delayed):

  • Restrict admin access. Limit who can reach the affected admin pages; do not grant browse-only permissions to accounts that are not otherwise trusted, since browse is now effectively a modify-capable permission on the affected pages.
  • Least-privilege review. Audit all staff accounts holding browse_attributes, browse_tags, browse_brands, browse_categories, or browse_suppliers, and remove them where not strictly needed.
  • Defensive authorization. If you maintain a fork, add a server-side authorization check to groupedBulkActions on the five affected files so that delete/enable/disable actions require modify-level permissions rather than browse.
  • Monitoring. Alert on bulk-action activity by non-administrative roles (see Detection Guidance).

2) Patch / upgrade steps:

  • Upgrade Shopper to 2.9.2 or later.
  • After upgrading, verify that groupedBulkActions on the Attribute, Tag, Brand, Category, and Supplier pages rejects browse-only users.
  • Keep Laravel Livewire and Shopper dependencies current to ensure the patched bulk-action code path is active.

3) Long-term hardening:

  • Enforce server-side authorization on every state-changing Livewire action; treat page-level browse gates as distinct from action-level modify gates.
  • Adopt a policy/permission middleware or policy class pattern for bulk actions to prevent silent authorization regressions.
  • Apply change-review and automated authorization tests to admin bulk-action handlers.
  • Maintain alerting on destructive catalog operations to enable rapid rollback and recovery.

References

Threat actor / exploit status: No public PoC, no Nuclei template, no exploit code observed, and no CISA KEV listing. No known threat actor campaigns are associated with CVE-2026-56827 at the time of writing. The predominant risk is insider misuse of low-privilege browse-only credentials.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

product:"Shopper"
title:"Shopper"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-56827/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.