Skip to content

fix(security): guard the admin controllers by class, not only by route name - #8

Merged
HecFranco merged 1 commit into
mainfrom
sec-admin-guard-controller
Oct 28, 2026
Merged

HecFranco merged 1 commit into
mainfrom
sec-admin-guard-controller

Conversation

@HecFranco

Copy link
Copy Markdown
Contributor

Full review 2026-10-28 (Medium, P1): PageLayoutKitAdminAccessSubscriber enforced access only for routes named admin_page_layout* / admin_page_blocks*, and the controllers never call the checker. A host importing the bundle routes with name_prefix: (or renaming them) exposed the layout admin and block edit/update endpoints to anyone reaching them.

  • Guard any controller in Nowo\PageLayoutKitBundle\Controller\Admin\ regardless of the route name; route-name prefixes still apply.
  • Test: both admin controllers denied under a foreign route name.

Checks (local, Docker): cs-check, rector-dry, phpstan, igor OK; 213 tests, line coverage 100 %.

Proposed release: 1.8.1. GHSA candidate only for hosts using name_prefix (Moderate).

…e name

The access subscriber only checked routes named admin_page_layout* /
admin_page_blocks*; importing the routes with a name_prefix served the layout
admin without the check. The bundle's admin controllers are now guarded by class.
@github-actions

Copy link
Copy Markdown

@coderabbitai review

@HecFranco
HecFranco merged commit 42c84eb into main Oct 28, 2026
13 checks passed
@HecFranco
HecFranco deleted the sec-admin-guard-controller branch October 28, 2026 14:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant