Skip to content
OpenAdvisories
Medium · 6.5 CVE-2026-47233 EUVD-2026-57214GHSA-xw54-c3mx-9pm3

Admidio: Any logged-in user can delete inventory fields via `mode=field_delete` — incomplete fix of #2024

Published Aug 12, 2026 · Updated Aug 13, 2026 · Assigned by GitHub_M

Description

Admidio is an open-source user management solution. Version 5.0.9 added a missing `isAdministratorInventory()` gate to `case 'item_delete':` in `modules/inventory.php`. The same fix was not applied to the sibling `case 'field_delete':` handler, which destroys an entire inventory field definition, cascading to every `adm_inventory_item_data` row that referenced that field and every `adm_inventory_field_options` entry. The handler validates only a session-bound CSRF token; there is no `isAdministratorInventory()` check at the controller level, and `Admidio\Inventory\Entity\ItemField::delete()` does not enforce one at the entity level either (unlike its sibling `ItemField::save()`, which does check `$gCurrentUser->isAdministrator()`). Any user who can log in to the site can permanently destroy a non-system inventory field by sending one POST. Version 5.0.10 provides an updated fix.

Affected products

VendorProductAffectedFixed
Admidio admidio < 5.0.10 —

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist admidio/admidio < 5.0.10 5.0.10 GHSA-xw54-c3mx-9pm3

References